linux deepin使用FFmpeg处理视频格式、尺寸、播放速度
背景
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
原文链接:Deepin使用FFmpeg处理视频格式、尺寸、播放速度,转发请注明来源!
相关文章
- Linux下处理异常:超越常规(linux捕获异常处理)
- Linux系统运维:深入浅出攻略(linux系统运维教材)
- 文件Linux下压缩处理文件的方法(linux打包压缩)
- 的优点Linux管理文件的魅力:简单高效的处理方式(linux处理文件)
- Linux中如何查看字符编码(linux查看字符编码)
- 处理解决Linux 系统异常:一种创新方法(linux异常)
- Linux环境下网络速度测试实践(linux网络速度测试)
- Linux下构建Qt程序步骤(linux打开qt)
- Linux命令行下精准测量网络速度(linux命令行测试网速)
- 超标Linux系统空间超标预防与处理(linux可用空间)
- Linux大文件分割处理:从行中切割文件(linux分割文件行)
- Linux 云面板:通向云端的新门户(linux云面板)
- 基础Linux命令了解目录结构(linux命令目录结构)
- Linux中的意思:变量引用(linux中什么意思)
- 行Linux下快速安装命令行工具(linux下安装命令)
- 「探秘」局域网中的Linux服务器:如何高效管理?(局域网linux服务器)
- Linux中多个信号的处理方法(linux多个信号)
- 优化你的Linux网络速度:掌握网卡驱动原理与安装方法(linux系统的网卡驱动)
- Linux使用技巧:逗号分隔简化代码处理(linux逗号分隔)
- Linux下函数调用处理返回值简明指南(linux调用函数返回值)