Spec — Lecture editing

2026-refresh › lecture-editing · feature · created 2026-08-05 · spec · plan.html

Raw takes become finished lectures without Asim editing anything: the two .movs per take (face + screen) are synced, flubs are cut using the pause-and-re-read convention, the script's pointing moments become design-system overlays, audio is levelled, output conforms — and Asim's whole job is watching the result at 1× and saying yes or fix.

Problem

P1A raw take is not a lecture — two unsynced files containing flubs, re-reads and dead air.
The recording contract deliberately pushes all cleanup downstream so recording stays cheap. Someone has to pay that cost, and it must not be Asim.
P2Editing is historically where course production goes to die — it's why updates took years, and the ScreenFlow archive proves it.
Hand-editing ~28 lectures is weeks of timeline work. If editing isn't systematised, the build week produces a pile of raw footage and no course.
P3Twenty-eight edits must look like one editor cut them — same composition, levels, overlay language, pacing.
Ad-hoc edits drift; the merged course's new material should feel like a season of one show.

Solution at a glance

J0An editing pipeline with one human gate. Per lecture: sync face/screen → transcribe the take → cut retakes and dead air (the script is the reference for what should remain) → compose per the design-system layout → apply scripted overlays → level to −16 LUFS → conform → present to Asim with the script beside it. Fix requests are made by timestamp and re-render the edit, not the take.

Job stories

J1 · When a take lands in the inbox

J1.1Face and screen sync themselves — waveform/transcript alignment, no clapperboard discipline required P1Raw takes aren't lecturestwo unsynced files
Both files carry the same room audio; alignment is automatic, verified at three points across the take.
J1.2Flubs vanish because of how they were recorded — pause + re-read marks every cut; the transcript against the script finds them all P1Raw takes aren't lecturesretakes are in-band P2Editing kills productioncut detection must be mechanical
Scribe transcribes the take; repeated sentences and silence gaps locate retakes; the verbatim script says which reading survives (the last). Cuts are logged; Asim's words are never rearranged beyond removing his own discards.
J1.3The script's pointing moments become overlays — emphasis boxes/arrows from the overlay kit, timed to the words, added in post P3One editor's lookoverlay language from the kit
The say/do scripts already mark "point at X" beats; those, not live mouse-waving, drive emphasis — the decision taken during the automation conversations.

J2 · When Asim reviews

J2.1I watch the finished lecture once and answer yes or fix — fixes by timestamp; a fix re-renders the edit, never re-records me P2Editing kills productionone gate, not a timeline
Review page per lecture: the video, the cut log, the overlay list. "2:41 overlay too early" is a config change and a re-render.

J3 · When a lecture is approved

J3.1The final is conformant and inventoried — delivery spec passed, manifest row updated, ready for publish P3One editor's lookand one delivery spec
Same conform gate as everything else; finals land in courses/adv-js/media/out/.

Constraints

Deferred to plan

The face/screen composition layout
Why it must wait: a design-system call (PiP corner vs side-by-side vs face-only-for-intros), locked from a specimen edit of the first real take.
The sync method and its failure modes
Why it must wait: needs the first real pair of files from Asim's chosen capture app — waveform vs transcript alignment decided against reality, on the specimen edit.

Decisions

Editing is Claude's job, split from production — Asim only reviews
Asim's call; his confidence ("I'm positive we can do the editing later") is this spec's contract.
Retake convention: pause + re-read, cut in post
Set in the lecture-production spec; this task is its other half.
Emphasis is post-production overlay work, never live pointing
Asim's call during the automation conversations.

Estimated files / edits

Size: M — sync/cut/compose tooling in packages/scripts/, per-lecture edit configs + review pages, finals to media out.