
Sé que el -map_channel
argumento puede especificar un canal de audio específico dentro de un archivo, pero ¿hay alguna manera de hacer un argumento similar dentro de un gráfico de filtro?
Espero que algo como esto sea posible:
-filter_complex "[0.0.0]showspectrum…[Left];[0.0.1]showspectrum…[Right]"
¿Es posible algo así?
Respuesta1
Puedes usar elchannelsplit
filtrar. Suponiendo una entrada estéreo:
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
Este es sólo un ejemplo para mostrar cómo channelsplit
se puede utilizar. Si realmente quisieras showspectrum
separar los canales, simplemente haz:
ffmpeg -i input -filter_complex "[0:a]showspectrum=mode=separate[v]" \
-map "[v]" -map [0:a] -c:v libx264 -c:a copy output.mkv