选择生成波形图像时要使用的音轨

问题描述

ffmpeg 可以用 showwavespic 绘制波形,效果很好。但就我而言,我有一个包含多个音轨的文件,我想指定使用哪个音轨来绘制波形。 认示例为:ffmpeg -i input -filter_complex "showwavespic=s=640x120" -frames:v 1 output.png 我试图在中间添加一个 map 0:a:0 但这会产生奇怪的 ffmpeg 错误。 有人知道如何设置要使用的曲目索引而不先提取所需的音轨吗?

解决方法

这可以通过使用 filtergraph 链接标签(参见 https://ffmpeg.org/ffmpeg-filters.html#Filtergraph-syntax-1)来选择相关输入来实现,例如:

ffmpeg -i input -filter_complex "[0:a:6]showwavespic=s=640x240" -frames:v 1 output.png