Subtitle formats: Difference between revisions

From AniDB
Jump to navigation Jump to search
No edit summary
(→‎SSA - SubStation Alpha: added spec link)
 
(7 intermediate revisions by 2 users not shown)
Line 39: Line 39:
Dialogue: 0,0:00:01.18,0:00:06.85,DefaultVCD, NTP,0000,0000,0000,,{\pos(400,570)}Like an Angel with pity on nobody\NThe second line in subtitle
Dialogue: 0,0:00:01.18,0:00:06.85,DefaultVCD, NTP,0000,0000,0000,,{\pos(400,570)}Like an Angel with pity on nobody\NThe second line in subtitle
</pre>
</pre>
=DivX Subtitle (XSUB)=
Official website:
Wikipedia:
===What is DivX Subtitle===
===Format specifications===
Format specifications:
===Example===




Line 236: Line 250:


===Example===
===Example===
<pre>
// translated by Sami2Sasami 1.0.7.300
// contact: nuclei@shinbiro.com
;Set.Slot=1
;Set.Time.Delay=15000
;Set.Alpha.End=256
;Set.Alpha.Start=256
;Set.Alpha.Step=-300
;Set.Font.Bold=0
;Set.Font.Color=#EEF4FB
;Set.Font.Outline.Color=#00101010
;Set.Font.Outline2.Color=#01101010
;Set.Font.Size=9
;Set.Font.Face=№ЩЕБ
;Buffer.Push=1
;Buffer.Pop=1
;Set.Time.Start=18352
;Set.Start.Position.x=117
;Set.End.Position.x=117
;Set.Start.Position.y=203
;Set.End.Position.y=203
;Set.Start.Position.x=117
;Set.End.Position.x=117
;Set.Start.Position.y=203
;Set.End.Position.y=203
 
;(ї¬°бµК)
;Set.Start.Position.x=164
;Set.End.Position.x=164
;Set.Start.Position.y=203
;Set.End.Position.y=203
;Set.Start.Position.x=164
;Set.End.Position.x=164
;Set.Start.Position.y=203
;Set.End.Position.y=203
Long, long ago,
;Set.Start.Position.x=160
;Set.End.Position.x=160
;Set.Start.Position.y=221
;Set.End.Position.y=221
;Set.Start.Position.x=160
;Set.End.Position.x=160
;Set.Start.Position.y=221
;Set.End.Position.y=221


Ihrie! Hey, lhrie!
;Set.Start.Position.x=160
;Set.End.Position.x=160
;Set.Start.Position.y=203
;Set.End.Position.y=203
;Set.Start.Position.x=160
;Set.End.Position.x=160
;Set.Start.Position.y=203
;Set.End.Position.y=203
;Set.Start.Position.x=160
;Set.End.Position.x=160
;Set.Start.Position.y=221
;Set.End.Position.y=221
;Set.Start.Position.x=160
;Set.End.Position.x=160
;Set.Start.Position.y=221
;Set.End.Position.y=221
What is it, Fam?
</pre>


=SMI - SAMI=
=SMI - SAMI=
Line 364: Line 445:


===Format specifications===
===Format specifications===
Format specifications:  
Format specifications: http://moodub.free.fr/video/ass-specs.doc


