我知道该-map_channel
参数可以指定文件内的特定音频通道,但是有没有办法在过滤器图中执行类似的参数?
我希望这样的事情能够成为可能:
-filter_complex "[0.0.0]showspectrum…[Left];[0.0.1]showspectrum…[Right]"
这样的事可能吗?
答案1
您可以使用channelsplit
筛选. 假设立体声输入:
ffmpeg -i input -filter_complex \
"[0:a]channelsplit[l][r]; \
[l]showspectrum=color=intensity,pad=0:ih*2[left]; \
[r]showspectrum=color=intensity[right]; \
[left][right]overlay=0:h[v]" \
-map "[v]" -map 0:a -c:v libx264 -c:a copy output.mkv
这只是一个示例,用于说明如何channelsplit
使用。如果您确实想showspectrum
分离通道,只需执行以下操作:
ffmpeg -i input -filter_complex "[0:a]showspectrum=mode=separate[v]" \
-map "[v]" -map [0:a] -c:v libx264 -c:a copy output.mkv