J'essaie de convertir un fichier vidéo contenant vidéo , audio et les sous-titres sont diffusés dans un autre format en utilisant FFMpeg. Cependant, ffmpeg se plaint du format des sous-titres - il ne peut pas décoder le flux. Comme je n'ai pas besoin de ce flux de sous-titres, j'aimerais savoir comment désactiver le décodage du flux de sous-titres pendant la conversion?
J'ai enfin trouvé une réponse.
Il existe une option telle que -sn
qui désactive le décodage des sous-titres du flux d'entrée. Il existe également des options analogues pour le décodage audio et vidéo: -an
et -vn
respectivement.
Il s'est également avéré qu'il existe un autre moyen d'y parvenir. On peut utiliser le -map
option pour sélectionner les flux à décoder. Donc, en omettant le flux de sous-titres parmi les -map
options fait le travail.
Par exemple, si l'on a un fichier vidéo avec 3 flux:
la commande de conversion pour FFmpeg peut ressembler à ceci:
ffmpeg -i <input file> -sn -vcodec <video codec> -acodec <audio codec> <output file>
ou
ffmpeg -i <input file> -vcodec <video codec> -acodec <audio codec> -map 0:0 -map 0:1 <output file>
L'ancienne ligne de commande désélectionne le flux de sous-titres (probablement tous, s'il y en a plusieurs) tandis que le dernier sélectionne uniquement les flux nécessaires à décoder.