Parent: #421
Outcome
Make timed text a first-class static artifact family and extract/convert embedded subtitle streams through bounded local providers.
Initial formats
- SRT
- WebVTT
- ASS/SSA
- TTML
- plain transcript text
- structured timed-transcript JSON
Scope
- Extend format/capability registry with missing timed-text formats.
- Define
renderflow.timed-transcript/v1 with stable cue IDs, start/end times, speaker when known, text, language, source stream, and provenance.
- Add FFprobe-backed stream discovery as an explicit provider capability.
- Add FFmpeg-backed extraction/conversion only for combinations proven by fixtures.
- Distinguish embedded-subtitle extraction from speech recognition.
- Preserve stream/language/codec identity and record lossy conversions.
- Validate monotonic timing, overlap policy, encoding, empty cues, and malformed inputs.
Acceptance criteria
Non-goals
Speech-to-text transcription; that is #428.
Parent: #421
Outcome
Make timed text a first-class static artifact family and extract/convert embedded subtitle streams through bounded local providers.
Initial formats
Scope
renderflow.timed-transcript/v1with stable cue IDs, start/end times, speaker when known, text, language, source stream, and provenance.Acceptance criteria
Non-goals
Speech-to-text transcription; that is #428.