A file consists of 4 or 5 parts, declared ala INI file (but it's not an INI !)
A file consists of 4 or 5 sections, declared ala INI file (but it's not an INI!)


The first, "[Script Info]" contains some information about the subtitle file, such as it's title, who created it, type of script and a very important one : "PlayResY". Be carefull of this value, everything in your script (font size, positioning) is scaled by it. Sub Station Alpha uses your desktops Y resolution to write this value, so if a friend with a large monitor and a high screen resolution gives you an edited script, you can mess everything up by saving the script in SSA with your low-cost monitor.
The first section, "[Script Info]" contains some information about the subtitle file, such as its title and author, the type of script and a very important field: "PlayResY". Be careful of this value, everything in your script (font size, positioning) is scaled by it. Sub Station Alpha uses your desktop's Y resolution to write this value, so if a friend with a large monitor and a high screen resolution gives you an edited script, you can mess everything up by saving the script in SSA with your low-cost monitor.


The second, "[V4 Styles]", is a list of style definitions. A style describe how will look a text on the screen. It defines font, font size, primary/.../outile colour, position, aligment etc ...
The second section, "[V4 Styles]", is a list of style definitions. A style describes how text will look on the screen. It defines the font, font size, primary/.../outile colour, position, alignment etc.


For example this :
For example:


<pre>Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding
<pre>Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding
Style: Wolf main,Wolf_Rain,56,15724527,15724527,15724527,4144959,0,0,1,1,2,2,5,5,30,0,0</pre>
Style: Wolf main,Wolf_Rain,56,15724527,15724527,15724527,4144959,0,0,1,1,2,2,5,5,30,0,0</pre>


The third, "[Events]", is the list of text you want to display at the right timing. You can specify some attribute here. Like the style to use for this event (must be defined in the list), the position of the text (Left, Right, Vertical Margin), an effect. Name is mostly used by translator to know who said this sentence. Timing is in h:mm:ss.cc (centisec).
The third section, "[Events]", is the list of text you want to display at the right time. You can specify some attributes here, like the style to use for each event (must be defined in the style list), the position of the text (Left, Right, Vertical Margin), and an effect. Name is mostly used by translator to know who said each sentence. Times are given as h:mm:ss.cc (centiseconds).


<pre>Format: Marked, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
<pre>Format: Marked, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Line 383: Line 464:
Dialogue: Marked=0,0:02:42.42,0:02:44.15,Wolf main,autre,0000,0000,0000,,Toujours rien.</pre>
Dialogue: Marked=0,0:02:42.42,0:02:44.15,Wolf main,autre,0000,0000,0000,,Toujours rien.</pre>


"[Pictures]" or "[Fonts]" part can be found in some SSA file, they contains UUE-encoded pictures/font but those features are only used by Sub Station Alpha, i.e. no filter (Vobsub/Avery Lee Subtiler filter) use them.
A "[Fonts]" section can be found in some SSA files. It contains uuencoded fonts. Most software supports it (including VSFilter and libass), but alternative distribution methods such as MKV attachments are safer.
 
The format also supports a "[Graphics]" section with uuencoded files and Picture, Sound, Movie and Command event lines in the "[Events]" section, but these features are only supported by Sub Station Alpha itself, and no standalone renderer (VSFilter, libass, Avery Lee's Subtiler filter) supports them.


===Example===
===Example===
Line 407: Line 490:
Dialogue: Marked=0,0:00:01.18,0:00:06.85,DefaultVCD, NTP,0000,0000,0000,,{\pos(400,570)}Like an angel with pity on nobody
Dialogue: Marked=0,0:00:01.18,0:00:06.85,DefaultVCD, NTP,0000,0000,0000,,{\pos(400,570)}Like an angel with pity on nobody
</pre>
</pre>


=STL - Spruce Subtitle Format=
=STL - Spruce Subtitle Format=
Line 489: Line 571:


===Example===
===Example===
<pre>
[INFORMATION] Пожалуйста спаси мою землю
[AUTHOR] Silvan Elf
[SOURCE] Please Save My Earth.
[PRG] 1
[FILEPATH]
[DELAY]
[CD TRACK] 1
[COMMENT]  Перевод с английского.
[END INFORMATION]
[SUBTITLE]
[COLF]&HFFFFFF,[STYLE]no,[SIZE]18,[FONT]Arial
00:00:19.49,00:00:21.55
Хочу домой.
00:00:22.66,00:00:25.75
Я раньше никогда не была в месте [br]Где воздух такой...
00:00:26.66,00:00:28.13
грязный.


00:59:07.21,00:59:08.84
Я хочу поговорить с тобой.


00:59:08.91,00:59:10.11
Так ты умеешь летать, верно?
</pre>


==SUB - VobSub==
==SUB - VobSub==
Line 565: Line 673:


=TXT=
=TXT=
==TXT - QTtext==
Official website:  
Official website:  


Line 574: Line 683:


===Example===
===Example===
<pre>
{QTtext}{font: Arial}{justify: center}{size:  12}{backcolor:0, 0, 0}
{timescale: 100}{width: 439}{height: 0}
[00:00:05.71]
{justify:center}README.TXT for MAGpie
[00:00:07.03]
{justify:center}Please read this entire document before installing MAGpie.
[00:00:14.98]
{justify:center}*****************
MAGpie 1.0
*****************
[00:00:15.99]
{justify:center}-- SYSTEM REQUIREMENTS
[00:00:16.83]
{justify:center}1. Windows95/98
[00:00:18.43]
{justify:center}2. Microsoft Internet Explorer 4 or higher (http://www.microsoft.com)
</pre>




Line 590: Line 720:


===Example===
===Example===
=WebVTT=
Official website:
Wikipedia: https://en.wikipedia.org/wiki/WebVTT
===What is WebVTT===
WebVTT (Web Video Text Tracks) is a W3C standard for displaying timed text in connection with the HTML5 <nowiki><track></nowiki> element.
===Format specifications===
Format specifications:
===Example===
<pre>
WEBVTT
00:11.000 --> 00:13.000
<v Roger Bingham>We are in New York City
00:13.000 --> 00:16.000
<v Roger Bingham>We're actually at the Lucern Hotel, just down the street
00:16.000 --> 00:18.000
<v Roger Bingham>from the American Museum of Natural History
00:18.000 --> 00:20.000
<v Roger Bingham>And with me is Neil deGrasse Tyson
00:20.000 --> 00:22.000
<v Roger Bingham>Astrophysicist, Director of the Hayden Planetarium
00:22.000 --> 00:24.000
<v Roger Bingham>at the AMNH.
00:24.000 --> 00:26.000
<v Roger Bingham>Thank you for walking down here.
00:27.000 --> 00:30.000
<v Roger Bingham>And I want to do a follow-up on the last conversation we did.
00:30.000 --> 00:31.500 align:end size:50%
<v Roger Bingham>When we e-mailed—
00:30.500 --> 00:32.500 align:start size:50%
<v Neil deGrasse Tyson>Didn't we talk about enough in that conversation?
00:32.000 --> 00:35.500 align:end size:50%
<v Roger Bingham>No! No no no no; 'cos 'cos obviously 'cos
00:32.500 --> 00:33.500 align:start size:50%
<v Neil deGrasse Tyson><i>Laughs</i>
00:35.500 --> 00:38.000
<v Roger Bingham>You know I'm so excited my glasses are falling off here.
</pre>





Latest revision as of 00:03, 15 January 2016

Reference links


ASS - Advanced SubStation Alpha

Official website:

Wikipedia: http://en.wikipedia.org/wiki/SubStation_Alpha#Advanced_SubStation_Alpha

What is Advanced SubStation Alpha?

Advanced SubStation Alpha (ASS) is a script for more advanced subtitles than SSA. It is technically SSA v4+. It is able to produce anything from simple texts to manual graphic editing used in karaoke. There are few programs designed to create these scripts. The main feature of ASS is it has more specifications than normal SSA, like in styles programming.

Format specifications

Format specifications:

Example

[Script Info]
; Script generated by Aegisub
; http://www.aegisub.net
Title: Neon Genesis Evangelion - Episode 26 (neutral Spanish)
Original Script: RoRo
Script Updated By: version 2.8.01
ScriptType: v4.00+
Collisions: Normal
PlayResY: 600
PlayDepth: 0
Timer: 100,0000
Video Aspect Ratio: 0
Video Zoom: 6
Video Position: 0
  
[V4+ Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, <br>ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding
Style: DefaultVCD, Arial,28,&H00B4FCFC,&H00B4FCFC,&H00000008,&H80000008,-1,0,0,0,100,100,0.00,0.00,1,1.00,2.00,2,30,30,30,0
  
[Events]
Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: 0,0:00:01.18,0:00:06.85,DefaultVCD, NTP,0000,0000,0000,,{\pos(400,570)}Like an Angel with pity on nobody\NThe second line in subtitle


DivX Subtitle (XSUB)

Official website:

Wikipedia:

What is DivX Subtitle

Format specifications

Format specifications:

Example

FSB - FanSubber Script

Official website:

Wikipedia:

What is FanSubber Script

Format specifications

Format specifications:

Example

IDX

Official website:

Wikipedia:

What is ?

Format specifications

Format specifications:

Example

JS - JACOsub

Official website: http://unicorn.us.com/jacosub/

Wikipedia:

What is JACOsub?

JACOsub is a program (now open source) designed for displaying timed sequences of titles and graphics over a video. Professional-quality output and flexibility have been the primary goals since the program's inception. It was originally written for the Japanese Animation Club of Orlando (JACO) to lay English subtitles over Japanese-language films and television shows. The program has spread and grown in popularity due to its extremely flexible script format, clean multi-buffered title transitions, and other features described in the next section.

The development of JACOsub has been primarily user-driven. Most of the program's more interesting features exist because users suggested them. Because of the valuable input given by so many people, JACOsub has become an exceptionally powerful program while retaining its initial simplicity at the same time.

Format specifications

Format specifications: http://unicorn.us.com/jacosub/jscripts.html

Example

# VobSub index file, v7 (do not modify this line!)
#
# To repair desyncronization, you can insert gaps this way:
# (it usually happens after vob id changes)
#
# delay: [sign]hh:mm:ss:ms
#
# Where:
# [sign]: +, - (optional)
# hh: hours (0 <= hh)
# mm/ss: minutes/seconds (0 <= mm/ss <= 59)
# ms: milliseconds (0 <= ms <= 999)
#
# Note: You can't position a sub before the previous with a negative value.
#
# You can also modify timestamps or delete a few subs you don't like.
# Just make sure they stay in increasing order.


# Settings

# Original frame size
size: 720x480

# Origin, relative to the upper-left corner, can be overloaded by aligment
org: 0, 0

# Image scaling (hor,ver), origin is at the upper-left corner or at the alignment coord (x, y)
scale: 100%, 100%

# Alpha blending
alpha: 100%

# Smoothing for very blocky images (use OLD for no filtering)
smooth: OFF

# In millisecs
fadein/out: 50, 50

# Force subtitle placement relative to (org.x, org.y)
align: OFF at LEFT TOP

# For correcting non-progressive desync. (in millisecs or hh:mm:ss:ms)
# Note: Not effective in DirectVobSub, use "delay: ... " instead.
time offset: 0

# ON: displays only forced subtitles, OFF: shows everything
forced subs: OFF

# The original palette of the DVD
palette: 000000, 7e7e7e, fbff8b, cb86f1, 7f74b8, e23f06, 0a48ea, b3d65a, 6b92f1, 87f087, c02081, f8d0f4, e3c411, 382201, e8840b, fdfdfd

# Custom colors (transp idxs and the four colors)
custom colors: OFF, tridx: 0000, colors: 000000, 000000, 000000, 000000

# Language index in use
langidx: 0

# English
id: en, index: 0
# Decomment next line to activate alternative name in DirectVobSub / Windows Media Player 6.x
# alt: English
# Vob/Cell ID: 1, 1 (PTS: 0)
timestamp: 00:00:01:101, filepos: 000000000
timestamp: 00:00:08:708, filepos: 000001000


KATE

Official website: https://wiki.xiph.org/OggKate

Wikipedia:

What is KATE

Kate is an overlay codec, originally designed for karaoke and text, that can be multiplexed in Ogg.

Text and images can be carried and animated by a Kate stream. Most of the time, they will (optionally) be multiplexed with audio/video to carry subtitles, song lyrics (with or without karaoke data), etc.

Format specifications

Format specifications:

Example

LRC - Lyric

Official website:

Wikipedia: http://en.wikipedia.org/wiki/LRC_%28file_format%29

What is LRC?

LRC is a computer file format that synchronizes song lyrics with an audio file, such as MP3, Vorbis or MIDI. When an audio file is played with certain music players on a computer or on modern digital audio players, the song lyrics are displayed. The lyrics file generally has the same name as the audio file. For example, song.mp3 and song.lrc. The LRC format is text based and similar to subtitle files.

Format specifications

Format specifications:

Example

MKS - Matroska Subtitles

Official website: http://www.matroska.org/

Wikipedia: http://en.wikipedia.org/wiki/Matroska

What are Matroska subtitles?

The MKS file suffix is associated with the Matroska file format. Matroska is a container format generally used for video, audio and subtitles. The native file extension, that is used by Matroska, is MKV. MKS files contain only subtitle streams without video or audio data. The Matroska subtitle stream can contain some of the most used subtitle formats such as VobSub subtitle format (SUB), SubRip subtitle format (SRT), (Advanced) SubStation Alpha subtitle format (SSA/ASS) and Core Media Player XML universal subtitle format (USF).

Format specifications

Format specifications:


PJS - Phoenix Japanimation Society

Official website:

Wikipedia:

What is Phoenix Japanimation Society?

Phoenix Japanimation Society seems to be a fansubbing group of old times, a subtitle format of theirs and possibly also software for handling it.

Format specifications

Format specifications:

  • Format is timed in tenths of seconds.
  • Unknown whether spacing between/in front of timings are mandatory.
  • Pipe character for forced line breaks.
  • Text enclosed in double quotes.

Example

2447,   2513, "You should come to the Drama Club, too."
2513,   2594, "Yeah. The Drama Club is worried|that you haven't been coming."
2603,   2675, "I see. Sorry, I'll drop by next time."

RT - RealText

Official website:

Wikipedia:

What is ?

Format specifications

Format specifications: http://service.real.com/help/library/guides/realone/ProductionGuide/HTML/htmfiles/realtext.htm

Example

S2K - Sasami2k script

Official website:

Wikipedia:

What is Sasami2k script

Format specifications

Format specifications:

Example

// translated by Sami2Sasami 1.0.7.300
// contact: nuclei@shinbiro.com
;Set.Slot=1
;Set.Time.Delay=15000
;Set.Alpha.End=256
;Set.Alpha.Start=256
;Set.Alpha.Step=-300
;Set.Font.Bold=0
;Set.Font.Color=#EEF4FB
;Set.Font.Outline.Color=#00101010
;Set.Font.Outline2.Color=#01101010
;Set.Font.Size=9
;Set.Font.Face=№ЩЕБ
;Buffer.Push=1
 
;Buffer.Pop=1
;Set.Time.Start=18352
;Set.Start.Position.x=117
;Set.End.Position.x=117
;Set.Start.Position.y=203
;Set.End.Position.y=203
;Set.Start.Position.x=117
;Set.End.Position.x=117
;Set.Start.Position.y=203
;Set.End.Position.y=203
  
;(ї¬°бµК)
;Set.Start.Position.x=164
;Set.End.Position.x=164
;Set.Start.Position.y=203
;Set.End.Position.y=203
;Set.Start.Position.x=164
;Set.End.Position.x=164
;Set.Start.Position.y=203
;Set.End.Position.y=203
Long, long ago,
;Set.Start.Position.x=160
;Set.End.Position.x=160
;Set.Start.Position.y=221
;Set.End.Position.y=221
;Set.Start.Position.x=160
;Set.End.Position.x=160
;Set.Start.Position.y=221
;Set.End.Position.y=221
 


Ihrie! Hey, lhrie!
;Set.Start.Position.x=160
;Set.End.Position.x=160
;Set.Start.Position.y=203
;Set.End.Position.y=203
;Set.Start.Position.x=160
;Set.End.Position.x=160
;Set.Start.Position.y=203
;Set.End.Position.y=203
 
;Set.Start.Position.x=160
;Set.End.Position.x=160
;Set.Start.Position.y=221
;Set.End.Position.y=221
;Set.Start.Position.x=160
;Set.End.Position.x=160
;Set.Start.Position.y=221
;Set.End.Position.y=221
What is it, Fam?

SMI - SAMI

Official website:

Wikipedia: http://en.wikipedia.org/wiki/SAMI

What is SAMI?

SAMI (Synchronized Accessible Media Interchange) is a Microsoft accessibility initiative released in 1998. The structured markup language is designed to simplify creating captions for media playback on a PC, i.e. not for broadcast purposes.

SAMI documents are text, and can be written in any text editor, although there are special utilities available to create SAMI documents. They use .smi or .sami file extensions. The common use of .smi for SAMI files creates a file extension collision with SMIL files.

Each SAMI document may contain more than one language.

Format specifications

Format specifications:

Example

<SAMI>

<HEAD>
<TITLE>SAMI Example</TITLE>

<SAMIParam>
  Media {cheap44.wav}
  Metrics {time:ms;}
  Spec {MSFT:1.0;}
</SAMIParam>

<STYLE TYPE="text/css">
<!--
  P { font-family: Arial; font-weight: normal; color: white; background-color: black; text-align: center; }

  #Source {color: red; background-color: blue; font-family: Courier; font-size: 12pt; font-weight: normal; text-align: left; }

  .ENUSCC { name: English; lang: en-US ; SAMIType: CC ; }
  .FRFRCC { name: French;  lang: fr-FR ; SAMIType: CC ; }
-->
</STYLE>

</HEAD>

<BODY>

<-- Open play menu, choose Captions and Subtiles, On if available -->
<-- Open tools menu, Security, Show local captions when present -->

<SYNC Start=0>
  <P Class=ENUSCC ID=Source>The Speaker</P>
  <P Class=ENUSCC>SAMI 0000 text</P>

  <P Class=FRFRCC ID=Source>French The Speaker</P>
  <P Class=FRFRCC>French SAMI 0000 text</P>
</SYNC>

<SYNC Start=1000>
  <P Class=ENUSCC>SAMI 1000 text</P>
  <P Class=FRFRCC>French SAMI 1000 text</P>
</SYNC>

<SYNC Start=2000>
  <P Class=ENUSCC>SAMI 2000 text</P>
  <P Class=FRFRCC>French SAMI 2000 text</P>
</SYNC>

<SYNC Start=3000>
  <P Class=ENUSCC>SAMI 3000 text</P>
  <P Class=FRFRCC>French SAMI 3000 text</P>
</SYNC>

</BODY>
</SAMI>


SRT - SubRip

Official website:

Wikipedia: http://en.wikipedia.org/wiki/SubRip

What is SubRip?

SubRip is a software program for Windows which "rips" (extracts) subtitles and their timings from video. It is free software, released under the GNU GPL. SubRip is also the name of the widely used and broadly compatible subtitle text file format created by this software.

Format specifications

Format specifications:

The SubRip file format is "perhaps the most basic of all subtitle formats." SubRip files are named with the extension .srt, and contain formatted plain text. The time format used is hours:minutes:seconds,milliseconds. The decimal separator used is the comma, since the program was written in France. The line break used is often the CR+LF pair. Subtitles are numbered sequentially, starting at 1. The sections must appear in numbered order in the file, and must also be sorted on start-time. Two sections can not overlap time-wise.

Subtitle index number
Start time --> End time
Text of subtitle (one or more lines)
Blank line

Three override tags are supported: Bold, Italics and Underline. They use the common HTML-style tag pairs <b>bold</b>, <i>italics</i> and <u>underline</u>. Changing the font color with <font color="#ff0000"></font> or the font size with <font size="35"></font> is also possible but not supported by many players.

A feature of SubRip files that is supported by almost no players is the positioning of subtitles:

Subtitle index number
Start time --> End time  X1:Position left X2:Position right Y1:Position up Y2:Position down
Text of subtitle (one or more lines)
Blank line

Example

1
00:00:20,000 --> 00:00:24,400
Altocumulus clouds occur between six thousand
 
2
00:00:24,600 --> 00:00:27,800
and twenty thousand feet above ground level.
1
00:00:02,001 --> 00:00:16,001  X1:000 X2:000 Y1:050 Y2:100
Let us have some! Let us have some!


SSA - SubStation Alpha

Official website:

Wikipedia: http://en.wikipedia.org/wiki/SubStation_Alpha

What is SubStation Alpha?

SubStation Alpha (or Sub Station Alpha), abbreviated SSA, is a subtitle file format created by CS Low (also known as Kotus) that allows for more advanced subtitles than the conventional SRT and similar formats. This format can be rendered with VSFilter in conjunction with a DirectShow-aware video player (on Microsoft Windows), or MPlayer with the SSA/ASS library. It is also the name of the popular, now discontinued tool used to edit subtitles.

Format specifications

Format specifications: http://moodub.free.fr/video/ass-specs.doc

A file consists of 4 or 5 sections, declared ala INI file (but it's not an INI!)

The first section, "[Script Info]" contains some information about the subtitle file, such as its title and author, the type of script and a very important field: "PlayResY". Be careful of this value, everything in your script (font size, positioning) is scaled by it. Sub Station Alpha uses your desktop's Y resolution to write this value, so if a friend with a large monitor and a high screen resolution gives you an edited script, you can mess everything up by saving the script in SSA with your low-cost monitor.

The second section, "[V4 Styles]", is a list of style definitions. A style describes how text will look on the screen. It defines the font, font size, primary/.../outile colour, position, alignment etc.

For example:

Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding
Style: Wolf main,Wolf_Rain,56,15724527,15724527,15724527,4144959,0,0,1,1,2,2,5,5,30,0,0

The third section, "[Events]", is the list of text you want to display at the right time. You can specify some attributes here, like the style to use for each event (must be defined in the style list), the position of the text (Left, Right, Vertical Margin), and an effect. Name is mostly used by translator to know who said each sentence. Times are given as h:mm:ss.cc (centiseconds).

Format: Marked, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: Marked=0,0:02:40.65,0:02:41.79,Wolf main,Cher,0000,0000,0000,,Et les enregistrements de ses ondes delta ?
Dialogue: Marked=0,0:02:42.42,0:02:44.15,Wolf main,autre,0000,0000,0000,,Toujours rien.

A "[Fonts]" section can be found in some SSA files. It contains uuencoded fonts. Most software supports it (including VSFilter and libass), but alternative distribution methods such as MKV attachments are safer.

The format also supports a "[Graphics]" section with uuencoded files and Picture, Sound, Movie and Command event lines in the "[Events]" section, but these features are only supported by Sub Station Alpha itself, and no standalone renderer (VSFilter, libass, Avery Lee's Subtiler filter) supports them.

Example

[Script Info]
; This is a Sub Station Alpha v4 script.
; For Sub Station Alpha info and downloads,
; go to http://www.eswat.demon.co.uk/
Title: Neon Genesis Evangelion - Episode 26 (neutral Spanish)
Original Script: RoRo
Script Updated By: version 2.8.01
ScriptType: v4.00
Collisions: Normal
PlayResY: 600
PlayDepth: 0
Timer: 100,0000
  
[V4 Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding
Style: DefaultVCD, Arial,28,11861244,11861244,11861244,-2147483640,-1,0,1,1,2,2,30,30,30,0,0
  
[Events]
Format: Marked, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: Marked=0,0:00:01.18,0:00:06.85,DefaultVCD, NTP,0000,0000,0000,,{\pos(400,570)}Like an angel with pity on nobody

STL - Spruce Subtitle Format

Official website: http://www.reocities.com/mcpoodle43/DVDMaestro/stl_format.html

Wikipedia:

What is STL

The Spruce Subtitle format (extension .stl) was designed specifically for DVDMaestro.

Format specifications

Format specifications:

Example

SUB

The .sub file extension is used for a variety of external subtitle files.


SUB - MicroDVD

Official website: http://www.tiasoft.de/mdvdp/

Wikipedia: http://en.wikipedia.org/wiki/MicroDVD

What is MicroDVD?

MicroDVD is a subtitle file format for digital video. Its name is derived from a media player application designed to play DVD videos along with subtitles, originally developed by Tiamat Software. The application was first released in 2000 but development ended in 2001. Media players that support the format are able to interpret MicroDVD subtitles and mix their contents with their corresponding video files.

Format specifications

Format specifications:

MicroDVD subtitle files consist of multiple lines, each defining a portion of the subtitle text that must be displayed between certain given video frames. The line syntax is:

{start-frame}{stop-frame}Text

For example, if "Hello!" is to be displayed during the first 25 frames of a digital video, clip or movie, the corresponding .sub file must contain the line:[1]

{0}{25}Hello!

The duration of the text being displayed depends on the frame rate of the corresponding video file. For example, if the frame rate of the corresponding video file is 25 frames per seconds and the subtitle file in last example is accompanied with, "Hello!" is displayed for one second.

The font size cannot be configured in .sub files, only in player, but the font style of the subtitle displayed may be changed:

{0}{25}{y:i}Hello!

"Hello!" is displayed in italic.

{0}{25}{y:b}Hello!

"Hello!" is displayed in bold.

{0}{25}{y:u}Hello!

"Hello!" is underlined.

{0}{25}{y:s}Hello!

"Hello!" is stroked.

{0}{25}{C:$0000ff}Hello!

"Hello!" is displayed in red. The color format is: $BBGGRR (8 bits blue, 8 bits green and 8 bits red). Note that this is not standard RGB color model.

Example

{1}{1}25.000
{2447}{2513}You should come to the Drama Club, too.
{2513}{2594}Yeah. The Drama Club is worried|that you haven't been coming.
{2603}{2675}I see. Sorry, I'll drop by next time.


SUB - SubViewer

Official website:

Wikipedia:

What is ?

Format specifications

Format specifications:

Example

[INFORMATION] Пожалуйста спаси мою землю
[AUTHOR] Silvan Elf
[SOURCE] Please Save My Earth.
[PRG] 1
[FILEPATH] 
[DELAY] 
[CD TRACK] 1
[COMMENT]  Перевод с английского.
[END INFORMATION]
[SUBTITLE]
[COLF]&HFFFFFF,[STYLE]no,[SIZE]18,[FONT]Arial
00:00:19.49,00:00:21.55
 Хочу домой.
00:00:22.66,00:00:25.75
Я раньше никогда не была в месте [br]Где воздух такой...
00:00:26.66,00:00:28.13
 грязный.
 



00:59:07.21,00:59:08.84
Я хочу поговорить с тобой.

00:59:08.91,00:59:10.11
Так ты умеешь летать, верно?

SUB - VobSub

Official website:

Wikipedia:

What is ?

Format specifications

Format specifications:

Example

TMP - TMPlayer

Official website:

Wikipedia:

What is TMP

Format specifications

Format specifications:

TMPlayer subtitles appear to come in five varieties:

time-base 00:00:00:

00:00:50:This is the Earth at a time|when the dinosaurs roamed...
00:00:53:
00:00:54:a lush and fertile planet.
00:00:56:

time-base 0:00:00:

0:00:50:This is the Earth at a time|when the dinosaurs roamed...
0:00:53:
0:00:54:a lush and fertile planet.
0:00:56:

time-base 00:00:00=

00:00:50=This is the Earth at a time|when the dinosaurs roamed...
00:00:53=
00:00:54=a lush and fertile planet.
00:00:56=

time-base 0:00:00=

0:00:50=This is the Earth at a time|when the dinosaurs roamed...
0:00:53=
0:00:54=a lush and fertile planet.
0:00:56=

and multiline time-base 00:00:00,1=

00:00:50,1=This is the Earth at a time
00:00:50,2=when the dinosaurs roamed...
00:00:53,1=
00:00:54,1=a lush and fertile planet.
00:00:56,1=

Example

TTS

Official website:

Wikipedia:

What is ?

Format specifications

Format specifications:

Example

TXT

TXT - QTtext

Official website:

Wikipedia:

What is ?

Format specifications

Format specifications:

Example

{QTtext}{font: Arial}{justify: center}{size:  12}{backcolor:0, 0, 0} 
{timescale: 100}{width: 439}{height: 0}

[00:00:05.71]
{justify:center}README.TXT for MAGpie 
[00:00:07.03]
{justify:center}Please read this entire document before installing MAGpie.
[00:00:14.98]
{justify:center}*****************
MAGpie 1.0
***************** 

[00:00:15.99]
{justify:center}-- SYSTEM REQUIREMENTS
[00:00:16.83]
{justify:center}1. Windows95/98
[00:00:18.43]
{justify:center}2. Microsoft Internet Explorer 4 or higher (http://www.microsoft.com)


USF (Universal Subtitle Format)

Official website:

Wikipedia: https://en.wikipedia.org/wiki/Universal_Subtitle_Format

What is Universal Subtitle Format

Universal Subtitle Format (USF) is a CoreCodec project to create a clean, documented, powerful and easy to use subtitle file format. It is based on XML for flexibility, unicode support, hierarchical system, and ease of administration.

USF subtitles are usually used in Matroska containers.

Format specifications

Format specifications:

Example

WebVTT

Official website:

Wikipedia: https://en.wikipedia.org/wiki/WebVTT

What is WebVTT

WebVTT (Web Video Text Tracks) is a W3C standard for displaying timed text in connection with the HTML5 <track> element.

Format specifications

Format specifications:

Example

WEBVTT

00:11.000 --> 00:13.000
<v Roger Bingham>We are in New York City

00:13.000 --> 00:16.000
<v Roger Bingham>We're actually at the Lucern Hotel, just down the street

00:16.000 --> 00:18.000
<v Roger Bingham>from the American Museum of Natural History

00:18.000 --> 00:20.000
<v Roger Bingham>And with me is Neil deGrasse Tyson

00:20.000 --> 00:22.000
<v Roger Bingham>Astrophysicist, Director of the Hayden Planetarium

00:22.000 --> 00:24.000
<v Roger Bingham>at the AMNH.

00:24.000 --> 00:26.000
<v Roger Bingham>Thank you for walking down here.

00:27.000 --> 00:30.000
<v Roger Bingham>And I want to do a follow-up on the last conversation we did.

00:30.000 --> 00:31.500 align:end size:50%
<v Roger Bingham>When we e-mailed—

00:30.500 --> 00:32.500 align:start size:50%
<v Neil deGrasse Tyson>Didn't we talk about enough in that conversation?

00:32.000 --> 00:35.500 align:end size:50%
<v Roger Bingham>No! No no no no; 'cos 'cos obviously 'cos

00:32.500 --> 00:33.500 align:start size:50%
<v Neil deGrasse Tyson><i>Laughs</i>

00:35.500 --> 00:38.000
<v Roger Bingham>You know I'm so excited my glasses are falling off here.


XSS - XombieSubs

Official website: http://xombie.soldats.net/

Wikipedia:

What are XombieSubs?

XombieSub is the name of a subtitling application and a subtitle format.

The application is written in legacy Visual Basic. It doesn't seem to work on all computers, for unknown reasons.

The format is mostly a variation of ASS, and XombieSub and ASS files are much alike.

Format specifications

Format specifications:

Example

ZEG - ZeroG

Official website:

Wikipedia:

What is ?

Format specifications

Format specifications:

Example