CGJU
CGJU
22 mai 2026 · Temps de lecture 4 min

Présentation des formats de sous-titres

Il existe de nombreux formats de fichiers de sous-titres, chacun ayant des caractéristiques et des cas d'application différents. Avant de traiter des sous-titres avec FFmpeg, familiarisons-nous avec les formats de sous-titres courants.

Format SRT

SRT (SubRip Text) est le format de sous-titres le plus populaire et le plus simple, pris en charge par presque tous les lecteurs. C'est un format texte brut contenant des numéros séquentiels, des chronologies et le contenu des sous-titres.

1
00:00:01,000 --> 00:00:04,000
Ceci est la première ligne de sous-titre

2
00:00:05,000 --> 00:00:08,000
Ceci est la deuxième ligne de sous-titre

Avantages : format simple, bonne compatibilité, facile à éditer. Inconvénients : ne prend pas en charge la configuration des styles.

Format ASS

ASS (Advanced SubStation Alpha) est le format de sous-titres le plus puissant, prenant en charge de riches paramètres de style, incluant la police, la couleur, la position, les effets d'animation, etc.

[Script Info]
Title: Exemple de sous-titres
ScriptType: v4.00+

[V4+ Styles]
Format: Name, Fontname, Fontsize, PrimaryColour
Style: Default, Arial, 24, &H00FFFFFF

[Events]
Format: Layer, Start, End, Style, Text
Dialogue: 0, 0:00:01.00, 0:00:04.00, Default, Ceci est la première ligne de sous-titre

Avantages : styles riches, prise en charge des effets, haut degré de personnalisation. Inconvénients : format complexe, non pris en charge par certains appareils.

Format VTT

VTT (WebVTT) est un format de sous-titres conçu spécifiquement pour le web, nativement pris en charge par la balise video HTML5. Son format est similaire à SRT mais avec quelques fonctionnalités étendues.

WEBVTT

00:00:01.000 --> 00:00:04.000
Ceci est la première ligne de sous-titre

00:00:05.000 --> 00:00:08.000
Ceci est la deuxième ligne de sous-titre

Avantages : prise en charge native par le web, léger. Inconvénients : la prise en charge des navigateurs varie, fonctionnalités de style limitées.

Autres formats

  • SSA : prédécesseur d'ASS, fonctionnalités similaires
  • IDX/SUB : sous-titres graphiques, couramment utilisés pour les DVD
  • PGS : sous-titres graphiques Blu-ray
  • SCC : format de sous-titres codés

Méthode d'ajout de sous-titres incrustés

Les sous-titres incrustés (Hardsub) consistent à rendre les sous-titres directement dans l'image vidéo. Les sous-titres font partie intégrante de la vidéo et ne peuvent pas être désactivés. L'avantage est une bonne compatibilité, lisibles par tous les lecteurs ; l'inconvénient est qu'ils ne peuvent pas être supprimés et nécessitent un réencodage.

Ajouter des sous-titres SRT

Utilisez le filtre subtitles pour ajouter des sous-titres SRT :

ffmpeg -i input.mp4 -vf subtitles=sub.srt output.mp4

Si le nom du fichier de sous-titres contient des caractères spéciaux ou des chemins, vous devez les échapper :

ffmpeg -i input.mp4 -vf "subtitles='sub\ title.srt'" output.mp4

Ajouter des sous-titres ASS

Les sous-titres ASS peuvent conserver les informations de style, utilisez le filtre ass :

ffmpeg -i input.mp4 -vf ass=subtitle.ass output.mp4

Configurer le style des sous-titres

Pour les sous-titres SRT, vous pouvez configurer le style via le paramètre force_style :

ffmpeg -i input.mp4 -vf "subtitles=sub.srt:force_style='FontName=Arial,FontSize=24,PrimaryColour=&H00FFFFFF&,OutlineColour=&H00000000&,Outline=2'" output.mp4

Paramètres de style courants

  • FontName : nom de la police
  • FontSize : taille de la police
  • PrimaryColour : couleur principale (couleur du texte)
  • OutlineColour : couleur du contour
  • BackColour : couleur de fond
  • Outline : épaisseur du contour
  • Shadow : profondeur de l'ombre
  • Bold : gras (-1=activé, 0=désactivé)
  • Italic : italique

