打开输出流#0的编码器时出错:1 - 可能是不正确的参数,如bit_rate,rate,width或height

Roc*_*ngh 8 ffmpeg

我试图通过FFMPEG使用以下命令将avi视频文件转换为flv格式:

-i C:\files\input\test.avi -y -ab 448k -ar 48000 -vcodec mpeg4 -s 640x480 -f flv C:\files\output\test.flv
Run Code Online (Sandbox Code Playgroud)

以下是我从ffmpeg获得的回复:

输入:

Input #0, avi, from 'C:\files\input\test.avi':
  Metadata:
    encoder         : VirtualDubMod 1.5.10.2 (build 2540/release)
  Duration: 00:01:00.00, start: 0.000000, bitrate: 1813 kb/s
    Stream #0:0: Video: mpeg4 (Advanced Simple Profile) (XVID / 0x44495658), yuv420p, 640x272 [SAR 1:1 DAR 40:17], 25 tbr, 25 tbn, 25 tbc
    Stream #0:1: Audio: ac3 ([0] [0][0] / 0x2000), 48000 Hz, 5.1(side), s16, 448 kb/s
Run Code Online (Sandbox Code Playgroud)

输出:

Output #0, flv, to 'C:\files\output\test.flv':
  Metadata:
    encoder         : VirtualDubMod 1.5.10.2 (build 2540/release)
    Stream #0:0: Video: mpeg4, yuv420p, 640x480 [SAR 30:17 DAR 40:17], q=2-31, 200 kb/s, 90k tbn, 25 tbc
    Stream #0:1: Audio: mp3, 48000 Hz, 5.1(side), s16, 448 kb/s
Stream mapping:
  Stream #0:0 -> #0:0 (mpeg4 -> mpeg4)
  Stream #0:1 -> #0:1 (ac3 -> libmp3lame)
Error while opening encoder for output stream #0:1 - maybe incorrect parameters such as bit_rate, rate, width or height
Run Code Online (Sandbox Code Playgroud)

你能告诉我这可能是什么吗?上面有什么问题?

小智 13

您必须明确指定所有编解码器:-c:v mpeg4 参数 -c:副本-c:s副本(对于字幕,如果存在)

  • 由于问题是在流0:1(音频),-c:这里的副本足以摆脱错误消息. (3认同)