Pink noise: the voice's noise is a one-pole tilt, and seven instruments offer pink beside white #123

Open
opened 2026-10-05 23:35:06 +00:00 by bcox · 0 comments
Owner

bcox asked on 2026-10-05 for a ticket for each engine gap that the third set of instruments in his moregaps.md left without one. Engine claims are from reading the tree at f6aa8eba on main. Instrument claims are from that day's research, read mostly as archive.org OCR of the manuals by research agents and not re-checked; the sources are listed in that document. Nothing here is built, measured or listened to.

Summary

The voice's noise is xorshift32 through a one-pole tilt: color is bipolar, -1 dark, 0 white, +1 bright (dsp/noise.h:49-54). The header is explicit: "Not pink at -1, and deliberately not called that. A true -3 dB per octave slope needs a Voss-McCartney ladder or a multi-pole fit; a one-pole tilt is a different thing that also sounds darker. If pink is ever wanted it arrives as its own color rather than as a setting of this one." This is that ticket.

What the instruments do

  • SH-5: a white/pink switch on the noise source.
  • ARP 2600: a continuous control from white through pink to low-frequency noise.
  • Odyssey: white or pink.
  • Memorymoog: pink noise.
  • Synthex: white or pink.
  • MS-20: pink and white noise outputs on the patch panel (recollection).
  • Pro 2: one of three noises per oscillator (recollection that they are white, pink and violet).

The work, as a sketch

As the header says, its own color rather than a setting of the tilt:

  • A multi-pole fit (Kellett's three one-poles summed on the white source, fixed coefficients) is three multiplies and three words of state per voice, and fixed-point friendly.
  • Voss-McCartney is a sum of random values each updated at an octave-spaced rate: adds only, more state, and exactly the "noise at a low clock rate" the Wasp's shift register produces, several of them at once.
  • A law field on the noise source: tilt (today) or pink, with the tilt still applied after, so the 2600's white-to-pink-to-dark control is pink plus the tilt's dark end.
  • Verify by measuring: a test that estimates the slope over octaves and holds it at -3 dB within a stated tolerance, with the injection of the tilt in pink's place failing it.
  • #92, bandwidth-enhanced partials, is noise per partial in the partial bank, not this.

Addendum, 2026-10-05: noise at a low clock rate, which is this ticket's other half

The Wasp's noise is an 18-stage shift register clocked at 5 kHz (EDP's test instructions, read as OCR): a pseudo-random sequence held for about ten samples at 48 kHz, so it is band-limited by the hold and steppy, a sound of its own. The feature table's row "Noise from a slowly clocked shift register" had no ticket; it belongs here, because a clocked random value is the component the Voss-McCartney method above sums several of, and because both are settings of one noise source.

  • Today the generator advances every sample (dsp/noise.h:55-60, xorshift32 per Render).
  • A clock divider on it -- hold the value for N samples, with N a field or a lane -- is one counter per voice and gives the Wasp's noise directly; the tilt still applies after.
  • With octave-spaced dividers summed it is the pink generator, so the two should be designed as one law with a rate.
bcox asked on 2026-10-05 for a ticket for each engine gap that the third set of instruments in his `moregaps.md` left without one. Engine claims are from reading the tree at `f6aa8eba` on `main`. Instrument claims are from that day's research, read mostly as archive.org OCR of the manuals by research agents and not re-checked; the sources are listed in that document. **Nothing here is built, measured or listened to.** ## Summary The voice's noise is xorshift32 through a one-pole tilt: color is bipolar, -1 dark, 0 white, +1 bright (`dsp/noise.h:49-54`). The header is explicit: "Not pink at -1, and deliberately not called that. A true -3 dB per octave slope needs a Voss-McCartney ladder or a multi-pole fit; a one-pole tilt is a different thing that also sounds darker. If pink is ever wanted it arrives as its own color rather than as a setting of this one." This is that ticket. ## What the instruments do - SH-5: a white/pink switch on the noise source. - ARP 2600: a continuous control from white through pink to low-frequency noise. - Odyssey: white or pink. - Memorymoog: pink noise. - Synthex: white or pink. - MS-20: pink and white noise outputs on the patch panel (recollection). - Pro 2: one of three noises per oscillator (recollection that they are white, pink and violet). ## The work, as a sketch As the header says, its own color rather than a setting of the tilt: - A multi-pole fit (Kellett's three one-poles summed on the white source, fixed coefficients) is three multiplies and three words of state per voice, and fixed-point friendly. - Voss-McCartney is a sum of random values each updated at an octave-spaced rate: adds only, more state, and exactly the "noise at a low clock rate" the Wasp's shift register produces, several of them at once. - A `law` field on the noise source: tilt (today) or pink, with the tilt still applied after, so the 2600's white-to-pink-to-dark control is pink plus the tilt's dark end. - Verify by measuring: a test that estimates the slope over octaves and holds it at -3 dB within a stated tolerance, with the injection of the tilt in pink's place failing it. ## Related - #92, bandwidth-enhanced partials, is noise per partial in the partial bank, not this. ## Addendum, 2026-10-05: noise at a low clock rate, which is this ticket's other half The Wasp's noise is an 18-stage shift register clocked at 5 kHz (EDP's test instructions, read as OCR): a pseudo-random sequence held for about ten samples at 48 kHz, so it is band-limited by the hold and steppy, a sound of its own. The feature table's row "Noise from a slowly clocked shift register" had no ticket; it belongs here, because a clocked random value is the component the Voss-McCartney method above sums several of, and because both are settings of one noise source. - Today the generator advances every sample (`dsp/noise.h:55-60`, xorshift32 per `Render`). - A clock divider on it -- hold the value for N samples, with N a field or a lane -- is one counter per voice and gives the Wasp's noise directly; the tilt still applies after. - With octave-spaced dividers summed it is the pink generator, so the two should be designed as one `law` with a rate.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
bcox/tymbal#123
No description provided.