Stai cercando -map
.
Sono passato a utilizzare avconv
, ma dovrebbe essere più o meno lo stesso.
Supponiamo di avere un file chiamato "input.vob" con un video e due tracce audio; e vuoi avere "output.vob" con il video e l'ultimo audio.
si dovrebbe fare:
avconv -i input.vob -map 0:0 -c:v copy -map 0:2 -c:a copy output.vob
si dovrebbe notare che:
- non ho copiato
-map 0:1
- non ho avuto bisogno di fare , perché ci sono le tracce audio. Tuttavia, se non ci sono tracce audio, potrebbe essere necessario utilizzare tale attributo.
- A volte gli stream non sono numerati nel modo in cui ho descritto, ad esempio l'audio può arrivare prima del video.
- Se ci sono flussi di sottotitoli, è necessario capire come gestirli.
Non è possibile lavorare sui file "sul posto", è necessario salvare in un file diverso.
P.S. Potresti chiedere queste domande al numero video.stackexchange.com la prossima volta.
Wow, non sapevo nulla della funzionalità di mappatura negativa, fantastico! – v010dya
Ho un problema quando il file di output è .vob ('ffmpeg -i" in.vob "-map 0 -map -0: a: 1 -c copia" out.vob "'): _Valori di tipo di supporto non validi per il flusso di output # 0_ e _Non è possibile scrivere l'intestazione per il file di output # 0 (parametri codec errati?): Argomento non valido_ ma se cambio out.vob in out.ts funziona 'ffmpeg -i" in.vob "-map 0 -map - 0: a: 1 -c copy "out.ts" ' – user25
@ user25 Avrò bisogno di vedere l'output completo della console dal tuo comando. È possibile utilizzare un sito pastebin e fornire il collegamento. – LordNeckbeard