SYL File Format Specification

 

Version 1.0 – Date: August 29th, 2010

Revision     - Date: August 4th, 2011

 

Introduction

SYL stands for Syllable. SYL file is a file that contains the syllable information of karaoke lines as well as the lines' timings, one of the most commonly used SYL file type is the karaoke-timed ASS file (or simply say, k file). Though, by following the basic concepts of SYL file we can make a different one from k-timed ASS file, we will not do it in the near future, since there is no need to recreate the wheel. The default filename extension of SYL file is _K.ASS (instead of .SYL)

 

 

Detail

A general example of SYL file format:

 

 

[Script Info]

; This script is generated by TCAX

; Welcome to our homepage tcax.rhacg.com

ScriptType: v4.00+

Collisions:Normal

PlayResX:800

PlayResY:600

Timer:100.0000

 

[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: TCMS,黑体,36,&H00FFFFFF,&HFF8000FF,&H00E8BF00,&HFFFFFFFF,0,0,0,0,100,100,0,0,0,2,0,5,15,15,10,1

Style: TCPS,Arial,1,&HFFFFFFFF,&HFFFFFFFF,&HFFFFFFFF,&HFFFFFFFF,0,0,0,0,100,100,0,0,0,0,0,7,0,0,0,1

 

[Events]

Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text

Dialogue: 0,0:00:10.63,0:00:12.83,TCMS,NTP,0000,0000,0000,,{\k36}Please {\k36}don't {\k39}say {\k28}"you {\k27}are {\k54}lazy"

Dialogue: 0,0:00:13.10,0:00:15.45,TCMS,NTP,0000,0000,0000,,{\k38}{\k17}{\k30}{\k37}{\k37}{\k31}{\k29}cra{\k16}zy

Dialogue: 0,0:00:15.73,0:00:20.91,TCMS,NTP,0000,0000,0000,,{\k50}{\k39}{\k30}{\k32}{\k27}{\k25}{\k31}{\k13} {\k13}{\k12}{\k12}{\k19}{\k18}{\k34}{\k33}{\k16}{\k12}{\k20}{\k20}{\k11}{\k20}{\k18}{\k13}

Dialogue: 0,0:00:21.16,0:00:26.13,TCMS,NTP,0000,0000,0000,,{\k30}{\k45}{\k29}{\k39}{\k30}{\k0} {\k37}{\k60}{\k0} {\k32}{\k39}{\k24}{\k43}{\k23}{\k45}{\k21}

Dialogue: 0,0:00:26.36,0:00:31.59,TCMS,NTP,0000,0000,0000,,{\k53}{\k57}{\k20}{\k25}{\k20}{\k66}{\k0}{\k13} {\k12}{\k21}{\k20}{\k15}{\k15}{\k26}{\k37}{\k28}{\k22}{\k7}{\k10}{\k14}{\k18}{\k18}{\k19}

Dialogue: 0,0:00:36.76,0:00:39.31,TCMS,NTP,0000,0000,0000,,{\k31}{\k60}{\k17}{\k19}{\k13}{\k22}{\k13}{\k18}{\k45}{\k17}

Dialogue: 0,0:00:39.34,0:00:42.07,TCMS,NTP,0000,0000,0000,,{\k10}{\k11}{\k16}{\k11}{\k49}{\k47}{\k23}{\k13}{\k18}{\k15}{\k33}{\k25}

Dialogue: 0,0:00:47.15,0:00:52.03,TCMS,NTP,0000,0000,0000,,{\k26}{\k42}{\k0} {\k43}{\k36}{\k35}{\k79}{\k0} {\k23}{\k22}{\k22}{\k20}{\k24}{\k32}{\k38}{\k46}

Dialogue: 0,0:00:52.31,0:00:56.27,TCMS,NTP,0000,0000,0000,,{\k41}{\k37}{\k19}{\k62}{\k23}{\k30}{\k37}{\k29}{\k29}{\k36}{\k53}

Dialogue: 0,0:00:57.47,0:01:02.65,TCMS,NTP,0000,0000,0000,,{\k48}{\k16}{\k27}{\k19}{\k34}{\k36}{\k95}{\k14} {\k29}{\k25}{\k37}{\k25}{\k37}{\k36}{\k40}

Dialogue: 0,0:01:02.94,0:01:08.83,TCMS,NTP,0000,0000,0000,,{\k46}{\k49}{\k62}{\k55}{\k38}{\k25}{\k8}{\k17}{\k0} {\k14}{\k32}{\k31}{\k56}{\k78}{\k17}{\k61}

Dialogue: 0,0:01:09.45,0:01:11.80,TCMS,NTP,0000,0000,0000,,{\k58}Please {\k28}don't {\k34}say {\k39}\"you {\k27}are {\k49}lazy\"

Dialogue: 0,0:01:12.07,0:01:14.64,TCMS,NTP,0000,0000,0000,,{\k35}{\k25}{\k33}{\k34}{\k34}{\k34}{\k32}cra{\k30}zy

Dialogue: 0,0:01:14.83,0:01:19.91,TCMS,NTP,0000,0000,0000,,{\k49}{\k20}{\k16}{\k65}{\k22}{\k27}{\k31}{\k0} {\k20}{\k20}{\k13}{\k16}{\k13}{\k35}{\k14}{\k18}{\k20}{\k14}{\k29}{\k15}{\k21}{\k16}{\k14}

Dialogue: 0,0:01:19.97,0:01:25.31,TCMS,NTP,0000,0000,0000,,{\k65}{\k36}{\k29}{\k23}{\k43}{\k33}{\k67}{\k0} {\k34}{\k36}{\k32}{\k30}{\k38}{\k41}{\k27}

Dialogue: 0,0:01:25.38,0:01:27.51,TCMS,NTP,0000,0000,0000,,{\k58}{\k31}{\k30}{\k39}{\k19}{\k30}{\k6}

Dialogue: 0,0:01:27.68,0:01:30.63,TCMS,NTP,0000,0000,0000,,{\k25}{\k23}{\k19}{\k27}{\k28}{\k21}{\k13}{\k14}{\k21}{\k16}{\k16}{\k16}{\k16}{\k14}{\k26}

 

 

Constraints of k-timed ASS file.

 

1.    Texts before Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text will be ignored or regarded as ASS header according to the option chosen by the user. Text lines after Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text whose character count is less than 50 or without a slash ‘\’ will also be ignored.

2.    Time string has the following pattern hour:minute:second.millisecond. Before the Start time, there should be one and only one ‘,’. Between the Start time and the End time, there should be one and only one ‘,’. Right after the End time, there should be one ‘,’.

3.    Right before the Effect and Text part, there should be one and only one ‘,,’.

4.    In the Effect part, only the ‘\k’ and ‘\K’ ASS tag is permitted. And it should be put in a pair of bracket ‘{}’, note that no white space is allowed in such as ‘{\k50}’. ‘{’ and ‘}’ can only appear in pairs, and cannot be nested. There should be at least one ‘\k’ (or ‘\K’) tag in each valid SYL line. And the first k tag should come before the first text.