Skip to content

Tabbed export: video, audio, transcript, and subtitles - #50

Merged
wassgha merged 1 commit into
mainfrom
cursor/tabbed-export-modal-e457
Jul 31, 2026
Merged

wassgha merged 1 commit into
mainfrom
cursor/tabbed-export-modal-e457

Conversation

@wassgha

@wassgha wassgha commented Jul 31, 2026 •

Copy link
Copy Markdown
Owner

Summary

Revisits the unmerged transcript export work from #29, but folds everything into the existing Export dialog as tabs instead of a separate transcript toolbar button.

Export tabs

  • Video — current ffmpeg cut/concat flow, plus format (MP4 / WebM) and resolution (Original / 720p / 1080p / 4K). Disabled for audio-only projects.
  • Audio — export edited audio as M4A, MP3, or WAV (works for video projects too when an audio track exists).
  • Transcript — plain text or Markdown (speaker-labeled turns, cuts removed, no timestamps).
  • Subtitles — SRT, VTT, or JSON. SRT/VTT omit cuts and remap onto the edited timeline; JSON keeps the full word list for re-import (same semantics as Add SRT / VTT / JSON transcript export #29).

Implementation notes

  • New lib/serializeTranscript.ts (+ tests in tests/serialize-transcript-test.ts)
  • exportVideo / exportAudio accept format (and resolution for video); scale never upscales past the source
  • No dedicated transcript Export control in the transcript toolbar — single export entry point

UI

Video export tab
Audio export tab
Transcript export tab
Subtitles export tab
Video tab disabled on audio project

Test plan

  • npx tsx tests/serialize-transcript-test.ts
  • npx tsx tests/parse-transcript-test.ts
  • npm run lint (no new errors)
  • Video project: Export modal shows format + resolution controls
  • Audio-only project: Video tab disabled with tooltip; Audio export options work
  • Transcript / Subtitles tabs show format pickers and download
  • Cut words + manual trim → SRT/VTT times match shortened media; TXT/MD omit cut text
  • JSON subtitle export re-imports via the existing Import transcript flow

To show artifacts inline, enable in settings.

Open in Web Open in Cursor 

Unify export in the existing dialog with Video / Audio / Transcript /
Subtitles tabs. Video gains MP4/WebM and resolution options (disabled for
audio-only projects); audio can export M4A/MP3/WAV; transcript downloads
plain text or Markdown; subtitles export SRT, VTT, or JSON with edited
timeline remapping.

Co-authored-by: Wassim Gharbi <wassgha@gmail.com>
@wassgha

wassgha commented Jul 31, 2026

Copy link
Copy Markdown
Owner Author

Supersedes #29

@wassgha
wassgha marked this pull request as ready for review July 31, 2026 02:01
@wassgha
wassgha merged commit 781fd94 into main Jul 31, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants