h-lab/docs/superpowers/specs
hehihoho3@gmail.com 8178d45209 feat(rework): speech-gap trimming + render, language override
Phase 3: remove "no-talk" gaps (Whisper-segment based, not audio silencedetect
which finds nothing under background music) and render a trimmed (+speed) video
via ffmpeg, with subtitles remapped to match.

- KeepIntervalPlanner + TimelineRemapper (pure, unit-tested): keep/remove plan
  from segments (pad/minGap) and timestamp remap f(t)=t-removedBefore(t)
- GET /{id}/trim-plan (preview: keep/remove/remapped segments/kept duration)
- POST /{id}/render (multipart: file,pad,minGap,speed) -> proxy Python /render
  (ffmpeg trim/atrim+concat+atempo) -> mp4 download; ffmpeg graph validated locally
- rework.html: export panel (speed + speech-gap trim preview + SRT/video export),
  client-side SRT from working segments, language selector (auto/ko/en/zh/ja)
- transcribeFromFile forwards optional language (Whisper auto-detect misfired -> zh)

Spec updated with the audio-silence -> speech-gap design correction.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-12 16:53:32 +09:00
..
2026-05-30-dashboard-fullset-design.md docs: add dashboard full-set enhancement spec 2026-05-30 22:02:10 +09:00
2026-05-30-discovery-page-design.md docs: add discovery page design spec 2026-05-30 21:44:13 +09:00
2026-05-31-all-pages-design-uplift-design.md docs: add all-pages design/UX uplift spec 2026-05-31 00:18:42 +09:00
2026-06-12-subtitle-timeline-studio-design.md feat(rework): speech-gap trimming + render, language override 2026-06-12 16:53:32 +09:00