前言
关于ffmpeg
的下载, 可查阅上一篇文章《Mac平台如何下载ffmpeg并对m3u8视频进行下载转换成MP4》
本文将给大家介绍如何使用ffmpeg
将本地的flv
视频压制转换成小体积的MP4
格式转换
如果只是单纯的进行格式转换 可以直接使用以下指令来实现:
1 | ffmpeg -i input.flv -vcodec copy -acodec copy output.mp4 |
这种方式通常体积不会有太大的改变
转换格式并压缩视频体积
如果需要将视频进行压缩 以减少空间的占用 可以参考以下指令:
1 | ffmpeg -i input.flv -c:v libx264 -crf 26 -c:a aac -strict experimental -b:a 128k output.mp4 |
解释各选项含义:
-i input.flv
:指定输入文件名为input.flv
。-c:v libx264
:使用H.264
编码来压缩视频。-crf 28
:设置CRF
(常量速率因子)的值为23。低值表示更好的质量,但文件会更大;高值会降低质量。范围是从0(无损)到51(最糟),通常使用18到28,27
通常是用于MP4
格式的视频质量很好的平衡-c:a aac
:使用AAC
编码来压缩音频。-strict experimental
:允许使用实验性的编码器。-b:a 128k
:设置音频比特率为128k。根据需求可以调整大小。
我们需要找到一个合适的参数平衡点 确保视频画面的质量的同时尽可能地压缩视频体积
如果我们想要快速压制 减少等待时间 还可以指定编码器预设 如下:
1 | ffmpeg -i input.flv -c:v libx264 -preset veryfast -crf 24 -c:a aac -b:a 128k output.mp4 |
解释选项含义:
-preset veryfast
:指定编码器预设,veryfast
提供快速但质量较低的编码, 除此之外 还有fast
、HQ
、SuperHQ
等预设。
ffmpeg 截取视频
要使用FFmpeg
截取视频 可以使用以下指令:
1 | ffmpeg -i input.mp4 -ss 00:00:10 -t 00:00:30 -c copy output.mp4 |
解释各选项含义:
-i input.mp4
指定输入视频文件。-ss 00:00:10
表示从视频的指定时间点开始截取,这里是从10秒处开始。-t 00:00:30
表示截取的时长,这里是30秒。-c copy
表示复制编码器,即不重新编码,直接复制视频流和音频流。output.mp4
是输出文件的名称。
请根据实际需求调整时间参数。如果需要不同的起始时间或时长,只需修改-ss
和-t
参数即可。如果需要对视频进行重编码,可以去掉-c copy
参数或指定其他编码器选项。
本文为作者原创 转载时请注明出处 谢谢