Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion docs/code-map.md
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,9 @@ Where things live in `src/` and what each part calls. Setup and scripts are in t
recorded in fluent-mobile, guarded to Project Managers — the route redirects anyone else and
the drafting header only links it for PMs. `components/AudioReviewPage.tsx` lists a chapter's
takes by verse or pericope (`components/TakeCard.tsx`, `components/AudioPlayer.tsx`), flags
conflicting ones and lets the PM pick the winner. It calls `GET /verse-audio`
conflicting ones and lets the PM pick the winner. For pericopes recorded only by verse,
`components/StitchedAudioPlayer.tsx` and `hooks/useStitchedAudio.ts` sequence active verse takes
into continuous playback. It calls `GET /verse-audio`
(`hooks/useChapterAudio.ts`, which `DraftingUI` also uses for the conflict indicator and review
link) and `POST /verse-audio/:projectUnitId/:bibleTextId/resolve`
(`hooks/useResolveConflict.ts`).
Expand Down
2 changes: 1 addition & 1 deletion docs/features/audio-playback/design.md
Original file line number Diff line number Diff line change
Expand Up @@ -185,7 +185,7 @@ The drafting delivery includes source and reference Bible audio in verse, perico

Translation Notes, Questions, Words, and Open Study Notes remain later delivery. Their concrete controls and article chunking will be decided with that work. The native FIA guide/key-term player now honors the aggregate audio gate and Hide Audio, but it remains outside the shared playback registry. Later resource/FIA work can add app-wide exclusivity and decide whether FIA receives redesigned controls. Audio-only source Bibles are not ruled out by the segment model.

Audio review (take evaluation and conflict resolution) connects to the shared `PlaybackRegistry` for app-wide playback exclusivity: claiming playback immediately pauses any active drafting or resource audio, and subsequent sounding claimants pause the review player. Because take review requires side-by-side comparison of multiple candidate takes for the same verse or pericope with per-take visual waveform progress and fast A/B scrubbing, it retains a lightweight take-comparison player rather than the drafting queue, ScrubBar, and segment-resolution stack.
Audio review (take evaluation and conflict resolution) connects to the shared `PlaybackRegistry` for app-wide playback exclusivity: claiming playback immediately pauses any active drafting or resource audio, and subsequent sounding claimants pause the review player. Because take review requires side-by-side comparison of multiple candidate takes for the same verse or pericope with per-take visual waveform progress and fast A/B scrubbing, it retains a lightweight take-comparison player rather than the drafting queue, ScrubBar, and segment-resolution stack. Similarly, continuous playback of pericopes recorded only by verse uses a dedicated `StitchedAudioPlayer` that sequences active verse recordings within audio review and registers with `PlaybackRegistry`, rather than invoking the full drafting playback engine.

## 16. Current delivery decisions and later follow-ups

Expand Down
Loading
Loading