Objectif : extraire un fichier de sous-titres d'un fichier mkv et le convertir en srt.
ffmpeg -i mon_fichier.mkv
Stream #0:XX...
. Par exemple :Stream #0:9(fre): Subtitle: hdmv_pgs_subtitle
C'est le flux de sous-titres que je veux extraire. C'est le 9ème, et c'est un flux de sous-titres au format image.
Note :
Subtitle: subrip
signifie que le flux de sous-titres est au format texte;Subtitle: hdmv_pgs_subtitle
signifie que le flux de sous-titres est au format image.Comme mon flux contient des sous-titres au format image, je dois demander à ffmpeg de simplement extraire (copy
) le flux de sous-titres numéro 9 (-map 0:9
) dans un fichier nommé sub.sup
:
ffmpeg -i mon_fichier.mkv -c copy -map 0:9 sub.sup
Note : pour extraire un flux de sous-titres au format texte, la commande est identique à ceci près qu'il faut indiquer un format de sortie adéquat (ex: sub.ass ou sub.srt). En effet, le format de sortie est déterminé par ffmpeg selon l'extension du fichier de sortie.
Dernière étape, je dois convertir ce fichier de sous-titres au format image (sub.sup), en sous-titres au format texte (sub.srt). Pour cela, je peux m'amuser avec mkvtoolnix, ou bien je peux aller sur ce site :
Convert
;Edit : la conversion du fichier de sous-titres au format image en sous-titres au format texte implique le traitement du premier par un outil de reconnaissance de caractères (OCR). C'est pour ça que le choix du site web m'a paru le plus rapide à utiliser. Sinon il faut choisir le bon outil de OCR pour mkvtoolnix et faire des tests...