He estado tratando de eliminar transmisiones de audio innecesarias de un archivo MKV (Matroska). La razón por la que quiero hacer esto es para evitar tener que seleccionar manualmente la transmisión deseada en Windows Media Player.
El archivo de entrada proporciona la siguiente información de ffmpeg:
Stream #0.0: Video: mpeg4, yuv420p, 704x396 [PAR 1:1 DAR 16:9], 29.98 tbr, 1k tbn, 29.98 tbc
Stream #0.1(eng): Audio: aac, 24000 Hz, 5.1, s16
Stream #0.2(jpn): Audio: aac, 24000 Hz, 5.1, s16
Stream #0.3(eng): Subtitle: 0x0000
Stream #0.4(eng): Subtitle: 0x0000
Stream #0.5: Attachment: 0x0000
Stream #0.6: Attachment: 0x0000
Como quiero las transmisiones 0, 1 y 3 (sub), mi comando ffmpeg se ve así:
ffmpeg -i input.mkv -map 0:0 -map 0:1 -map 0:3 -vcodec copy -acodec libmp3lame -newsubtitle test.mkv
que extrañamente da el error:
At least one output file must be specified
Eliminar los subtítulos:
ffmpeg -i input.mkv -map 0:0 -map 0:1 -vcodec copy -acodec libmp3lame test.mkv
me da esto:
Number of stream maps must match number of output streams
Parece que realmente no entiendo cómo funciona la opción "mapa". ¿Alguien me ayudaría a resolverlo?
--atracks
opción ya no existe, en su lugar uno debe usar cualquiera--audio-tracks
o--video-tracks
.