Josh Knapp 415a648a2b Phase 4: Export to SRT, WebVTT, ASS, plain text, and Markdown
- Implement ExportService using pysubs2 for caption formats (SRT, VTT, ASS)
  and custom formatters for plain text and Markdown
- SRT exports with [Speaker]: prefix, WebVTT with <v Speaker> voice tags,
  ASS with color-coded speaker styles
- Plain text groups by speaker with labels, Markdown adds timestamps
- Add export.start IPC handler and export_transcript Tauri command
- Add export dropdown menu in header (appears after transcription)
- Uses native save dialog for output file selection
- Add pysubs2 dependency
- Tests: 30 Python (6 export tests), 6 Rust, 0 Svelte errors

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-26 16:18:54 -08:00

Voice to Notes

A desktop application that transcribes audio/video recordings with speaker identification, producing editable transcriptions with synchronized audio playback.

Goals

  • Speech-to-Text Transcription — Accurately convert spoken audio from recordings into text
  • Speaker Identification (Diarization) — Detect and distinguish between different speakers in a conversation
  • Speaker Naming — Assign and persist speaker names/IDs across the transcription
  • Synchronized Playback — Click any transcribed text segment to play back the corresponding audio for review and correction
  • Export Formats
    • Closed captioning files (SRT, VTT) for video
    • Plain text documents with speaker labels
  • AI Integration — Connect to AI providers to ask questions about the conversation and generate condensed notes/summaries

Platform Support

Platform Status
Linux Planned (initial target)
Windows Planned (initial target)
macOS Future (pending hardware)

Project Status

Early planning phase — Architecture and technology decisions in progress.

License

MIT

Description
Convert recorded audio to text with speaker identifying and text to audio scrubbing
Readme MIT 393 KiB
Languages
Python 40.2%
Rust 28.6%
Svelte 25.6%
TypeScript 3.7%
Shell 0.9%
Other 1%