SubRip (.SRT) subtitles support in players


Tested on Windows XP SP3 only Media Player Classic
6.4.9.0
ANSI & UNICODE
Media Player Classic
6.4.9.1 rev. 86
2008-11-15 UNICODE
MPC HomeCinema
1.3.1458.0
32 bit
VLC 0.8.6i VLC 1.0.3 VLC 1.0.5
2010-01-17
0202 Nightly
VLC 1.2.0
2011-06-26
1900 Nightly
The KMPlayer
2.9.4.1435
BS.Player
2.30.970
MPlayer
1.0rc2 GUI
DirectVobSub
(aka VSFilter)
2.39.5.3 [a]
ffdshow [a]
rev. 2364
Windows Media Player
Hide hidden data It doesn't support
SubRip subtitles
Font color 99% Yes [5] 99% Yes [5] 99% Yes [5] 99% Yes [5]
Font face 10/10 6/11 [BUG] 8/9 [11] 10/10
Font size 99% Yes [BUG]
Unicode Partial Partial [BUG] Partial [BUG] Partial [BUG] 99% Yes [0]
A html tag inside another html tag 99% Yes [12]
Font tag with many parameters
Parameters in a INCORRECT way [*] Partial
Bold
Italics
Underline
Strikethrough
Html tags on more than one line
Hide invalid closed html tags [F2] Partial
Don't hide html tags NOT opened [F2] Partial [BUG] [BUG] [BUG] Partial
Support valid html tags NOT closed [F2] Broken [BUG] Broken [BUG] Broken [BUG]
Don't hide invalid html tags NOT closed [F2] Broken [BUG] Broken [BUG] Broken [BUG]
Display without problems these chars: < > [**] 99% Yes 99% Yes [8] 99% Yes [8]
Support for "display coordinates" [F1] , very bad [1]
Support for {\anX}
Display correctly this special case [***]
Display correctly overlapped subtitles Bugged 70% Yes [2] Different
implement.
Hide these tags: {\some_letters_or_numbers_or_chars}
Hide these tags: {Y:some_letters_or_numbers_or_chars}
Show this: {normal text}
Show this: \text
Display correctly a large not-breakable line [BUG] [BUG] Partial [BUG] Partial [10]
Hard space: \h
Forced line break: \N Broken
Trim spaces at the start and at the end of the line
Accept dots instead of commas in timestamps [F3]
Display a sub. line when seeking in the middle of it
Points
Bugs detected by SubRip subtitles bug tester 0/5 0/5 0/5 2/5 [B1] 0/5 0/5 0/5 1/5 [B2] 0/5 0/5 0/5
Read subs inside a OpenDML AVI (GAB2) [4] Broken [9] [BUG] [3]
Read subs inside an AVI 1.0 (GAB2) [3]
Show the name of subtitle tracks in AVI Partial Partial
Show the UTF-16LE name of sub. tracks in AVI 99% Yes [BUG]
Notes
(The quality refers to the readability of the text)
Good quality Good quality Good quality Bad quality Bad quality Bad quality Good quality
New lines lost
sometimes [BUG]
CUT SUBS Almost
good quality
Bad quality,
default size
badly handled
<o_o>

SubRip subtitles capability tester 1.3o by ale5000
Tester for overlapped subtitles in SubRip subtitles 1.2 by ale5000
Tester for dots instead of commas in timestamps 1.0 by ale5000
SubRip subtitles bug tester by ale5000
SubRip subtitles bug tester ALTERNATIVE 1.3b by ale5000
Font face capability tester 1.1e by ale5000

[a] It isn't a player but it allow to insert subtitles in the video track on the fly for players that don't support subtitles
[*] Example: <font color=#ff0000></font> or <font color="ff0000"></font> instead of <font color="#ff0000"></font>
[**] If the parser find a > without first encounter a < (not already part of other < > couples) it is considered as text. If the parser find a < and then another < then re-consider the first as text
[***] This case: <font color="#00FF00" size="6">This could be the <font size="35">m<font color="#000000">o</font>st</font> difficult thing to implement</font>

[0] It isn't supported when subtitles are inside a Multipart OpenDML AVI
[1] [BUG] The presence of "display coordinates" cause the player to recognize timings as text
[2] Fourth text has moved at 00:00:45 of "SubRip subtitles capability tester by ale5000", this also fail: "Tester for overlapped subtitles in SubRip subtitles by ale5000"
[3] It doesn't work when it is set to "Load when needed"
[4] It cause a runtime error in the ANSI build, it is OK in the UNICODE build
[5] It is unable to display this color: #000000 (It should be black)
[8] [BUG #3229] Look at 00:00:14 of "SubRip subtitles capability tester by ale5000", I have tried many times and the behaviour is random, sometime the text doesn't appear at all and sometimes it have a random character at the bottom
[9] [BUG] Multiple subtitles tracks are mixed (when you move the video forward and backward it display a different subtitles track)
[10] It breaks the line
[11] If you change the default font of the player, it isn't used in the case a subtitle choose a font that doesn't exist on the system, example: <font face="Non-existent font">Text</font>
[12] Underline and strikethrough cannot be combined

[B1] Fail with: Subtitles starting at 00:00:00,000, Files without newlines at the end
[B2] Fail with: Only one subtitle line



[F1] Display coordinates (subtitle box pixel coordinates):
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:02,001 --> 00:00:16,001  X1:000 X2:000 Y1:050 Y2:100
Let us have some! Let us have some!


Info:
X1: Subtitle corner X coordinate in pixels (left)
Y1: Subtitle corner Y coordinate in pixels (up)
X2: Subtitle corner X coordinate in pixels (righ)
Y2: Subtitle corner Y coordinate in pixels (down)


[F2] HTML tags:
 1) Closed tags are hidden (both supported and unsupported/invalid), closed tags: <i></i> and <gggg></gggg>
 2) Tags NOT opened are showed as text and ignored (both supported and unsupported/invalid), tags NOT opened: </i> and </gggg>
 3) Tags NOT closed (<i> and <gggg>):  This:
1
00:00:02,001 --> 00:00:16,001
<s>Both line should be strikethrough
but the wrong closing tag should be showed</b>

 Should be displayed like this:
Both line should be strikethrough
but the wrong closing tag should be showed</b>

 Look from 00:01:00 to 00:01:08 of "SubRip subtitles capability tester by ale5000"


[F3] Accept dots instead of commas in timestamps, although the correct one is comma, some subtitles may incorrectly use dots.
 Example:
1
00:04:55.379 --> 00:04:58.006
Text