我使用此命令复制视频和音频流,同时将第一个音频流编码为立体声 AAC 音轨:
ffmpeg -y -i in.mkv -map 0:v -c:v copy -map 0:a:0? -c:a:0 copy -map 0:a:0? -c:a:1 aac -b:a:0 192k -ac 2 -map 0:a:1? -c:a:2 copy -map 0:a:2? -c:a:3 copy -map 0:a:3? -c:a:4 copy out.mkv
不过,我还想用更好的通道映射来过滤立体声音轨,如下所示:
-af "pan=stereo|FL=FC+0.25*FL+0.60*LFE|FR=FC+0.20*FR+0.60*LFE"
但是当我尝试这样做时出现以下错误:
Filtering and streamcopy cannot be used together.
有什么方法可以解决该错误吗?因为我想保留原始音频流,同时将另一个版本编码为“夜间模式”立体声音轨。
答案1
使用
ffmpeg -y -i in.mkv -map 0:v -map 0:a:0? -map 0:a:0? -map 0:a:1? -map 0:a:2? -map 0:a:3? -c copy -filter:a:1 "pan=stereo|FL=FC+0.25*FL+0.60*LFE|FR=FC+0.20*FR+0.60*LFE" -c:a:1 aac -b:a:1 192k -ac 2 out.mkv
-af
是适用于所有输出音频流的缩写-filter:a
。添加流编号以限定应用程序。