Episode 2b: Two Fates. Narration script
Landscape, 1920x1080, 99 s. Calm, unhurried delivery, one idea per sentence. Timecodes are the real ones in renders/two_fates_v2.mp4 (scripts/assemble_two_fates.py, times list). Pauses between lines are intentional; the pictures carry those beats. About 200 words, roughly 95 s of speech.
Current voice: Azure neural en-US-AndrewMultilingualNeural (warm, confident), rate -6 %, pitch -2 Hz, generated by scripts/make_narration.py with the free edge-tts package into narration/01.wav .. 15.wav. To change the voice: python scripts/make_narration.py en-GB-RyanNeural --force.
| # | Time | Picture | Line | Clip |
|---|---|---|---|---|
| 01 | 0:01 | Black, then the whole envelope fades in | An antibiotic is about to enter a bacterium. | 3.0 s |
| 02 | 0:05 | Slow push toward the outer membrane | Everything you will see is a real structure. The proteins come from crystallography. The motion comes from molecular dynamics. | 8.1 s |
| 03 | 0:13 | Tour: outer membrane, porin, periplasm | This is a Gram-negative cell. Two membranes, a thin wall in between, and only a few ways in. | 6.8 s |
| 04 | 0:21 | Tour continues: enzyme, inner membrane, target | Inside the periplasm, two things can be waiting for the drug: an enzyme that destroys it, or the target it came for. | 9.0 s |
| 05 | 0:30 | Title card TWO FATES | Same drug. Same door. Two fates. | 3.1 s |
| 06 | 0:33 | Split screen appears; both columns identical | On the left, a cell that carries a beta-lactamase. On the right, a cell that does not. Watch them together. | 7.2 s |
| 08 | 0:41 | Both pass the porin | Through the porin. Identical, frame for frame. | 3.3 s |
| 07 | 0:44 | Drug drifts through the periplasm in both | Ceftazidime. A third-generation cephalosporin. The same molecule on both sides. | 6.1 s |
| 09 | 0:51 | Columns diverge (HERE THEY PART) | And here they part. | 0.9 s |
| 10 | 0:52 | Left: docking in TEM-1, ring opens. Right: PBP found | On the left, the enzyme catches it first. On the right, there is no enzyme, and the drug finds the protein that is building the wall. | 8.8 s |
| 11 | 1:01 | Right: wall stops, gap, bulge. Left: THE CELL CARRIES ON | Wall synthesis stops. The wall opens. The membrane pushes through. | 5.2 s |
| 12 | 1:07 | Half-speed replay: both rings open | Now the same chemistry, twice. The beta-lactam ring opens. | 4.9 s |
| 13 | 1:12 | RELEASED. HARMLESS. / LOCKED. FOR GOOD. | In the enzyme, the broken drug is released. Harmless. On the target, it stays bound. The protein is locked. | 8.1 s |
| 14 | 1:20 | Outro: lysis shot slowed, closing headlines | One cell dies. The other never noticed. One enzyme made the difference. That is what resistance is. Not a stronger cell. One extra protein. | 10.6 s |
| 15 | 1:33 | End card | Next: how bacteria get that enzyme, and how they share it. | 4.0 s |
Lines 07 and 08 are played in swapped order (porin first), because the porin crossing comes before the drug is alone in the periplasm.
Recording notes
- Record at 48 kHz, mono is fine; leave 2 s of room tone at the start for noise profiling.
- Read each line as its own take; the assembler places lines by timecode, so timing does not need to be perfect.
- Export one file per line as
narration/NN.wav(01 to 15), or one continuous file plus this table; either works. - The music is ducked under speech automatically; no need to leave extra gaps for it.
Where to turn this into audio
Own voice (preferred for a personal channel): any phone voice memo app, or Audacity on the PC.
Text to speech, if you want a draft or decide not to record:
| Tool | Notes |
|---|---|
| ElevenLabs | Most natural English; free tier covers this length; “Daniel” or “Brian” suit documentary tone |
| OpenAI TTS (tts-1-hd, voice “onyx” or “echo”) | Very clean, API or playground; cheap |
| Microsoft Edge “Read aloud” / Azure Neural (en-US-AndrewNeural) | Free in Edge; export via a recorder, or use the edge-tts Python package offline-free |
| Piper (local, open source) | Runs on this PC without an account; quality a step below the cloud voices |
If you go with TTS, give me the voice and I will generate the 15 clips with edge-tts or Piper directly from this table and drop them into the mix.