FFmpeg MP4压缩
使用FFmpeg可以高效地压缩MP4视频文件,同时在尽量保持画质的情况下大幅减小文件体积。以下是几种常用的压缩方法。
方法 1:使用CRF参数控制画质压缩
CRF(Constant Rate Factor)是H.264编码器中用于控制视频质量的参数,数值越小画质越高,文件体积越大。
命令示例:
ffmpeg -i input.mp4 -c:v libx264 -crf 28 -preset fast -c:a aac -b:a 128k output.mp4
参数说明:
-crf 28:设置质量因子,推荐范围为18~28,默认23。值越大压缩率越高。
-preset fast:设置压缩速度,可选ultrafast到veryslow,速度越慢压缩效率越高。
-b:a 128k:设置音频比特率为128kbps。
适用场景: 平衡画质与文件大小,适合一般用途。
方法 2:指定目标文件大小
如果需要将视频压缩到接近某个特定大小,例如50MB,可以使用以下命令:
命令示例:
ffmpeg -i input.mp4 -fs 50M output.mp4
参数说明:
-fs 50M:限制输出文件大小为50MB。
适用场景: 上传平台对文件大小有限制时使用。
方法 3:调整分辨率降低体积
通过降低视频分辨率(如从1080p降到720p)来减小文件体积。
命令示例:
ffmpeg -i input.mp4 -vf scale=1280:720 -c:a copy output.mp4
参数说明:
-vf scale=1280:720:将视频分辨率调整为1280×720。
-c:a copy:直接复制音频流,不重新编码,加快处理速度。
适用场景: 视频主要用于移动设备播放或对分辨率要求不高时。
进阶技巧
批量压缩多个视频(Windows):
for %i in (*.mp4) do ffmpeg -i "%i" -crf 28 "compressed_%~ni.mp4"
查看视频信息:
ffmpeg -i input.mp4
总结
FFmpeg是一款功能强大的工具,通过调整CRF、分辨率或目标大小等参数,可以灵活地满足不同场景下的视频压缩需求。掌握这些基本命令,将显著提升你的音视频处理效率。