Skip to content
Novus Examples
sbv253 B

SBV — YouTube Timing Without Cue Indices

SubViewer/SBV as YouTube exports it: no cue indices, a comma rather than an arrow between start and end, and single-digit hours. Superficially similar enough to SubRip that format detection by eye fails, which makes it a good test of sniffing logic — a parser that guesses SubRip from the timestamps then trips on the missing index.

Preview — first 12 linessbv
0:00:01.000,0:00:03.000
SBV has no cue numbers at all

0:00:03.500,0:00:06.000
Times use a comma separator, not an arrow

0:00:06.500,0:00:09.000
Single-digit hours, three-decimal seconds

0:00:09.500,0:00:12.000
[Sound effects use square brackets too]

Specifications

Cues
4
Separator
comma between start and end
Indices
none
Hour Format
single digit
Origin
YouTube caption export

What is a .sbv file?

SBV (.sbv) is the simple caption format used by YouTube's Studio. Each cue is a start,end timestamp line (H:MM:SS.mmm) followed by the caption text, with a blank line between cues. It has no styling — just timings and text.

How to use this file

Use an example .sbv file to test caption parsers, YouTube caption import, and conversion between SBV, SRT, and VTT.

How to use this file for testing

“SBV — YouTube Timing Without Cue Indices” is a deterministic Novus Examples fixture for Subtitle parsing, Video QA. The same captions across SubRip, WebVTT, ASS/SSA, SBV, and TTML, plus a synced LRC lyric file — for testing subtitle parsers, players, burn-in tools, and format converters against known timings.

Documented properties for this file: 4 cues. Compare results against paired or grouped companions on this page when present (clean↔damaged, searchable↔scanned, or format twins) so scores stay reproducible across runs.

Download the file once, keep the path stable in CI or local scripts, and treat the spec table as the contract: dimensions, seeds, field lists, and roles are intentional. Corrupt or invalid samples are labelled as such — expect parsers to fail loudly rather than silently accept them.

Media fixtures are short and synthetic by design. Prefer waveform or transcript ground truth in the same group when measuring ASR, trim, upscale, or sync tools; do not assume broadcast-quality masters.

Parse the cues and check timings against the documented count; the same captions ship across subtitle formats so you can diff a converter against a known target.

Code examples

<video controls src="clip.mp4">
  <track kind="captions" srclang="en" label="English" src="frame-timecode.sbv" default>
</video>

Generated by generation/video_timedtext.py. Free for any use, no attribution required — license.