Vidéo et sous-titres · Boîte à outils de sous-titres
Comment fonctionne le resynchronisation des sous-titres : décaler chaque repère d'un décalage fixe
· Comment ça marche
sous-titres codes temporels traitement du navigateur
Lorsque chaque sous-titre est en retard ou en avance du même montant, la solution est l'arithmétique du timecode. Cet article explique comment une resynchronisation décale le début et la fin de chaque cue, ce qui se passe à zéro et comment mesurer le décalage en premier lieu.
Chaque sous-titre apparaît deux secondes après l'orateur - le symptôme produit par un décalage constant
Lorsque chaque sous-titre apparaît environ deux secondes après la ligne parlée correspondante, il n'est pas nécessaire de déplacer les blocs de repère individuellement. Un décalage constant applique la même arithmétique à chaque repère. Le fait qu'il soit constant est le diagnostic : si les sous-titres démarrent correctement et s'éloignent en quarante minutes, un redimensionnement ou une correction du frame rate est une autre opération. Vérifiez le début, le milieu et la fin avant de toucher à l'ensemble du fichier.
Mesurer le décalage : faire une pause sur la première ligne de dialogue claire et comparer l'horloge vidéo avec l'heure de début de la réplique
Faites une pause sur une ligne de dialogue clair et notez l'heure de la vidéo au début. Comparez-le avec l'heure de début du premier sous-titre correspondant. Si l'audio commence à 00:01:10.000 et que le sous-titre commence à 00:01:11.850, les signaux ont 1 850 millisecondes de retard, donc l'ajustement est de −1,850 ms. Un deuxième point de contrôle plus tard dans la vidéo teste si la même différence persiste. Le décalage vient de l’observation de votre enregistrement ; l'outil ne peut pas le déduire à partir de mots sans rapport.
Arithmétique du timecode — conversion de HH:MM:SS,mmm en millisecondes, ajout du décalage, reconversion
SRT exprime un signal sous la forme HH:MM:SS,mmm ; WebVTT utilise normalement un point avant les millisecondes. Convertissez les composants en millisecondes avec (((heures×60+minutes)×60+secondes)×1000)+millis. Ajoutez une fois le décalage choisi, puis décomposez le résultat en heures, minutes, secondes et trois chiffres de millisecondes. Garder le temps en nombres entiers évite une série d'erreurs d'arrondi à virgule flottante lors du traitement de centaines de signaux. L'analyseur et le sérialiseur choisissent la ponctuation spécifique au format après l'arithmétique.
Le déplacement des deux limites de repère préserve la durée, sauf lorsqu'elle est fixée à zéro.
Pour les signaux ordinaires, le même décalage est ajouté au début et à la fin : un sous-titre de 02:00.000 à 02:03.500 dure 3,5 secondes avant et après le décalage. Changer seulement le début l’étirerait ; changer seulement la fin la compresserait. ShiftCues de ToolAcre mappe les signaux analysés et met à jour les deux valeurs sans réécrire le texte de la légende, de sorte que la ponctuation ou l'étiquette du locuteur reste attachée au même signal. Vérifiez la première ligne et les suivantes pour vous assurer que l'opération que vous avez choisie est un décalage et non une redimensionnement de la fréquence d'images.
Clampage à zéro : qu'arrive-t-il aux signaux qui bougeraient avant le début de la vidéo et pourquoi ils ne peuvent pas avoir de temps négatifs
Les horodatages négatifs ne sont pas des heures de sous-titres valides. ToolAcre fixe un début ou une fin qui repasse de zéro à zéro et indique le nombre de repères affectés. Il s'agit de l'exception importante à la préservation de la durée : une réplique d'une durée initiale de 0,8 à 2,8 secondes décalée de −1.85 secondes a un début négatif et une fin de 0.95 seconde, donc sa durée n'est plus de deux secondes. Un signal antérieur pourrait maintenir les deux extrémités à zéro. Examinez ou supprimez les signaux d'ouverture serrés plutôt que de prétendre que le résultat est exact au début.
Exemple concret : décaler les sous-titres d'une conférence de 40 minutes de -1,850 ms — avant et après les signaux, vérifiés au début, au milieu et à la fin.
Pour une conférence de quarante minutes, considérez les indices 00:10.000–00:12.400 et 20:15.000–20:17.000. Un décalage −1,850 ms donne 00:08.150–00:10.550 et 20:13.150–20:15.150. Un dernier signal à 39 :55.000 déplace également 1.85 secondes plus tôt : la distance par rapport au dialogue doit rester constante aux trois points de contrôle. Si le signal de fin est toujours désynchronisé de plusieurs secondes alors que le premier est correct, annulez le changement et étudiez plutôt la dérive.
Ce que cela ne couvre pas : une dérive qui augmente avec le temps, qu'un décalage fixe ne peut pas corriger
Un décalage fixe ne peut pas résoudre une piste audio éditée à une vitesse différente, une vidéo coupée avec des images manquantes, une conversion à fréquence d'images variable ou des sous-titres alignés sur une version différente. Il ne peut pas non plus récupérer les dialogues absents du fichier de sous-titres. La conversion de formatage entre SRT et VTT est une opération distincte ; il ne faut pas supposer que le resynchronisation traduit des mots ou améliore les descriptions d’accessibilité. Conservez le fichier source jusqu'à ce qu'un humain ait regardé des indices représentatifs de la vidéo.
À retenir : mesurez une fois, décalez tout – comment la fonction de resynchronisation de Subtitle Toolkit applique le décalage à chaque repère du fichier
Mesurez la différence constante une fois, appliquez-la à chaque début et fin et portez une attention particulière aux signaux dépassant zéro. Subtitle Toolkit effectue l'analyse et l'écriture en millisecondes localement, de sorte que le texte de votre légende n'est pas téléchargé. Le contrôle précieux n’est pas que le téléchargement soit terminé ; c'est que les première, centrale et dernière lignes prononcées correspondent désormais à leurs indices.