# 背景
deepin下的视频处理、剪辑软件可选择的比较少,没有Window下常用的PR、AE、格式工厂等,达芬奇由于依赖的问题不是很好安装。我们可以充分利用deepin系统自带的FFmpeg,完成常用的视频操作,比如格式转换、尺寸转换、大小压缩等等,我所使用的15.11版本下FFmpeg的版本是3.2.12-1~deb9u1,虽然版本比较老,但是稳定啊(想不到有啥其他的优点)。
* 官网:http://ffmpeg.org/
* 使用文档:http://ffmpeg.org/documentation.html
# 关于FFmpeg
FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。采用LGPL或GPL许可证。它提供了录制、转换以及流化音视频的完整解决方案。
# 一些参数及含义 -i 指定要转换视频的源文件 -s 视频转换后视频的分辨率 -vcodec 视频转换时使用的编解码器 -vcodec copy 不对视频解码直接复制 -r 视频转换换的帧率(默认25桢每秒) -b 视频转换换的bit率 -ab 音频转换后的bit率(默认64k) -acodec 音频转换时使用的编码器 -ac 制定转换后音频的声道 -ar 音频转换后的采样率
# 使用
对于单视频文件的处理可以直接在深度终端中进行命令行操作
## 查看视频信息
## 查看视频信息 ffprobe -i input.mp4
输出的信息有视频时长、bit率、格式、尺寸、帧率等等
## 格式转换
通过输入文件和输出文件的名称控制视频格式之间的转换,使用 ffmpeg -encoders 命令查看支持的所有编码格式。
# flv转mp4 ffmpeg -i input.flv -b:v 640k output.mp4 # mp4转ts ffmpeg -i input.mp4 output.ts
## 尺寸(分辨率)转换
指定输出视频的宽度和高度、按原视频尺寸比例进行缩小、按原视频宽高比并指定输出视频的宽度或高度。
# 指定宽度和高度 ffmpeg -i input.mp4 -s 480×360 out.mp4 # 按原视频尺寸比例进行缩小,以60%为例 ffmpeg -i input.mpg -vf scale=iw0.6:ih0.6 output.mp4 # 按原视频宽高比,指定处理后的宽度为400 ffmpeg -i input.avi -vf scale=400:-1 output.mp4 # 按原视频宽高比,指定处理后的高度为300 ffmpeg -i input.avi -vf scale=-1:300 output.mp4
## 大小压缩
大小压缩就是在不改变视频尺寸、分辨率、帧率等其他参数情况下缩小视频的体积,虽然没有明确的参数能实现这个功能,不过我测试过程中使用
ffmpeg -i input.mp4 output.mp4
代码得到的视频体积由原来的 139M 缩小到了 79M,这个过程主要改变的是视频的bit率参数,由原来的 387kb/s 变成了 228kb/s。
## 调整播放速度
# 加快播放速度,这里以 2 倍速为例: ffmpeg -i input.mp4 -vf "setpts=0.5*PTS" output.mp4 # 减慢播放速度,这里以 2 倍速为例: ffmpeg -i input.mp4 -vf "setpts=2*PTS" output.mp4