Difference between revisions of "Cue Times"

From CDOT Wiki
Jump to: navigation, search
(Cue End Timestamp Rule)
(Dale: renamed files)
 
(9 intermediate revisions by one other user not shown)
Line 48: Line 48:
 
|class="header"|'''Peer Review'''
 
|class="header"|'''Peer Review'''
 
|-
 
|-
|cuetime_bareminimum.vtt
+
|tc3200-bare_minimum.test
 
|Bare minimum file that passes (no cue content)
 
|Bare minimum file that passes (no cue content)
 
|Pass
 
|Pass
Line 56: Line 56:
 
|09/27 by Vince
 
|09/27 by Vince
 
|-
 
|-
|cuetime_bareminimum_content.vtt
+
|tc3201-bare_minimum_content.test
 
|Bare minimum file that passes (cue content)
 
|Bare minimum file that passes (cue content)
 
|Pass
 
|Pass
Line 64: Line 64:
 
|09/27 by Vince
 
|09/27 by Vince
 
|-
 
|-
|cuetime_highestvalues.vtt
+
|tc3202-highest_values.test
 
|Highest legal values allowed in time stamps
 
|Highest legal values allowed in time stamps
 
|Pass
 
|Pass
Line 72: Line 72:
 
|09/27 by Vince   
 
|09/27 by Vince   
 
|-
 
|-
|cuetime_spacetabs.vtt
+
|tc3203-space_tabs.test
 
|Lots of tab/space chars between timestamps and "-->"
 
|Lots of tab/space chars between timestamps and "-->"
 
|Pass
 
|Pass
Line 80: Line 80:
 
|09/27 by Vince
 
|09/27 by Vince
 
|-
 
|-
|cuetime_tabs.vtt
+
|tc3204-tabs.test
 
|Using tab characters instead of space characters
 
|Using tab characters instead of space characters
 
|Pass
 
|Pass
Line 88: Line 88:
 
|09/27 by Vince  
 
|09/27 by Vince  
 
|-
 
|-
|cuetime_hours.vtt
+
|tc3205-hours.test
 
|Includes optional hours characters in timestamps
 
|Includes optional hours characters in timestamps
 
|Pass
 
|Pass
Line 96: Line 96:
 
|09/27 by Vince  
 
|09/27 by Vince  
 
|-
 
|-
|cuetime_multicues.vtt
+
|tc3206-multicues.test
 
|The second cue's start time and the first cue's end time are the same
 
|The second cue's start time and the first cue's end time are the same
 
|Pass
 
|Pass
Line 104: Line 104:
 
|09/27 by Vince  
 
|09/27 by Vince  
 
|-
 
|-
|cuetime_nestedcues.vtt
+
|tc3207-nestedcues.test
 
|Some cue times are nested within another cue
 
|Some cue times are nested within another cue
 
|Pass
 
|Pass
Line 112: Line 112:
 
|09/27 by Vince  
 
|09/27 by Vince  
 
|-
 
|-
|cuetime_overlappingcues.vtt
+
|tc3208-overlappingcues.test
 
|There is overlap time between the two cues
 
|There is overlap time between the two cues
 
|Pass
 
|Pass
Line 209: Line 209:
 
'''TODO:''' Break hour, see if days work, create multiple cue times that don't make sense (first cue at 2 minutes, second at 1 minute)
 
'''TODO:''' Break hour, see if days work, create multiple cue times that don't make sense (first cue at 2 minutes, second at 1 minute)
  
=== Deva (Thevakaran) ===
+
=== Deva ===
 
Writing some test cases that not covered by Dale or Vince
 
Writing some test cases that not covered by Dale or Vince
 
