Comment intégrer des sous-titres dans des vidéos avec ffmpeg?

9

On me dit qu'il est possible d'intégrer des sous-titres ( .srt) dans des fichiers vidéo ( .avi) en utilisant ffmpeg, mais je ne trouve aucune mention à ce sujet dans la page de manuel. Est-ce possible? Quelle commande dois-je utiliser?

xralf
la source
Une solution qui a fonctionné pour moi avec ffmpeg: ffmpeg.org/trac/ffmpeg/wiki/…

Réponses:

3

De man ffmpeg:

Options de sous-titres:

-scodec codec Forcer le codec de sous-titres («copier» pour copier le flux).

-newsubtitle Ajouter un nouveau flux de sous-titres au flux de sortie actuel.

-slang code Définit le code de langue ISO 639 (3 lettres) du flux de sous-titres actuel.

Donc: ffmpeg -newsubtitle subtitles.srv -i video.avi ...

Shawn J. Goff
la source
Si j'utilise à la place de ... result.avicette commande ne fonctionne pasAt least one output file must be specified
xralf
2
Bien sûr, ...signifie «et toutes les autres options dont vous avez besoin».
Shawn J. Goff
C'est suffisant, ffmpeg -newsubtitle subtitles.srt -i video.avi result.avimais cela se termine par le message ci-dessus. J'espérais que result.avi est un fichier de sortie. Je l'ai essayé avec -o result.avitrop mais sans succès.
xralf
1
Je ne sais pas pourquoi cela n'a pas fonctionné pour moi (peut-être un mauvais fichier ou un problème avec ffmpeg). J'ai plutôt essayé cette commandemencoder movie.avi -sub movie.srt -o movie.hardsubs.avi -oac copy -ovc lavc -lavcopts vbitrate=1200
xralf
@ ShawnJ.Goff: Cela n'a pas fonctionné pour moi non plus. Quelle version de ffmpeg utilisez-vous et quel système d'exploitation?
Faheem Mitha
3

Du lien de Pier, en particulier:

ffmpeg -i video.avi -vf subtitles=subtitle.srt out.avi

J'ai utilisé cela avec succès avec la version actuelle de git ffmpeg statique.

user91768
la source
Ça ne marche pas. "Le fichier de sortie # 0 ne contient aucun flux"
Rubi Shnol
1

ffmpegles développeurs travaillent avec le support des sous-titres, mais pour autant que je sache, cela ne fonctionne que dans la dernière ffmpeg. mencoderva graver les sous-titres instantanément, si vous voulez essayer à la place.

ajaaskel
la source