Skip to content
Novus Examples
srt247 B

SRT — Emoji and combining marks

Characters above the Basic Multilingual Plane, a composed/decomposed accent pair, and a zero-width-joiner sequence. Anything that measures caption length in UTF-16 code units rather than graphemes miscounts these.

Preview — first 12 linessrt
1
00:00:01,000 --> 00:00:03,000
Astral plane: 🎬 🎞️ 📺

2
00:00:03,500 --> 00:00:06,000
Combining marks: éé (composed vs decomposed)

3
00:00:06,500 --> 00:00:09,000
Family ZWJ sequence: 👩‍👩‍👧‍👦 counts as one grapheme

Specifications

Encoding
UTF-8
Script
Emoji and combining marks
Cues
3
Direction
LTR

What is a .srt file?

SRT (SubRip) is a plain-text subtitle format listing numbered cues, each with a start and end timecode and one or more lines of text. It is simple, human-readable, and extremely widely supported by players. It carries no styling metadata beyond basic inline tags.

How to use this file

Use an example SRT to test subtitle parsing, timecode handling, and converters that translate between SRT and WebVTT or other caption formats.

How to use this file for testing

“SRT — Emoji and combining marks” is a deterministic Novus Examples fixture for Caption encoding, Subtitle parsing, Video QA. The same cue list written with a UTF-8 BOM, without one, in UTF-16, with CRLF and with bare LF, plus non-Latin scripts and right-to-left text — for finding the parser that assumed captions are always LF-terminated ASCII.

Documented properties for this file: 3 cues · UTF-8. 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.

Code examples

<video controls src="clip.mp4">
  <track kind="captions" srclang="en" label="English" src="script-emoji.srt" default>
</video>

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