D
DreamLake

Data

subtitle

W3C WebVTT captions — human-readable timed text. Each cue has a time range and a payload (usually a single line of text).

Chunk format

  • Format: vtt
  • Decoder: textDecoder (returns UTF-8 strings; SubtitleView parses cues on render)

Sample chunk

WEBVTT
 
00:00:00.500 --> 00:00:02.800
Approaching target cup
 
00:00:02.800 --> 00:00:04.200
Closing gripper

Sample m3u8

#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:15
#EXTINF:15.000,
chunk-001.vtt
#EXTINF:15.000,
chunk-002.vtt
#EXT-X-ENDLIST

Compatible timeline lanes

LaneNotes
PillLaneDefault. Renders each cue as an interval pill; cue text becomes the label.

Compatible standalone views

ViewNotes
SubtitleViewDisplays the active cue's text — ideal for overlaying on a video pane.

Default props

FieldValue
textField'text' (the VTT payload field that PillLane reads)

Python generator

WebVTT files are authored outside dreamlake-py — transcription / annotation tools produce them, then register the src:

episode.track(
    "narration/subtitles",
    dtype="subtitle",
    src="s3://my-bucket/episodes/ep1/narration/subtitles/playlist.m3u8",
)

registerDtype override

registerDtype({
  id: 'subtitle',
  name: 'Subtitle',
  defaults: { textField: 'transcription' },  // if your VTT cues use a custom field
})