Remarque : le format de couleur est &HAABBGGRR (Alpha, Bleu, Vert, Rouge), dans l'ordre inverse du format RGB courant.

Ajuster la position des sous-titres

Vous pouvez ajuster la position des sous-titres via le paramètre Alignment :

ffmpeg -i input.mp4 -vf "subtitles=sub.srt:force_style='Alignment=6,MarginV=50'" output.mp4

La valeur d'Alignment est comprise entre 1 et 9, correspondant à la position du pavé numérique (6=centre droit, 2=centre bas, 8=centre haut).

Méthode d'ajout de sous-titres souples

Les sous-titres souples (Softsub) consistent à intégrer les sous-titres en tant que piste indépendante dans le fichier vidéo. Ils peuvent être activés/désactivés et commutés pendant la lecture. L'avantage est la flexibilité, sans affecter la qualité de l'image ; l'inconvénient est qu'ils nécessitent une prise en charge du lecteur.

Ajouter des sous-titres SRT souples dans un MP4

ffmpeg -i input.mp4 -i subtitle.srt -c copy -c:s mov_text output.mp4

Ajouter des sous-titres souples dans un MKV

MKV offre la meilleure prise en charge des sous-titres souples et peut être copié directement :

ffmpeg -i input.mkv -i subtitle.srt -c copy output.mkv

Ajouter des sous-titres multilingues

ffmpeg -i input.mp4 -i zh.srt -i en.srt -i jp.srt \
    -c copy -c:s mov_text \
    -metadata:s:s:0 language=chi -metadata:s:s:0 title="Chinois" \
    -metadata:s:s:1 language=eng -metadata:s:s:1 title="English" \
    -metadata:s:s:2 language=jpn -metadata:s:s:2 title="日本語" \
    output.mp4

Définir la piste de sous-titres par défaut

ffmpeg -i input.mp4 -i zh.srt -i en.srt \
    -c copy -c:s mov_text \
    -disposition:s:0 default \
    -disposition:s:1 none \
    output.mp4

Extraction de sous-titres

Parfois, il est nécessaire d'extraire les sous-titres d'un fichier vidéo pour les éditer ou convertir leur format. FFmpeg peut accomplir cette tâche facilement.

Extraire des sous-titres SRT depuis un MKV

Tout d'abord, consultez les informations sur les pistes de sous-titres dans la vidéo :

ffmpeg -i input.mkv

Trouvez le numéro de la piste de sous-titres (généralement 0:s:0, 0:s:1, etc.), puis extrayez-la :

ffmpeg -i input.mkv -map 0:s:0 output.srt

Extraire des sous-titres ASS depuis un MKV

Si les sous-titres sont au format ASS, extrayez-les directement :

ffmpeg -i input.mkv -map 0:s:0 -c copy output.ass

Extraire toutes les pistes de sous-titres

ffmpeg -i input.mkv -map 0:s -c copy output_%d.srt

Extraire des sous-titres depuis un MP4

Les sous-titres dans un MP4 sont généralement au format mov_text et doivent être convertis en SRT :

ffmpeg -i input.mp4 -map 0:s:0 output.srt

Conversion de format de sous-titres

Différents cas d'application nécessitent différents formats de sous-titres. FFmpeg peut convertir entre divers formats de sous-titres.

SRT vers ASS

ffmpeg -i input.srt output.ass

SRT vers VTT

ffmpeg -i input.srt output.vtt

ASS vers SRT

La conversion de sous-titres ASS en SRT entraîne une perte des informations de style :

ffmpeg -i input.ass output.srt

VTT vers SRT

ffmpeg -i input.vtt output.srt

Explication détaillée de la configuration du style de police

Lors de l'ajout de sous-titres incrustés avec FFmpeg, la configuration du style est très importante. Voici une présentation détaillée des paramètres de style courants.

Format des valeurs de couleur

Le format de couleur utilisé par le filtre de sous-titres FFmpeg est &HAABBGGRR, où :

  • AA : transparence Alpha (00=entièrement transparent, FF=entièrement opaque)
  • BB : composante bleue
  • GG : composante verte
  • RR : composante rouge

Remarque : l'ordre est bleu-vert-rouge (BGR), pas le rouge-vert-bleu (RGB) courant.

