Skip to content

About

Cross-language subtitle re-timing in Rust — sync ID subs against an EN reference via text embeddings (no audio). Honest confidence + refusal. Design phase.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

subtitle-rust

Cross-language subtitle re-timing tool in Rust. Takes an Indonesian subtitle whose timing is wrong and re-times it against an English reference subtitle of the same film — purely by comparing text content via ONNX text embeddings (no audio).

One core promise: when the tool isn't confident about the alignment, it refuses and says so instead of writing a wrong result. Honest failure beats silent corruption.

Status

Design phase — planning, research, and design documents only. No implementation yet.

  • docs/design/DESIGN.md — full technical design
  • PROMPT-ALL-IN-ONE.md / PROMPT-*.md — research prompts distilled from the design discussion
  • RESEARCH-EMBEDDING-MODEL.md — embedding model evaluation
  • .planning/ — roadmap, requirements, and phase notes

Planned features (v0.1)

  • Byte-exact round-trip parsing for SRT, ASS/SSA, WebVTT, MicroDVD (only timestamp bytes are touched)
  • multilingual-e5-small INT8 ONNX embeddings (384-d) on CPU — a full film in seconds on modest hardware
  • Alignment pipeline: CSLS hub suppression → Hough-RANSAC coarse corridor → PAMO-DP → robust BIC model selection
  • Confidence scoring + hard refusal on low confidence
  • CLI (sync with dry-run / JSON / undo) + localhost web UI
  • Single portable Windows exe, side-by-side onnxruntime.dll

About

Cross-language subtitle re-timing in Rust — sync ID subs against an EN reference via text embeddings (no audio). Honest confidence + refusal. Design phase.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors