转自:https://zhuanlan.zhihu.com/p/255042580
1 用 ffmpeg 压缩视频
改变帧率
ffmpeg -i Desktop/吉他.mp4 -r 20 Desktop/output1.mp4
-r 20:表示帧率设置为 20fps
指定文件大小
ffmpeg -i Desktop/吉他.mp4 -fs 15MB Desktop/output1.mp4
fs 20 : 表示文件大小最大值为15MB
把视频截了一部分 --- 这种方法不行
改变分辨率
ffmpeg -i Desktop/1.mov -s vga Desktop/1.mp4
-s vga : 指定分辨率, vga 代表 600*480,也可以换成其他的值
改变码率
视频的原码率是 2.1Mb/s ,压缩为 1.5Mb/s
ffmpeg -i Desktop/1.mov -b:v 1.5M Desktop/1.mp4
-b:v 1.5M : 指定码率
-b:v :指定视频的码率
-b:a : 指定音频的码率
1.5M:码率的值 1.5M 表示 1.5Mb/s
当码率设置为小于 1.5Mb/s 后视频的清晰度会降低很多
2 多线程转码
指令:
ffmpeg -i movie.mp4 -vf "crop=640:256:0:400" -threads 5 -preset ultrafast -strict -2 YourCroppedMovie.mp4
核心参数是:
-threads 5 -preset ultrafast
注意:现在大多数服务器的CPU都是多核多线程的,当然,threads参数不是越高越好。建议,在转码时间、CPU使用率上取得一个平衡的数值,对于大多数小型项目,threads 2足够了,更多的线程,取得了效益往往已经大于了消耗成本。
网友评论