E490 — Duncan Fewkes reel analysis digest
- 20 reels ingested (`reels-ingest/{shortcode}/`): - DT-prefix (E500–E521 era): DT0G7SyCtGg E519, DT2tfJzip8A E520, DT6IlEfig-k E521, DTbJvnKCrHO E509, DTBUJiDCvPQ E500, DTEEQNnCvHh E501, DThrF5Miq0- E512, DTmyro9CqUa E514, DTQRPBFiu2v E504, DTr5TQfCpG4 E516 - DS-prefix (E475–E494 era): DSLMOE6iuFH E479, DSA7b7MClVf E475, DScEatyilnk E489, DSDVSJ0itoN E476, DSfZYMUChIi E490, DShj9nlivqf E491, DSkpKC_iie8 E491, DSPfEuWCmTg E483, DSvasHCCiSX E494, DSZmIhOCrTv E488 - 4 Gemini visual analyses successful (DT0G7SyCtGg, D
Full Public Reader
E490 — Duncan Fewkes reel analysis digest
⚠ No video on disk for this reel — referenced by the playbook but not in the local ingest cache.
This file aggregates every playbook chunk section that cites E490. Sections are de-duplicated by heading.
Source data
_From `lume-duncan-playbook-chunk-DT-DS.md`_
- 20 reels ingested (`reels-ingest/{shortcode}/`):
- DT-prefix (E500–E521 era): DT0G7SyCtGg E519, DT2tfJzip8A E520, DT6IlEfig-k E521, DTbJvnKCrHO E509, DTBUJiDCvPQ E500, DTEEQNnCvHh E501, DThrF5Miq0- E512, DTmyro9CqUa E514, DTQRPBFiu2v E504, DTr5TQfCpG4 E516
- DS-prefix (E475–E494 era): DSLMOE6iuFH E479, DSA7b7MClVf E475, DScEatyilnk E489, DSDVSJ0itoN E476, DSfZYMUChIi E490, DShj9nlivqf E491, DSkpKC_iie8 E491, DSPfEuWCmTg E483, DSvasHCCiSX E494, DSZmIhOCrTv E488
- 4 Gemini visual analyses successful (DT0G7SyCtGg, DT6IlEfig-k, DTBUJiDCvPQ, DScEatyilnk). DSfZYMUChIi + DSZmIhOCrTv hit Gemini 429 quota exhaustion; captions on those are still detailed.
---
Big picture: this is the "Audio Particle Clones" arc
_From `lume-duncan-playbook-chunk-DT-DS.md`_
Mid-period work is dominated by Audio Particle Clones (E483→E491) — beat-snapshot human silhouette as particle clouds layered with live depth visuals. This is the direct ancestor of the recent "Sunset Clone Plane" (E605) and "Motion Sparks 4" (E579) work. Three things are clearer here than in the recent reels:
1. Snapshot timing is a published failure mode. E491 (DSkpKC_iie8): "needs a response time/curve adding so that snapshot pose/shape holds for a bit longer (maybe 250ms) and then slightly eases into the gravity fall, so you have time to read the shape better." → For LUME `LumeCloneSnapshot.cs`: `holdDuration = 0.25s`, then ease-in to gravity. Don't drop straight to physics.
2. Audio reactivity is two-stage with a feedback loop, not a single mapping. Beat trigger → snapshot AND audio FFT → reactive logo blend-shape inflation → blend-shape adds motion vectors to fluid sim → fluid sim moves OTHER particles → speed-to-brightness lights them up. (E489 + E490). This is a self-reinforcing cascade, not parallel channels.
3. Speed→brightness is the "twinkle" parameter. Every audio clones reel calls it out as the secret-sauce visual flourish that makes the system feel alive. Brightness boost is a power curve with a threshold — overshoot → blow-out, undershoot → no twinkle. Tune by ear.
---
Next-chunk candidates
_From `lume-duncan-playbook-chunk-DT-DS.md`_
- DR / DQ prefix (~30 reels in master list) — earlier era, likely shows the system before "Audio Particle Clones" was named. Could surface even older origin techniques.
- Failed Gemini analyses to retry: DSfZYMUChIi (E490 speed-to-brightness FFT), DSZmIhOCrTv (E488 drop-physics fail-and-fix log) — captions are already extracted; visual analysis would confirm UI layout. Retry after Gemini quota window resets.
---
Three-channel reactivity philosophy
_From `lume-duncan-playbook.md`_
v1 had two channels (outline=audio, inner=motion). v2 elevates this to three with the audio-transient discovery (E535):
| Channel | Drives | Source signal | Visual purpose |
|---|---|---|---|
| Outline (form) | Fresnel power × audio RMS, with `flash = step(beat_threshold, audio_rms)`. Emissive bright color on outline edge. | RMS + 4 EQ'd bands | "Where you are" — silhouette pulses on beat |
| Inner (action) | Motion-magnitude (from optical flow on linearised depth) modulates fresnel-power inverse — high motion drops fresnel (color spreads), low motion concentrates to silhouette | Optical flow from depth-camera frames | "What you're doing" — motion paints color |
| Impulse (kick) | `AddForce` event in VFX Graph, fires on transient onset only. Velocity kick to existing particles. | Audio transient detector (peak / onset, NOT smoothed RMS) | "When it hits" — particles react to drum hits, not to overall loudness |
Verbatim from E579:
> Outline (form) reacts to audio: brightness flashes on beat — shows you "where you are."
> Inner color (action) reacts to motion: hue/spread driven by motion vectors — shows you "what you're doing."
Verbatim from E535 (the third channel):
> WIP testing quick "overamp" method for audio transients to add a kick to the particle motion. Not very noticeable so needs more definite/large change in motion, but without it going crazy and losing coherence.
Concrete audio→VFX rules from E512 (most actionable engineering note in entire corpus)
> 1) Fluid sim preset with shorter range (lower velocity propagation) works better at full screen scale — and also for multiple people.
> 2) Audio response boosting position directly (rather than feeding into force levels) makes it nice and snappy without blowing up the fluid sim.
> 3) Audio response still needs work. Need to EQ before auto-gain (or fixed dynamic range with no auto-gain) to tame bass level but give natural response where louder parts make particles react more than quieter.
> 4) Bass should affect sim large low-freq positional offsets, mid range and highs work nicely when the timer cycle causes higher-freq position offsets.
For `LumeAudioReactor.cs`:
- 4 frequency bands (bass / low-mid / high-mid / treble) NOT just RMS+3 generic
- Bass band → low-freq large positional offset (slow wave bulges)
- Mid + high bands → high-freq small positional offsets (timer-cycled)
- Audio drives position directly, NOT force/velocity (avoids sim blowup)
- EQ stage BEFORE auto-gain (or use fixed dynamic range entirely)
- Speed→brightness as the "twinkle" parameter (E490) — power curve with threshold, tune live by ear (no preset)
Per-particle hue inputs (3 stacked sources)
1. Global slow cycle — 1 rev / 30s, applied to all particles
2. Per-particle hue from RGB luma at spawn — each particle takes color from where on the body it spawned (RGB texture binding alongside depth)
3. Per-particle speed-driven hue shift each frame — `hue = baseHue + speedScalar * shiftAmount` (E568)
---
Concrete audio→VFX rules from E512 (most actionable engineering note in entire corpus)
_From `lume-duncan-playbook.md`_
> 1) Fluid sim preset with shorter range (lower velocity propagation) works better at full screen scale — and also for multiple people.
> 2) Audio response boosting position directly (rather than feeding into force levels) makes it nice and snappy without blowing up the fluid sim.
> 3) Audio response still needs work. Need to EQ before auto-gain (or fixed dynamic range with no auto-gain) to tame bass level but give natural response where louder parts make particles react more than quieter.
> 4) Bass should affect sim large low-freq positional offsets, mid range and highs work nicely when the timer cycle causes higher-freq position offsets.
For `LumeAudioReactor.cs`:
- 4 frequency bands (bass / low-mid / high-mid / treble) NOT just RMS+3 generic
- Bass band → low-freq large positional offset (slow wave bulges)
- Mid + high bands → high-freq small positional offsets (timer-cycled)
- Audio drives position directly, NOT force/velocity (avoids sim blowup)
- EQ stage BEFORE auto-gain (or use fixed dynamic range entirely)
- Speed→brightness as the "twinkle" parameter (E490) — power curve with threshold, tune live by ear (no preset)
---
Promotion Decision
Attach run IDs, datasets, metrics, and reproduction commands.
Source Anchor
lume-commerce/hardware/reference/duncan/analyses/E490-noreel.md
Detected Structure
Method · Evaluation