DStudio – addons and examples to make music with openFrameworks

Hi all, this is my first contribution to OF!

Demo video on YouTube: https://youtu.be/puPmTIZabCg.

DSTUDIO

create(d) with free software
based on Daisy SP and openFrameworks

DStudio – addons and examples to make music with openFrameworks
License: GNU General Public License v3.0. DaisySP is licensed under the MIT license.
Project site: http://oscillator.se/opensource

Welcome to the DStudio – addons for creating music and sounds with openFrameworks!

DStudio is:

ofxDaisySP – an addon with DaisySP, a DSP library originally created for the Daisy Seed family of audio oriented hardware. Thank you Electro-smith for making this!

ofxDStudio – an addon which builds upon the DaisySP library, that gives you synthesizers, drum sounds, a mixer with FX and a sequencer.

demos – a couple of examples that shows you how to use DStudio

DStudio is basically a collection of classes.

The majority of them create sounds: DSynthSub, DSynthFm, DBass, DClap, DCymbal, DDrum, DHihat and DSnare.

They can be combined using the mixer class, DMixer.

You can use the sequencer, DSeq, to sequence them. Or you can use them directly in your code.

If you are using the mixer it will take care of calling all sound generating objects for you. This is the main code for Demo 3:

void ofApp::audioOut(ofSoundBuffer &outBuffer) {

float sigL, sigR;

dseq.Process();

for(size_t i = 0; i < outBuffer.getNumFrames(); i++) {

    dmixer.Process(&sigL, &sigR);

    outBuffer.getSample(i, 0) = sigL;
    outBuffer.getSample(i, 1) = sigR;
} // for

}

Demo 1. Demonstrates how to setup and use a bunch of different synthesizers and sounds, mix them together, and trigger them using the Metro timing class, feeding them various randomized data. A kind of algorithmic composition program.

Demo 2. A drone experiment.

Demo 3. A sequenced song that shows how to create sequences and chain them into a song.

DMixer
This is the mixer with pan, level, chorus and reverb.

DSeq
This is a sequencer that you feed with data in vectors.

DSynthSub
A classic virtual analog subtractive synth with two oscillators, noise, a selectable filter, an EG, a LFO that can control amplitude, filter or pitch, portamento, delay and overdrive FX.

DSynthFm
Like the DSynthSub but with FM at its heart.

Drum classes
DBass, DClap, DCymbal, DDrum, DHihat and DSnare.
Bass drum, with three different sound engines (type): analog (808, DTYPE_ANALOG), synthetic (909, DTYPE_SYNTHETIC) and opd (my home cooked engine, DTYPE_OPD).

7 Likes