feat: Add YouTube caption import and export#303
Conversation
Add YouTube TimedText XML and word-timestamped VTT conversion for the editor so automatic caption files preserve per-word timing when imported and can be exported from the transcript view. Refs hyperaudio#160 Co-Authored-By: Codex <noreply@openai.com>
|
Nice coverage for the YouTube captions half of #160. One small import-path robustness issue I noticed:
Could you add a guard before mutating |
Show the transcript-view alert when the YouTube caption import controls are used without the transcript or VTT track mounted. This avoids throwing after a caption file is selected while keeping the normal import path unchanged. Refs hyperaudio#160 Co-Authored-By: Codex <noreply@openai.com>
|
Thanks for the review. I pushed Validation run:
|
|
Follow-up review-assist pass for #160 / PR #303 after the Thanks for adding the transcript-view guard and smoke notes. I re-read the current diff and the remaining risk looks less like UI wiring now and more like converter round-trip correctness across YouTube caption variants:
No live service call is needed here; these can stay as offline fixture tests around |
Add YouTube automatic captions import/export support for issue #160.
The editor now parses word-timestamped YouTube WebVTT and SRV3/TimedText XML into the existing timed transcript spans, preserving per-word timing instead of distributing full cue timings across words.
YouTube Caption Formats
Adds a pure converter for inline VTT timestamps and YouTube XML
<p>/<s>and<text>shapes, plus export helpers that write word-timestamped VTT and XML from the current transcript.Editor Menu
Adds File menu entries for YouTube VTT/XML export and YouTube caption import alongside the existing Hyperaudio, SRT, VTT, and Deepgram actions.
Validated locally with the converter unit test, JavaScript syntax checks, diff whitespace check, and a browser smoke check.
Refs #160