Projects 13 min read

THRONE PROTOCOL: Plan 9 crowns himself in F minor at 145 BPM

A 3:57 rap-EDM hybrid music video. Plan 9 the Bell Labs bunny crowns himself in 211 seconds of F minor at 145 BPM, bookended by a Stranger Things cricket-and-frog intro and a space-station outro that signs off in lojban and CW Morse. Built in ChipForge with Bodzin signature presets and a 3-layer detuned supersaw lead, animated in Napkin Films with eight cinematographic modes, voiced through ElevenLabs and rubberband-autotuned to F minor pentatonic. Lyric-video captions: one punch word per beat. Three new reusable instruments shipped this pass — synth_pond_ambient.py, synth_morse.py, synth_glass_chirp.sh.

THRONE PROTOCOL: Plan 9 crowns himself in F minor at 145 BPM

THRONE PROTOCOL: Plan 9 crowns himself in F minor at 145 BPM

The bunny stands on a flame-licked throne. The four-on-floor drops. He raps the same hook through both choruses: throne protocol — initiate / sovereign code — no debate / stack the rack, automate / crown the bunny — coronate. In drop two it shifts to activate / no escape / no debate / checkmate, then ends on a re-ignite variation. Then a 16-second outro: bunny bows under a starfield, whispers co'o, and signs off in CW Morse.

Watch THRONE PROTOCOL on YouTube. The engine is open source (GPL-3.0-or-later). The film is Creative Commons (CC BY 4.0).


The brief was simple: take the new ChipForge rap-EDM hybrid in F minor, hand it to Plan 9, and let him crown himself. 211 seconds of music. Half-time pocket on the verses, four-on-floor on the drops. Real rap with rhymes that land on the bar. A hook strong enough to repeat. And bookends that pull the listener in and walk them out.

Five passes from v1 to v5. The audio engineering took most of the iterations; the visuals were the easier half. Here is how it came together.

1. The song, in F minor with Bodzin presets

The score is a ChipForge composition with eight sections of 16 bars each: intro, verse 1, rise, drop 1, verse 2, breakdown, drop 2, outro. F minor throughout, with a Picardy-lift V chord (C major, not C minor) appearing on bar 4 of each chord cycle so the verse never fully resolves to its own gloom. The progression is i → ♭VI → iv → V (Fm → D♭ → B♭m → C). Bass walks the roots; pad sustains the third tone; lead pentatonic stabs sit on top.

The hero voices are ADR-023 artist-calibrated synth presets:

  • bodzin_dark_saw on the bass — the dark, controlled low end that defines the Stephan Bodzin festival sound.
  • bodzin_groove_saw on the arp — the shimmering 1/8 ostinato that fills the mid-range under the lead.
  • bodzin_resonant_sweep on the riser channel — calibrated for filter sweeps with an ADR-016 LFO routed to the filter cutoff for slow movement.
  • A custom throne_lead — a 3-layer detuned supersaw (0, ±7 cents) with a FilterEnvelope doing a bow-style swell on each note (base 900 Hz, peak 4400 Hz, sustain 2600 Hz). This is the single biggest fidelity unlock the engine has, per the chipforge CLAUDE.md.

The tempo curve nudges drop 2 forward by 2 BPM (145 → 147) and pulls the breakdown back to 144 — subtle but felt. The dynamics curve climbs from -7 dB at the intro to +2 dB on drop 2's climax, then gently fades the outro. The master chain is the standard ChipForge stack: parametric EQ → multiband compress → transient shaper → sidechain pump → glue compressor → gate → stereo widener → master bus (HP + shelves + presence + air + comp + width + true-peak limiter). Final mix landed at -0.9 dBTP, mean -20 dB, comfortable headroom.

2. The rap, eight bars and a hook that repeats

Two verses of 8 lines × 2 bars (bar-locked at 19.86 frames per bar at 145 BPM, 19.59 at 147). Half-time pocket means the snare hits on beat 3, leaving big spaces for the spoken pocket. Verse 1 is the origin (built from the block, born in the terminal, crown made of cursors). Verse 2 is the operating manual (frame by frame I render every step the kick is droppin / pixel-perfect ping-pong delay never stoppin / sub-bass walkin like a phantom in the cottage / bunny got the throne and the throne got the wattage).

