Skip to content
Novus Examples
csv200 B

CSV — Cue Timing Report

Per-cue timings and text metrics for the shared cue list, as a caption QC tool would export them: start, end, duration, line count and character count. Useful as the expected output when testing a caption analyser, and as a quick way to check reading-rate calculations against known values.

Preview — first 7 linescsv
index,start_seconds,end_seconds,duration_seconds,lines,characters
1,1.000,3.000,2.000,1,35
2,3.500,6.000,2.500,2,46
3,6.500,9.000,2.500,1,35
4,9.500,12.000,2.500,1,47
5,12.500,15.000,2.500,1,10

Specifications

Rows
5
Columns
6
Column Names
index, start_seconds, end_seconds, duration_seconds, lines, characters
Source
the shared cue list used by every caption fixture in this wave

What is a .csv file?

CSV (Comma-Separated Values) is a plain-text tabular format where rows are lines and fields are separated by commas, with quoting rules for values that contain delimiters, quotes, or newlines. It has no formal type system and depends on encoding and dialect conventions. It is the most portable format for tabular data exchange.

How to use this file

Use an example CSV to test parsers against quoting and embedded-delimiter edge cases, header handling, encoding detection, and import pipelines into databases or spreadsheets.

How to use this file for testing

“CSV — Cue Timing Report” is a deterministic Novus Examples fixture for Subtitle parsing, Video QA, Conversion testing. 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: 5 rows · 6 columns. 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

import pandas as pd

df = pd.read_csv("cue-timings.csv")
print(df.head())
print(df.dtypes)

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