Français

Vidéo et sous-titres · Boîte à outils de sous-titres

Dérive des sous-titres expliquée : pourquoi un décalage fixe échoue et comment fonctionne l'étirement

· Comment ça marche

sous-titres codes temporels fréquence d'images

Deux chronologies de sous-titres contre le dialogue : une en retard d'un écart constant, une dont l'écart se creuse vers la fin
Illustration vectorielle originale de ToolAcre

Si les sous-titres sont corrects au début et tard à la fin, le problème est la vitesse et non le décalage. Cet article explique comment les inadéquations de fréquence d'images provoquent une dérive, comment la diagnostiquer et en quoi les calculs d'un étirement linéaire diffèrent d'un décalage.

Synchronisé à la première minute, une demi-seconde en retard à la minute trente - la signature d'une dérive plutôt que d'un décalage

Il existe deux défauts différents derrière les sous-titres désynchronisés et ils nécessitent des corrections opposées. Un décalage est constant : chaque ligne est en retard du même montant, et le fichier est aussi erroné dans la première minute que dans la dernière. La dérive augmente : les lignes d'ouverture atterrissent correctement, l'erreur est à peine perceptible au bout de dix minutes et les lignes de clôture sont à la dérive quelques secondes. Le symptôme qui les sépare est de savoir si l’erreur à la fin est plus grande que l’erreur au début.

Se tromper de diagnostic coûte cher, car l'action évidente aggrave les choses. L'alignement de la première ligne d'un fichier dérivé avec un décalage déplace l'ensemble du fichier, de sorte que la fin dérive du montant d'origine plus tout ce qui vient d'être ajouté. L'outil documente cela directement comme une erreur courante et note que les deux opérations doivent être annulées avant la mise à l'échelle.

D'où vient la dérive : un fichier chronométré pour 25 ips joué sur une vidéo de 23.976 ips, ou vice versa

La cause habituelle est une inadéquation de fréquence d'images entre le timing avec lequel le fichier a été créé et la vidéo avec laquelle il est lu. Les horodatages des sous-titres sont des heures d'horloge murale, mais ils sont souvent dérivés du nombre d'images. Si un nombre d'images produit sur un matériau 23.976 fps est relu comme si chaque image correspondait à un vingt-cinquième de seconde, chaque horodatage est erroné dans le même rapport et un rapport constant appliqué à un nombre croissant produit une erreur croissante.

Ce rapport est d'environ 1.0427 pour 23.976 fps de contenu lu à 25 fps, ce que l'outil indique à côté du champ d'échelle. Le nombre n'est pas un bouton de réglage découvert par essai : c'est le quotient des deux fréquences d'images, donc un fichier qui était correct dans un monde est systématiquement étiré ou compressé dans l'autre. C’est pourquoi la dérive est presque toujours douce et linéaire plutôt qu’irrégulière.

Diagnostic de la dérive avec deux points de référence — mesure de l'erreur vers le début et vers la fin

Le diagnostic de la dérive nécessite deux mesures, pas une. Recherchez une ligne de dialogue près du début dont vous pouvez chronométrer la légende avec précision, et une autre vers la fin, et enregistrez pour chacune l'horodatage revendiqué par le fichier et l'horodatage du dialogue qui se produit réellement. Une seule mesure ne peut pas distinguer les deux défauts, car une seule erreur observée correspond à la fois à un décalage constant et à un étirement.

Choisissez les deux points aussi éloignés que le matériau le permet. L'ensemble du calcul divise une différence par une autre, de sorte qu'une ligne de base courte entraîne une petite erreur de mesure importante dans le résultat. Deux points espacés d'une minute dans un fichier de quatre-vingt-dix minutes produiront un rapport confiant par rapport à une précision que la mesure ne prend pas en charge.

Les mathématiques d'un étirement linéaire : mettre à l'échelle chaque timecode selon un rapport plutôt que d'ajouter une constante

Un décalage est une addition et un étirement est une multiplication, et c'est toute la différence. Le décalage ajoute une constante à chaque début et fin ; en interne, les signaux sont des millisecondes entières comptées à partir de zéro, donc l'opération est un ajout unique par horodatage et n'introduit aucun arrondi propre. Parce qu'il ajoute le même nombre partout, il ne peut pas changer la distance entre le premier signal et le dernier, ce qui est précisément le problème de drift.

