在 Windows 7 上使用 ffmpeg 将 mkv 转换为 avi 时出错

在 Windows 7 上使用 ffmpeg 将 mkv 转换为 avi 时出错

我在 Windows 7 机器上使用 ffmpeg。我试图将 mkv 文件转换为 mp4 或 avi。这是我使用的命令:

ffmpeg -i "C:\Path\To\Input.mkv" "C:\Path\To\Output.avi"

这是我收到的错误:

[libmp4lame @ 00000000004624800] Invalid number of channels 6, must be <=2

在输入了几行关于我的输出文件应该是什么的内容之后,我收到了这个错误:

Error while opening encoder for output stream #0:1 - maybe incorrect parameters such as bit_rate, rate, width or height

我没有指定任何这些参数,因为我希望 ffmpeg 从源文件复制它们。我做错了什么,如何修复?

答案1

如果您没有发布完整的输出,我只能在这里假设一些事情,但最有可能是以下问题:

您的 MKV 文件包含 6 声道环绕声。将其转换为 AVI 时,FFmpeg 会为视频和音频假定一些默认编解码器。我猜您的情况将是 MPEG-4 视频和 MP3 或 MP4 音频。

无论如何,在 LAME MP3 中无法获得 6 声道声音,因此您可以尝试以下任一方法:

  • 这将尝试复制 AC3(或任何其它)流。

    ffmpeg -i "C:\Path\To\Input.mkv" -acodec copy "C:\Path\To\Output.avi"
    
  • 这将尝试将采样下调至两个音频通道:

    ffmpeg -i "C:\Path\To\Input.mkv" -acodec libmp3lame -ac 2 "C:\Path\To\Output.avi"
    

我实际上非常确信错误消息应该显示libmp3lame而不是libmp4name。请复制/粘贴输出,而不是直接键入,并始终提供完整的输出。

相关内容