Come estrarre il sottotitolo dal video utilizzando ffmpeg?

Sto cercando di estrarre il sottotitolo dal video come file .srt , ho usato il seguente command:

FFMPEG -i mytestmovie.mkv -vn -an-codec: s: 0.1 srt sub.srt

Ma ho un errore come codec:s:0:1 opzione non riconosciuto codec:s:0:1 Quindi puoi dirmi il command esatto e come estrarre un sottotitolo come file .srt nel video?

Semplice: ffmpeg -i Movie.mkv -map 0:s:0 subs.srt

-codec:s:0:1 non è corretto. Se si utilizza -codec:s:0 ffmpeg utilizzerà il codec dichiarato per il primo stream di sottotitoli che viene passato all'output, se si utilizza -codec:s:1 quindi lo utilizzerà per il secondo stream di sottotitoli, ecc.

È inoltre ansible utilizzare -codec:s per select tutti i flussi di sottotitoli in output, oppure -codec:2 per select il terzo stream di output, indipendentemente da ciò che è.

Probabilmente siete confusi perché l'opzione -map si comport in modo diverso, wherete select l'input che viene fornito dal stream selezionato. (così, -map 0:s:0 prende il primo stream di sottotitoli dal primo ingresso e lo alimenta all'output). Tuttavia, -map è quello di select i flussi che si desidera utilizzare dagli ingressi; mentre la maggior parte delle altre opzioni che utilizzano la mapping di stream sono da utilizzare nei flussi dopo che sono stati selezionati (quindi non è necessario specificare quale file di input provengono), in quanto vengono passati all'output.