Un étirement multiplie chaque horodatage par un facteur, mesuré à partir de zéro. Étant donné que le multiplicateur agit sur un nombre plus grand plus tard dans le fichier, il déplace la fin plus que l'ouverture, ce qui correspond à la dérive de forme. Les horodatages sont ré-arrondis à des millisecondes entières après la mise à l'échelle, de sorte qu'une échelle n'est pas parfaitement réversible comme l'est un décalage ; mettre à l'échelle une seule fois à partir de l'original plutôt que d'affiner un facteur en plusieurs passes.

Exemple concret : calcul du rapport à partir de deux mesures — transformant deux erreurs observées en une seule correction

Supposons que la légende à deux minutes affirme 00:02:00.000 tandis que le dialogue est à 00:01:59.750, et la légende à cinquante-huit minutes prétend 00:58:00.000 alors que le dialogue est à 00:57:52.750. En millisecondes, le fichier indique 120000 et 3480000 ; la vidéo veut 119750 et 3472750. L'erreur est passée de 250 ms à 7250 ms, ce qui correspond à une dérive et non à un décalage.

Le facteur est le rapport des deux intervalles : divisez la portée réelle 3472750 moins 119750, ou 3353000, par la portée revendiquée 3480000 moins 120000, ou 3360000. Cela donne environ 0.99792. En multipliant les temps réclamés par cela, on obtient 119750 et 3472750, les deux mesures, ce qui permet de vérifier que la correction est un pur étirement sans décalage restant. Lorsqu'un résidu reste, corrigez d'abord l'étirement, puis appliquez un décalage pour ce qui reste.

Ce que cela ne couvre pas : les coupures, les scènes ajoutées et les coupures publicitaires, qui produisent des sauts plutôt qu'une dérive fluide.

Cela couvre les erreurs qui se développent de manière fluide et proportionnelle. Il ne s'agit pas d'un fichier correct pendant vingt minutes puis brusquement d'un montant fixe pour le reste, qui est la signature d'un montage : une scène supprimée, une coupure publicitaire insérée ou un montage différent du même long métrage. Ce défaut est un décalage appliqué à une partie du fichier, et aucun rapport unique ne le corrige.

L'outil Shift s'applique à chaque cue du fichier et n'offre aucun moyen de resynchroniser une plage sélectionnée, donc un fichier avec un saut à mi-chemin ne peut pas être réparé en un seul passage. Il ne peut pas non plus récupérer du serrage : un résultat négatif est ramené à zéro car aucun des deux formats ne peut exprimer un temps négatif, et le déplacement vers l'avant par la suite ne restaure pas les signaux qui y étaient épinglés. L'outil avertit lorsqu'un repère se bloque, et le remède documenté est une annulation plutôt qu'un changement de compensation.

À retenir : décalage pour le décalage, échelle pour la dérive - comment utiliser la fonction de resynchronisation de la boîte à outils de sous-titres pour le cas de décalage fixe et où vérifier sa liste "Ce que cet outil ne fera pas" avant de s'y fier pour la dérive

Décalez pour un décalage, mettez à l'échelle la dérive et mesurez avant de faire l'un ou l'autre. Entrez le décalage en millisecondes, car le champ ne contient aucune entrée de secondes ni de code temporel et la saisie de 2 décale le fichier de deux millisecondes au lieu de deux secondes ; l'opération réussit, le fichier change véritablement et la synchronisation semble exactement aussi mauvaise qu'avant. Un décalage positif retarde les sous-titres qui apparaissent avant le dialogue.

Pour la dérive, utilisez le facteur d'échelle à côté du décalage plutôt que de déplacer le décalage à plusieurs reprises. Lisez les limites de la page d'outils avant de vous y fier : l'annulation conserve les vingt dernières opérations, les signaux bloqués peuvent s'effondrer jusqu'à une durée nulle ou s'allonger lorsqu'une seule extrémité a été épinglée, et la validation est réexécutée après chaque modification afin que ces cas soient signalés plutôt que expédiés silencieusement.