3

我正在使用 FFMPEG 将大文件转码为小文件。通常这些文件将有 2 个音频通道(尽管并非总是如此)。我正在尝试将所有音频通道居中。

我向 ffmpeg-users 询问了如何执行此操作的示例:http: //ffmpeg-users.933282.n4.nabble.com/Panning-audio-channels-example-td4417939.html

我从回复中得到的是 FFMPEG 还没有实现音频过滤器。不知何故,我应该能够设置一个 libav 过滤器(?)来平移所有频道中心......效果如下: pan="c0=0.5*FL+0.5*FR"虽然当我这样做时,我得到了错误:No such filter: 'pan'. 这些人很棒,但我无法通过阅读文档来解决这个问题。

我没有禁用过滤器,这是我的构建信息 configuration: --prefix=/opt/local --enable-gpl --enable-postproc --enable-swscale --enable-avfilter --enable-libmp3lame --enable-libvorbis --enable-libtheora --enable-libdirac --enable-libschroedinger --enable-libopenjpeg --enable-libxvid --enable-libx264 --enable-libvpx --enable-libspeex --mandir=/opt/local/share/man --enable-shared --enable-pthreads --cc=/opt/local/bin/gcc-apple-4.2 --arch=x86_64 --enable-yasm --enable-nonfree --enable-libfaac

这是我构建的命令行之一的示例:ffmpeg -i inMovie.mov -acodec libfaac -ab 64k -vcodec libx264 -vpre medium -b 320k -pass 1 -s 374x210 -threads 0 outMov.mp4

我的 FFMPEG 命令行的其余部分工作得很好......基本上我正在寻找的是让左/右音频通道在输出文件中都有相同的音频。如果有更简单的方法来做到这一点(转换为 2 个混合单声道?)我全神贯注!

感谢您的帮助!

4

2 回答 2

2

音频过滤器在 FFMPEG 上有不同的 sintax。您可以平移音频通道而无需创建混音。

使用您的示例:

ffmpeg -f lavfi -i "amovie=inMovie.mov,pan=stereo: c0=c0+c1: c1=c0+c1" -i inMovie.mov -map 0:0 -map 1:0 -vcodec libx264 -vpre medium -b 320k -pass 1 -s 374x210 -threads 0 -acodec libfaac -ab 64k outMov.mp4
于 2012-05-07T13:37:33.217 回答
0

目前我没有方便的命令参考,但我会使用 FFMPEG 混音为单声道,然后再转换回立体声。这应该会给你你需要的结果。

于 2012-04-16T17:33:59.173 回答