• FMDB OSC

    My misadventures in audio dsp programming continues here with what I’m calling a Frequency Modulated Delay Buffer Oscillator.

    The oscillating values of a sine wave are added into a delay buffer array, and the audio output is a modulated range of locations of the delay buffer at a specific offset from the current input location… For example, if the total delay buffer is 48,000 samples, and the offset is 24,000, with a range of 6,000, then the output would be locations between 18,000 (3,000 x -1.0) and 30,000 (3,000 x 1.0) as the modulation sine wave oscillates.

    What does it sound like?

    This composition starts with the fmdb oscillator range and offset set at 1, and then gradually increases the width of the range and offset. The modulation frequency doesn’t change.

    The tone sequence uses a C Dorian scale and the melody incorporates some large interval changes to accentuate the cross modulation that happens when pitches change due to the delay aspect of the fmdb oscillator.

    If you’re curious, here’s a link to my c++ code for the fmdb oscillator class.

    https://github.com/craigcorvin/fmdboscillator

    Listen to this track, and other Astrospherian tracks as I release them, on Spotify