Exemples de couleurs courantes

Couleur Valeur de couleur Description
Blanc &H00FFFFFF& Couleur de texte par défaut
Noir &H00000000& Couleur de contour/ombre
Rouge &H000000FF& Texte mis en évidence
Jaune &H0000FFFF& Couleur de sous-titres classique
Fond noir semi-transparent &H80000000& Fond noir à 50% de transparence

Exemple de style complet

ffmpeg -i input.mp4 -vf "subtitles=sub.srt:force_style='
    FontName=Arial,
    FontSize=24,
    PrimaryColour=&H00FFFFFF&,
    OutlineColour=&H00000000&,
    BackColour=&H80000000&,
    Bold=-1,
    Italic=0,
    Outline=2,
    Shadow=1,
    Alignment=2,
    MarginV=40
'" output.mp4

Récapitulatif des commandes de sous-titres FFmpeg courantes

Sous-titres incrustés

  • Ajouter des sous-titres SRT incrustés : ffmpeg -i input.mp4 -vf subtitles=sub.srt output.mp4
  • Ajouter des sous-titres ASS incrustés : ffmpeg -i input.mp4 -vf ass=sub.ass output.mp4
  • Spécifier la police : ffmpeg -i input.mp4 -vf "subtitles=sub.srt:force_style='FontName=SimHei'" output.mp4
  • Ajuster la taille des sous-titres : ffmpeg -i input.mp4 -vf "subtitles=sub.srt:force_style='FontSize=30'" output.mp4

Sous-titres souples

  • Ajouter des sous-titres SRT souples (MKV) : ffmpeg -i input.mkv -i sub.srt -c copy output.mkv
  • Ajouter des sous-titres SRT souples (MP4) : ffmpeg -i input.mp4 -i sub.srt -c copy -c:s mov_text output.mp4
  • Extraire des sous-titres : ffmpeg -i input.mkv -map 0:s:0 output.srt
  • Extraire tous les sous-titres : ffmpeg -i input.mkv -map 0:s -c copy sub_%d.srt

Conversion de format

  • SRT vers ASS : ffmpeg -i input.srt output.ass
  • SRT vers VTT : ffmpeg -i input.srt output.vtt
  • ASS vers SRT : ffmpeg -i input.ass output.srt

Problèmes courants et solutions

1. Affichage de caractères illisibles dans les sous-titres

Généralement dû à un problème d'encodage du fichier de sous-titres. Assurez-vous que le fichier de sous-titres est encodé en UTF-8, ou spécifiez le jeu de caractères :

ffmpeg -i input.mp4 -vf "subtitles=sub.srt:charenc=GBK" output.mp4

2. Police introuvable

Assurez-vous que la police spécifiée est installée sur le système. Sur Linux, vous pouvez placer le fichier de police dans le répertoire ~/.fonts, ou définir le chemin des polices :

FFLIBFREETYPE_FONTPATH=/path/to/fonts ffmpeg -i input.mp4 -vf subtitles=sub.srt output.mp4

3. Sous-titres et audio désynchronisés

Vous pouvez utiliser le paramètre itsoffset pour ajuster le décalage temporel des sous-titres :

ffmpeg -i input.mp4 -itsoffset 0.5 -i sub.srt -c:v copy -c:a copy -c:s mov_text output.mp4

Conclusion

FFmpeg offre de puissantes fonctionnalités de traitement des sous-titres, que ce soit pour ajouter des sous-titres incrustés ou souples, ou pour extraire et convertir des formats de sous-titres, tout peut être accompli facilement. Maîtriser ces commandes peut grandement améliorer l'efficacité du traitement vidéo.

Pour les utilisateurs qui ne sont pas familiers avec la ligne de commande, divers outils de traitement de sous-titres à interface graphique sont également disponibles. Cependant, la flexibilité et les puissantes fonctionnalités de FFmpeg restent le premier choix des utilisateurs professionnels.

Recommandations

Plus d'articles intéressants et d'outils pratiques

Besoin de convertir un format vidéo ?

Utilisez notre outil de conversion vidéo en ligne gratuit, prenant en charge la conversion entre plusieurs formats, sans téléchargement ni installation

Essayer maintenant ➡