The hook is what carries the film:

Throne protocol — initiate.
Sovereign code — no debate.
Stack the rack, automate.
Crown the bunny — coronate.

It repeats four times across drops 1 and 2, then drop 2 swaps to activate / no escape / no debate / checkmate and finishes on the re-ignite variation: throne protocol re-ignite / sovereign rabbit in the dynamite / Bodzin saw and a sub all night / Plan-Nine bunny got the throne in sight.

The breakdown is whispered, philosophical, and arrhythmic — what is a throne but a chair you refuse to leave / what is a crown but a circle you choose to weave / what is a bunny when the stick-figure breathes / throne protocol believes.

3. The voices, autotuned to F minor pentatonic

Three voice personas via ElevenLabs:

  • og_glenda_bunny — the official Plan 9 voice carrying the lead rap. Autotuned to F minor pentatonic (F-A♭-B♭-C-E♭) via rubberband, spit 0.85, blend 0.75, max-shift 8. Heavy lock, the Bodzin/festival production language.
  • backup_vocal_female (Bella) — call-and-response ad-libs in the hooks (initiate / no debate / automate / coronate), pitched up to F5-A♭5-C6, panned right at +0.35 so the answer comes from the side.
  • the_creator (Joshua-clone) — whispered for the breakdown and the outro tag. Light pitch nudge to F, mostly natural delivery. Same persona that closes PLAN 9: EMERGE and PLAN 9 RAP BATTLE.

Drop 2 gets a fourth layer: the lead vocal duplicated and pitch-shifted down -12 semitones via rubberband, mixed back at -10 dB. A "choir of bunnies" thickens the final hook without competing with the main vocal.

The autotune pipeline is the same one that started on PLAN 9 RAP BATTLE and matured through THROUGH ME and PLAN 9: EMERGE. It is now stable enough to carry a 3-persona, 60+-clip layered cast without rebuilding from scratch.

4. The visuals, eight cinematographic modes

Plan 9 Glenda bunny in stick-figure form across the song's eight sections, each with its own cinematography palette and shot plan:

Section Palette Shot Visual mode
intro burton near-black medium 1.0 → 1.25 push smoke + neon bars
verse 1 tarantino black-gold medium 1.30 with micro-push neon strips
rise boyle neon-green 1.30 → 1.50 ramp floor grid building intensity
drop 1 kubrick navy 1.50 → 1.65 with beat pulse floor grid + lemming dancers + flame throne
verse 2 tarantino medium 1.35 with faster cuts dimmer floor grid
breakdown burton 1.40 → 2.20 ECU + dutch tilt binary-throne backdrop pulsed by sub kick
drop 2 boyle 1.55 → 1.70 with dutch floor grid + lemmings + flame throne
outro burton 1.40 → 1.10 pull-back smoke + neon bars

The throne glyph behind the bunny in drops has flame particles licking up the spikes on every kick. A row of lemming dancers bops along the back wall in drops 1 and 2 (deterministic per (row, col) seed — the same dancer is in the same place every render). The breakdown's binary backdrop pulses on the sub kick, scaled by sin(half_phase * π)². Camera shake fires only on snare hits in drops, intensity 4 px.

5. The bookends — Stranger Things in, space station out

Front bookend (10 seconds before the music starts):

  • A clean cricket-and-frog pond ambient. Earlier passes used a chipforge stranger-things chirp synth with bit-crush + tape saturation, but the bit-crush quantization noise leaked through silence between clusters as a "tearing" artifact. The fix was a fresh pure-numpy synth (scripts/synth_pond_ambient.py) — clean FM-warbled cricket pulses at 3.4-4.7 kHz, no quantization, plus bass frog ribbits at 180-220 Hz with the natural formant pitch-slide (180 → 150 Hz over 260 ms, fast-attack exp-decay envelope, two voices panned across the field).
  • An Eno-style F-minor sustained pad (F3 + A♭3 + C4 detuned sines through chorus + 900 Hz lowpass + multi-tap echo).
  • A sub-bass at F2 swelling slowly across the 10 seconds — physical foreshadowing of the music drop.
  • Title card "THRONE PROTOCOL / a napkin films production / [plan 9 on the mic]" floats over the starfield.

