如何使用 ffmpeg 为家庭影院/DVD 播放器编码 XviD?

如何使用 ffmpeg 为家庭影院/DVD 播放器编码 XviD?

我想转换一个文件,以便可以在仅支持 divx/xvid 的 DVD 播放器上播放。我尝试过:

ffmpeg.exe -y -i "in.mp4" -t 480.00 -vf scale=720:301,pad=720:576:0:137 -map 0:v:0 -map 0:1 -b:v 2500K -vcodec libxvid -aspect 1.25 -b:a:0 128K -ac:a:0 2 -ar:a:0 48000 -codec:a:0 libmp3lame "out.avi"

我想知道应该使用哪些选项才能使生成的文件也具有这些特征(尽可能接近“Divx Home Theater”配置文件):

Macroblocks: 40500 bps
VBV Buffer: 384kB
VBV Bitrate: 4854 kbps
B-Frame: 1

我的ffmpeg构建信息是:

ffmpeg version 2.2.git built on Sep 28 2014 08:33:32 with gcc 4.6.2 (GCC)

我的操作系统是 Windows 7 x64

答案1

FFmpeg wiki 有一个关于此内容的页面:MPEG-4 编码指南

长话短说: ffmpeg -i input.avi -c:v mpeg4 -vtag xvid output.avi

当然,不同的设备有不同的支持级别。关于非常有限的设备的电子邮件交流需要代码将 MP4 转换为 DivX AVI 似乎指向较低级别的标准(如果您无法事先测试设备,请使用它):

ffmpeg -i input.mkv -sn -c:a libmp3lame -ar 48000 -ab 128k -ac 2 -c:v libxvid \
    -crf 24 -vtag DIVX -vf scale=640:480 -aspect 4:3 -mbd rd -flags +mv4+aic \
    -trellis 2 -cmp 2 -subcmp 2 -g 30 -vb 1500k output.avi

答案2

我个人使用这些选项:

ffmpeg -i INPUT_FILE -c:v libxvid -q:v 5 -q:a 5 OUTPUT_FILE.avi

我想强调的一点是 -q:v 5 选项至关重要。此选项设置视频的质量(1 = 最好,31 = 最差)。当省略此选项时,我得到了一个质量较差的兼容文件。

相关内容