{| border="1"
 
{| border="1"
Line 221: Line 221:
 
|class="header"|'''Peer Review'''
 
|class="header"|'''Peer Review'''
 
|-
 
|-
|cuetime_minute_BAD.vtt
+
|[https://github.com/gobihun/webvtt/blob/master/test/spec/bad/TC3100_cuetime_minute_BAD.test TC3100_cuetime_minute_BAD.test]
 
|Minute should have only two characters in the range U+0030 to U+0039.
 
|Minute should have only two characters in the range U+0030 to U+0039.
 
|Fail
 
|Fail
Line 229: Line 229:
 
|
 
|
 
|-
 
|-
|cuetime_socond_BAD.vtt
+
|[https://github.com/gobihun/webvtt/blob/master/test/spec/bad/TC3101_cuetime_second_BAD.test TC3101_cuetime_socond_BAD.test]
 
|Second should have only two characters in the range U+0030 to U+0039.
 
|Second should have only two characters in the range U+0030 to U+0039.
 
|Fail
 
|Fail
Line 237: Line 237:
 
|
 
|
 
|-
 
|-
|cuetime_timestamp_tag.vtt
+
 
|Start time can be changed by time stamp tagging.
+
|[https://github.com/gobihun/webvtt/blob/master/test/spec/bad/TC3100_cuetime_spacetab_BAD.test TC3102_cuetime_spacetab_BAD.test]
|Pass
+
|Between timestamp and '-->' should have one or more white space/s.
|[http://edutechwiki.unige.ch/en/WebVTT#Karaoke_style_cues EduTech Wiki WebVTT - Time Stamp Tag]
+
|Fail
 +
|W3C WebVTT Standard - Explained in 3.1 Syntax
 
|
 
|
 
|
 
|
 
|
 
|
 
|-
 
|-
|cuetime_timestamp_tag_BAD01.vtt
+
 
|Time stamp tag can not less or equal to start time stamp
+
|[https://github.com/gobihun/webvtt/blob/master/test/spec/bad/TC3100_cuetime_starttime_BAD.test TC3103_cuetime_starttime_BAD.test]
 +
|Start time must be greater than last cue start time.
 
|Fail
 
|Fail
|
+
|W3C WebVTT Standard - Explained in 3.1 Syntax
 
|
 
|
 
|
 
|
 
|
 
|
 
|-
 
|-
 +
 
|}
 
|}
  
Line 280: Line 283:
 
* one U+003A COLON character (:) only if the hour is zero and not included, if not, two U+003A COLON character (:).
 
* one U+003A COLON character (:) only if the hour is zero and not included, if not, two U+003A COLON character (:).
 
3. Optionally (required if hour is non-zero) include  
 
3. Optionally (required if hour is non-zero) include  
* Hour - two or more characters in the range U+0030 DIGIT ZERO (0) to U+0039 DIGIT NINE (9)
+
* Hour - one or more characters in the range U+0030 DIGIT ZERO (0) to U+0039 DIGIT NINE (9)
 
4. Should include  
 
4. Should include  
 
* Minute - 2 characters in the range of U+0030 DIGIT ZERO (0) to U+0039 DIGIT NINE (9). Range 00 to 59.
 
* Minute - 2 characters in the range of U+0030 DIGIT ZERO (0) to U+0039 DIGIT NINE (9). Range 00 to 59.
Line 305: Line 308:
 
: SS - Second (2 character)
 
: SS - Second (2 character)
 
: sss - Millisecond (3 character)
 
: sss - Millisecond (3 character)
 
=== Cue Tag Timestamp Rules ===
 
* The cue tag timestamp must be greater than start timestamp.
 
* The cue tag timestamp must be less than end timestamp.
 
  
 
=== Cue Start Timestamp Rule ===
 
=== Cue Start Timestamp Rule ===

Latest revision as of 22:40, 30 September 2012

Group Members

  • Vince Lee
  • Thevakaran Virutthasalam
  • Dale Karp

Test Ideas

  • Syntax
  • Single cue tests
    • Times out of order
  • Multiple cue tests
    • Nested cues
    • Overlapping cues
    • Cue times out of order

Testing Procedure

Writing Tests

  1. Check if the test you have in mind exists already in the wiki
  2. If not, write your test case file
  3. When you finish writing, document the test case in the wiki ASAP so you don't forget!
  4. Commit your test case to the github repo

Peer Review

  1. Review someone else's test case
  2. Sign off in the 'Peer Review' column of the table with your name so that we know it's been looked at (TO DO: Create Peer Review column in tables)

Cue Time Syntax Rules

  1. A WebVTT timestamp representing the start time offset of the cue. The time represented by this WebVTT timestamp must be greater than or equal to the start time offsets of all previous cues in the file.
  2. One or more U+0020 SPACE characters or U+0009 CHARACTER TABULATION (tab) characters.
  3. The string "-->" (U+002D HYPHEN-MINUS, U+002D HYPHEN-MINUS, U+003E GREATER-THAN SIGN).
  4. One or more U+0020 SPACE characters or U+0009 CHARACTER TABULATION (tab) characters.
  5. A WebVTT timestamp representing the end time offset of the cue. The time represented by this WebVTT timestamp must be greater than the start time offset of the cue.

Tests

TC3000 - TC3099: Dale

TC3100 - TC3199: Deva

TC3200 - TC3299: Vince

Dale

URL to git repo with tests: https://github.com/daliuss/webvtt/tree/master/test/spec

Filename Description Should Pass / Fail? Reasoning Creation Note Comments Peer Review
tc3200-bare_minimum.test Bare minimum file that passes (no cue content) Pass Conforms to spec (section 3.1 in W3C draft) ST2 09/27 by Vince
tc3201-bare_minimum_content.test Bare minimum file that passes (cue content) Pass Conforms to spec (section 3.1 in W3C draft) ST2 Should the content be there or is someone else testing this? 09/27 by Vince
tc3202-highest_values.test Highest legal values allowed in time stamps Pass Conforms to spec (section 3.1 in W3C draft) ST2 Can hours go to 3 digits? I think it can. 09/27 by Vince
tc3203-space_tabs.test Lots of tab/space chars between timestamps and "-->" Pass Conforms to spec (section 3.1 in W3C draft) ST2 09/27 by Vince
tc3204-tabs.test Using tab characters instead of space characters Pass Conforms to spec (section 3.1 in W3C draft) ST2 Should the comment be there? 09/27 by Vince
tc3205-hours.test Includes optional hours characters in timestamps Pass Conforms to spec (section 3.1 in W3C draft) ST2 09/27 by Vince
tc3206-multicues.test The second cue's start time and the first cue's end time are the same Pass Conforms to spec (section 3.1 in W3C draft) ST2 09/27 by Vince
tc3207-nestedcues.test Some cue times are nested within another cue Pass Conforms to spec (section 3.1 in W3C draft) ST2 Thank you for testing this! I'll make a broken one later. 09/27 by Vince
tc3208-overlappingcues.test There is overlap time between the two cues Pass Conforms to spec (section 3.1 in W3C draft) ST2 09/27 by Vince

Vince

I'm gonna remake the table using markdown. Hitting <td></td> is tedious

Filename Description Should Pass / Fail? Reasoning Creation Note Comments Peer Review
tc3201.test 00:00.000 --> 00:00.000 Fail End timestamp must be greater than start timestamp Dale, Sept 26 2012
tc3202.test 00:00.001 --> 00:00.000 Fail End timestamp must be greater than start timestamp Dale, Sept 26 2012
tc3203.test 00:00.000 00:00.001 Fail Timestamp separator not found Took out the --> Dale, Sept 26 2012
tc3204.test 00:00.0000 --> 00:00.001 Fail Milliseconds must be 3 digits Dale, Sept 26 2012
tc3205.test 00:000.000 --> 00:00.001 Fail Seconds should be 2 digits Dale, Sept 26 2012
tc3206.test 000:00.000 --> 00:00.001 Fail Minutes should be 2 digits Dale, Sept 26 2012
tc3207.test 00:0:00:00.000 --> 00:0:00:00.001 Fail No support for days Not that hours can go for a VERY long time, I tried up to 2 billion
tc3208.test :00:00.000 --> 00:00.001 Fail Time stamp must start with a number Could do a lot of test cases for this using every symbol/alphabet
tc3209.test 00:01.000 --> 00:01.001

00:00.000 --> 00:00.001
Fail Second time stamp must be greater or in-between the first one (nested) Look up nested cues

TODO: Break hour, see if days work, create multiple cue times that don't make sense (first cue at 2 minutes, second at 1 minute)

Deva

Writing some test cases that not covered by Dale or Vince

Filename Description Should Pass / Fail? Reasoning Creation Note Comments Peer Review
TC3100_cuetime_minute_BAD.test Minute should have only two characters in the range U+0030 to U+0039. Fail W3C WebVTT Standard - Explained in 3.1 Syntax
TC3101_cuetime_socond_BAD.test Second should have only two characters in the range U+0030 to U+0039. Fail W3C WebVTT Standard - Explained in 3.1 Syntax
TC3102_cuetime_spacetab_BAD.test Between timestamp and '-->' should have one or more white space/s. Fail W3C WebVTT Standard - Explained in 3.1 Syntax
TC3103_cuetime_starttime_BAD.test Start time must be greater than last cue start time. Fail W3C WebVTT Standard - Explained in 3.1 Syntax

Summary

Cue Timestamp - Minimum Requirement

  • Starting "WEBVTT" title
  • Two or more WEBVTT line breakers
  • Cue start time
  • One or more U+0020 SPACE characters or U+0009 TABULATION characters
  • The string "-->" (U+002D HYPHEN-MINUS, U+002D HYPHEN-MINUS, U+003E GREATER-THAN SIGN).
  • One or more U+0020 SPACE characters or U+0009 TABULATION characters
  • Cue end time
WEBVTT

00:00.000 --> 05:00.000


Cue Timestamp Rules

1. Should start with any characters in the range of U+0030 DIGIT ZERO (0) to U+0039 DIGIT NINE (9)

2. Can not have any characters other than

  • U+0030 DIGIT ZERO (0) to U+0039 DIGIT NINE (9).
  • one U+002E FULL STOP character (.).
  • one U+003A COLON character (:) only if the hour is zero and not included, if not, two U+003A COLON character (:).

3. Optionally (required if hour is non-zero) include

  • Hour - one or more characters in the range U+0030 DIGIT ZERO (0) to U+0039 DIGIT NINE (9)

4. Should include

  • Minute - 2 characters in the range of U+0030 DIGIT ZERO (0) to U+0039 DIGIT NINE (9). Range 00 to 59.
  • Second - 2 characters in the range of U+0030 DIGIT ZERO (0) to U+0039 DIGIT NINE (9). Range 00 to 59.
  • Millisecond - 3 characters in the range of U+0030 DIGIT ZERO (0) to U+0039 DIGIT NINE (9). Range 000 to 999.

5. U+003A COLON character (:) should be used to separate

  • Hours and Minute
  • Minute and second

6. U+002E FULL STOP character (.) should be used between second and millisecond


Timestamp format without hour

MM:SS.sss

Timestamp format with hour

HH:MM:SS.sss
HH - Hour (1 or more characters)
MM - Minute (2 character)
SS - Second (2 character)
sss - Millisecond (3 character)

Cue Start Timestamp Rule

  • The cue start timestamp must be greater or equal to last cue start time (Applicable only if there are any previous cue time stamps available)

Cue End Timestamp Rule

  • The cue end timestamp must be greater than start time