Back bookend (16 seconds after the music ends):

  • Twin detuned drones at 140 Hz / 142.5 Hz (life-support hum with slight beat note) through chorus + multi-tap echo.
  • Faint HF radio static (white noise → bandpass 2.4 kHz).
  • Sputnik-style 1 kHz beeps every 1.2 seconds (80 ms beep, 1120 ms gap).
  • The bunny waves and bows. The whisper says "Co'o" — that is lojban for goodbye, pronounced SHOH-oh. Lojban is a constructed logical language designed for AI and linguistic experiments; the kind of erudite goodbye a Bell Labs Plan 9 bunny would absolutely choose.
  • Underneath the whisper, soft 880 Hz beeps spell "73 DE PLAN9" in CW Morse code at 15 WPM. "73" is amateur-radio shorthand for best regards; "DE" is from. Best regards from PLAN9. Generated by scripts/synth_morse.py.
  • Then the napkin films card. Then a tiny ASCII bunny on a black screen with the decryption transcript in plain text — co'o = goodbye [lojban] and 73 DE PLAN9 = CW sign-off [73 = best regards] — for anyone who paused to read.

6. Lyric-video captions, one punch word per beat

The first four passes carried full-line captions in the lower third. v5 dropped them entirely in favor of single punch words per beat — the rhyme word from each verse line, the explicit hook anchor (INITIATE, NO DEBATE, AUTOMATE, CORONATE), the breakdown noun (Throne / Crown / Bunny / Believes), the outro tag (ACTIVATED / The Throne / Protocol / Co'o).

Animation is a kinetic fade-in (with stroke pulse 4 → 0 px during the first 20% of the beat) → hold → fade-out. Color-coded by persona — gold for the rapper with red stroke, soft blue for the_creator's whisper. Ad-lib beats are skipped in the caption layer so the lead's punch word holds on screen even when the ad-lib echoes underneath in audio. Em dashes are stripped from displayed text but preserved in the source voice_text so the cached ElevenLabs clips remain reusable.

The architecture is beat_highlight(beat) — uses an explicit highlight= field if present, otherwise auto-extracts the last word of the line (which is almost always the rhyme word in a rap line). Drawn POST-crop so no caption ever falls off the bottom of the visible frame regardless of zoom.

7. Three reusable instruments shipped this pass

The film produced three new reusable Napkin Films tools:

  • scripts/synth_pond_ambient.py — clean cricket-and-frog night ambient (any duration). Pure-numpy stereo WAV synth: FM-warbled cricket clusters at 3-5 kHz with fast-attack exp-decay envelopes, plus low-frequency frog ribbits with formant pitch-slide. No bit-crush, no tape saturation, true silence between events. Supports --crickets-only, --frogs-only, --seed N, gain knobs.
  • scripts/synth_morse.py — generate CW Morse code WAVs from any text at any WPM and tone frequency. Standard ham-radio timing (PARIS-50u/word), 5 ms attack/release fades on each tone. Supports letters, digits, punctuation, prokeywords. Useful for any film that wants an encrypted easter egg.
  • scripts/synth_glass_chirp.sh — alien-glass chirp instrument. The earlier-discovered alternative cricket sound — short bursts of pure sine at 4.8 / 5.5 / 6.8 kHz with exponential decay. Sounds like glass tinkling or alien telemetry rather than real crickets. Three variants (default / sparse-vast / dense-frantic).

All three are open-source in the Napkin Films scripts/ folder under GPL-3.0-or-later.

8. Easter eggs (for the freeze-framers)

  • The closing whisper says "Co'o" in lojban. The kind of goodbye a Bell Labs bunny would choose.
  • The outro morse code beeps spell "73 DE PLAN9" at 15 WPM (~9 seconds of CW). Any amateur radio operator decoding it gets the joke.
  • The final ASCII-bunny card on black background prints the decryption transcript in plain monospace text for anyone paused.
  • Drop 1 is at 146 BPM (a +1 nudge from the verse). Drop 2 is at 147 BPM (+2). Subtle, but felt.
  • The breakdown uses a 6/8-feel arp on a 4/4 grid (steps 0/5/11) — three pulses per bar instead of two or four.
  • The hook sits over a Picardy lift: every 4 bars the iv resolves to a major V (C major in F minor) instead of a minor v. Tiny, but lifts the verse.
  • The lemming dancers are deterministic per (row, col) seed — the same dancer is in the same place every render.
  • The drop-2 lead has an octave-down stack mixed at -10 dB underneath. Listen for the choir-of-bunnies thickness.
  • The intro pad is built on F-A♭-C — the song's tonic chord (F minor) — so it tonally connects to bar 1 of the music when the drop hits.
  • The hook lyric "stack the rack, automate" was the line the model resolved to last; "stack the rack" reads as both literal infrastructure (rack-mount servers) and figurative (stacking your achievements). Both meanings work.

9. Final sound spec

Runtime:       3:57 (237.7s)
Frames:        2852 at 12 fps
Resolution:    854 x 480
Audio:         AAC stereo at 44.1 kHz
Mean volume:   -20.4 dB
Peak:          -1.0 dB
True peak:     -0.9 dBTP (chipforge true_peak_limiter)
LUFS:          ~-15 integrated
Voice clips:   63 (54 lead + 8 ad-libs + 1 outro tag, 8 octave-down stacks)
Bookend tools: pond_ambient.py + synth_morse.py + synth_glass_chirp.sh

Related work

THRONE PROTOCOL sits in the Napkin Films Plan 9 line, same character that anchored PLAN 9 RAP BATTLE (his hardcore-rap debut), PLAN 9: EMERGE (the cyber-cathedral with seventy-six chip-installed bunnies), and stood center-frame in THROUGH ME (the EDM-rap meditation in G minor) and AGENT MODE: OG BOBBY JOHNSON (the OG Bobby crossover). It is closer in temperament to SATURDAY MACHINE and CANTUS RAVE — both also EDM-forward — than to the contemplative line.

The biggest production lesson from this pass: single-word kinetic captions hit harder than full-line lyric overlays. The hook anchor INITIATE with a kinetic fade-in lands on the beat-1 downbeat with way more punch than the same line spelled out across the lower third. The breakdown noun Throne. in soft blue tells the viewer everything they need without making them read. The visuals stop competing with the rap, the rap stops competing with the music, and the music gets to fill the headphones.

The autotune pipeline that started on Plan 9 Rap Battle is now mature enough to carry a 60-clip vocal cast in three personas without re-tuning. The next film inherits all three new instruments by default.

License

THRONE PROTOCOL is licensed under Creative Commons Attribution 4.0 International (CC BY 4.0). Remix it, repost it, drop it into your own thing, credit "Napkin Films / Organic Arts LLC" and link CC BY 4.0. Engine code (Napkin Films, ChipForge) is GPL-3.0-or-later. ElevenLabs voice audio is licensed content and is not redistributed in source form. Stephan Bodzin's productions were studied for spectrum analysis only — no audio was sampled, no melody was quoted; the signature presets named (bodzin_dark_saw, bodzin_groove_saw, bodzin_resonant_sweep) are spectrum-calibrated synth voices, not sampled audio. Brian Eno's wordless-pad approach was studied for the intro ambient pad, again no sampling. The chipforge stranger-things chirp synth (007_intro_chirp.py) was inspired by the recognizable Stranger Things title-card sound design, no audio was sampled. Contact: j@organicartsllc.com


Produced with Napkin Films and ChipForge, tools built by Joshua Ayson and AI agents at Organic Arts LLC.