Aller au contenu principal
SubtitleMatrix

Format de sous-titres ASS

Conversion de formatsAdvanced SubStation Alpha (ASS)

Ce que ce format peut exprimer

Style du texte
Polices, couleur, contour, ombre
Positionnement à l'écran
Oui
Minutage karaoké
Oui
Sauts de ligne dans un bloc
Oui
Chronologie
Heure de début et de fin pour chaque bloc
Résolution du minutage
10 ms
Minutage stocké en numéros d'image
Non
Texte de droite à gauche
Oui

Exemples

Un fichier ASS typique, et ce qui en est lu

Fichier

[Script Info]
Title: Example
ScriptType: v4.00+
WrapStyle: 0

[V4+ Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding
Style: Default,Arial,20,&H00FFFFFF,&H000000FF,&H00000000,&H00000000,0,0,0,0,100,100,0,0,1,2,2,2,10,10,10,1
Style: Title,Arial,36,&H0000FFFF,&H000000FF,&H00000000,&H00000000,-1,0,0,0,100,100,0,0,1,2,2,2,10,10,10,1

[Events]
Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: 0,0:00:01.00,0:00:04.00,Default,,0,0,0,,Hello there.
Dialogue: 0,0:00:05.00,0:00:08.50,Default,,0,0,0,,{\i1}Italic{\i0} and {\b1}bold{\b0} text.
Dialogue: 0,0:00:09.00,0:00:12.00,Title,,0,0,0,,{\pos(320,240)}Positioned
Dialogue: 0,0:00:13.00,0:00:16.00,Default,,0,0,0,,{\k50}ka{\k30}ra{\k20}o{\k10}ke
Dialogue: 0,0:00:17.00,0:00:20.00,Default,,0,0,0,,Line one\NLine two
Dialogue: 1,0:00:21.00,0:00:24.00,Default,,0,0,0,,{\an7}Top left

Ce qu'il contient

6 cues, 7 lines of text

  0:00:01.00 → 0:00:04.00
    Hello there.
    [Default]
  0:00:05.00 → 0:00:08.50
    Italic and bold text.   [italic ×1, bold ×1]
    [Default]
  0:00:09.00 → 0:00:12.00
    Positioned
    [Title; \pos 320,240]
  0:00:13.00 → 0:00:16.00
    karaoke   [karaoke ×4]
    [Default]
  0:00:17.00 → 0:00:20.00
    Line one
    Line two
    [Default]
  0:00:21.00 → 0:00:24.00
    Top left
    [Default]

Outside the cues:
  sections   [Script Info], [V4+ Styles], [Events]
  style table  2 — Default (Arial 20), Title (Arial 36)

La colonne de droite n'est pas un fichier converti : c'est ce que ce site lit dans la colonne de gauche, et le point de départ de toute conversion.

Un fichier ASS mal formé, et ce qui en est encore lu

Fichier

[Script Info]
; 一份真实的脏文件:BOM + CRLF + 认不出的覆写码 + Comment + 坏时间码
Title: Dirty sample
ScriptType: v4.00+

[V4+ Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding
Style: Default,Arial,20,&H00FFFFFF,&H000000FF,&H00000000,&H00000000,1,0,0,0,100,100,0,0,1,2,2,2,10,10,10,1

[Fonts]
fontname: Arial
!!!!!!!!!!!!!!!!!!!!!!!!!!!!

[Events]
Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Comment: 0,0:00:00.00,0:00:01.00,Default,,0,0,0,,这是一条注释,不该变成字幕
Dialogue: 0,0:00:01.00,0:00:04.00,Default,,0,0,0,,Hello, world
Dialogue: 0,0:00:05.00,0:00:08.00,Default,,0,0,0,,{\fad(300,300)}Unmodelled override
Dialogue: 0,0:00:09.00,0:00:12.00,Default,,0,0,0,,{\an7\pos(320,240)}Both, wrong order
Dialogue: 0,0:00:13.00,0:00:16.5,Default,,0,0,0,,One decimal centisecond
Dialogue: 0,0:00:17.00,0:00:20.00,Default,,0,0,0,,Soft\nbreak
Dialogue: 0,0:00:xx.00,0:00:24.00,Default,,0,0,0,,Broken timecode

Ce qu'il contient

5 cues, 6 lines of text

  0:00:01.00 → 0:00:04.00
    Hello, world
    [Default]
  0:00:05.00 → 0:00:08.00
    {\fad(300,300)}Unmodelled override
    [Default]
  0:00:09.00 → 0:00:12.00
    Both, wrong order
    [Default; \pos 320,240]
  0:00:13.00 → 0:00:16.50
    One decimal centisecond
    [Default]
  0:00:17.00 → 0:00:20.00
    Soft
    break
    [Default]

Outside the cues:
  sections   [Script Info], [V4+ Styles], [Fonts], [Events]
  style table  1 — Default (Arial 20)
  events     1 Comment: line — stored, never displayed

Reported while reading — repaired or skipped, never silently:
  1 × events whose time codes could not be read (they were left in the file unchanged)

Les vrais fichiers arrivent avec un BOM, des fins de ligne Windows, une ligne parasite avant un code temporel, ou un code temporel illisible. Rien ne lève d'exception : ce qui n'est pas compris est signalé, jamais écarté en silence.

Convertir Advanced SubStation Alpha (ASS) vers un autre format

Chacune de ces pages tourne entièrement dans votre navigateur. Les étiquettes indiquent ce que coûte cette direction avant de l'ouvrir.

ASS → MicroDVD : styles, position, karaoké, fps, contenu du format perdus.
  • Style
  • Positionnement
  • Karaoké
  • Fréquence d'images
  • Contenu propre au format
ASS → SSA : aucune perte, conversion dans le navigateur.

Rien n'est perdu dans ce sens — chaque fonctionnalité du format source a un équivalent dans le format cible.

Convertir vers ce format

ASS (Advanced SubStation Alpha) est l'un des formats de sous-titres traités par ce site, et cette page en est la référence : ce qu'il peut stocker, ce qu'il ne peut pas, et une page pour chacun des formats vers lesquels le convertir.

Le tableau ci-dessus dit tout, sans liste de fonctions cachée. Quand une ligne affiche non, c'est exactement ce qui est perdu en convertissant vers l'ASS, et chaque page de conversion liée plus bas l'annonce avant l'ouverture d'un fichier.

Toutes ces conversions se font dans votre navigateur. Rien n'est téléversé et aucun compte n'est nécessaire, ce qui compte pour un document sous accord de confidentialité, un dossier médical ou un embargo de diffusion.

Questions fréquentes

Qu'est-ce qu'un fichier ASS ?

C'est un script de sous-titres : une table de styles, un en-tête [Script Info] et des événements Dialogue qui portent leur texte, leur minutage et leurs codes de surcharge. C'est le format le plus riche de la liste, et le seul à égalité avec le SSA à ne rien perdre en conversion.

Le format ASS stocke-t-il du style ?

Oui, à deux niveaux : une table de styles nommés, avec police, taille, couleurs, contour, ombre et marges, puis des codes de surcharge dans chaque Dialogue pour modifier le style localement. Un fichier peut donc avoir un style global cohérent et des exceptions ponctuelles.

Chaque bloc ASS a-t-il un début et une fin ?

Oui, et un instant dans un fichier ASS s'écrit 0:00:04.13. C'est la résolution du format, le centième de seconde, et la valeur est exacte : un Dialogue peut donc être court, long ou chevaucher le suivant sans que rien ne l'implique.

Vers quel format convertir un ASS ?

Le SSA ne perd rien, car les deux formats décrivent le même modèle. Toutes les autres directions perdent au moins une chose, et chaque page de conversion nomme sa propre liste : choisissez la cible d'après la liste que vous pouvez accepter.

Que garde un fichier ASS en dehors de ses blocs ?

Un en-tête [Script Info] avec la résolution de jeu et les règles de rendu, une table [V4+ Styles], des événements Comment:, Picture: et Sound:, et parfois des sections [Fonts] et [Graphics] qui embarquent des ressources. Une conversion vers un format de blocs simples les perd, et la page le dit.

Quelle différence entre un fichier ASS et un SSA ?

Le SSA est le prédécesseur : il déclare [V4 Styles] et une colonne TertiaryColour là où l'ASS déclare [V4+ Styles] et OutlineColour. Le contenu et les capacités sont les mêmes, ce qui explique que la conversion entre les deux soit sans perte.