No edit summary |
No edit summary |
||
(9 intermediate revisions by one other user not shown) | |||
Line 1: | Line 1: | ||
I built a patch, which semi- generates music under the influence of an incoming audio signal. Semi-generative should mean, that it randomly picks on predefined notes, makes changes in the note length, rhythm parts and volumes of the instruments and effects. The notes however are predefined and the “Snare” remains | |||
the only constant part of it to keep the output harmonic. All Sounds are built from cosine oscillators, with the exception of one saw-tooth oscillator. | |||
==Overall Randomness== | |||
The randomness in the patch is produced by a network of spigots set to an adc~ to toggle between several automated faders. These faders are attached to the different musical elements and effects throughout the patch. | |||
This works through a threshold between the microphone input and the spigots, resulting in the microphone input controlling the automated faders. Though the patch worked fine with the contact mic, I settled for the threshold control only and chose to avoid frequency dependency for the controls, as i found it impossible to set overall general values for different natural environments to control this patch. | |||
== | |||
The randomness in the patch is produced by a network of spigots set to an adc~ to toggle between several automated faders | |||
This works through a threshold between the | |||
[[File:Screenshot 2019-09-30 at 19.10.58.png|400px]] | [[File:Screenshot 2019-09-30 at 19.10.58.png|400px]] | ||
Also, there’s a Markov Chain like random | Also, there’s a Markov Chain like random section, which randomises the behaviour of hi-hat, kick drum and alters one frequency of the MIC + Oscillator section | ||
[[File:markov.gif|400px]] | [[File:markov.gif|400px]] | ||
==The Oscillator Step Sequencers== | |||
There’s two more or less similar Oscillator Step Sequencers, one for producing a flute type of sounds and one for the bass sounds. | |||
== | |||
There’s two more or less similar | |||
They mainly differ in the set frequencies for having high and low notes. | They mainly differ in the set frequencies for having high and low notes. | ||
Both are connected to a pseudo random integer, which is connected to the metronome and set to a range of 60. | Both are connected to a pseudo random integer, which is connected to the metronome and set to a range of 60. | ||
Line 30: | Line 22: | ||
[[File:OSC STEP SEQUENCER.png|400px]] | [[File:OSC STEP SEQUENCER.png|400px]] | ||
== | ==The Drum Section== | ||
This section is partly modelled after a drum section from a live coding video from [https://www.youtube.com/watch?v=jADuLtsFqkk Gabriel Vinacca]. | |||
This | kick and snare are generated from a filtered oscillator. For the snare sound i added a white noise. | ||
[[File:Screenshot 2019-09-30 at 19.04.43.png|400px]] | [[File:Screenshot 2019-09-30 at 19.04.43.png|400px]] | ||
the Hi Hat is generated through a | the Hi Hat is generated through a saw-tooth oscillator. | ||
[[File:Screenshot 2019-09-30 at 19.05.06.png|400px]] | [[File:Screenshot 2019-09-30 at 19.05.06.png|400px]] | ||
The | The kick, which counts 6 by default, is connected to the Markov Chain’s random integer which is also set to high, | ||
resulting unforeseeable pauses within the rhythm. Along with the drums section comes a reverb line, an automated delay line and an automated high cut filter, | resulting unforeseeable pauses within the rhythm. Along with the drums section comes a reverb line, an automated delay line and an automated high cut filter, which are partly connected to different inlets of the dac~ | ||
for more auditive diversity. | for more auditive diversity. | ||
== | ==The Mic + Oscillator Section== | ||
This Sections takes the Microphone input and and adds three different midi values sent to three oscillators, | |||
This Sections takes the Microphone input and and adds three different midi values sent to three | |||
one of them randomised from the Markov Chain. This gives a responsive, windy type of sound. | one of them randomised from the Markov Chain. This gives a responsive, windy type of sound. | ||
[[File:Screenshot 2019-09-30 at 19.22.00.png|400px]] | [[File:Screenshot 2019-09-30 at 19.22.00.png|400px]] | ||
== ''' | ==Final Patch== | ||
'''Download here''' | |||
[[:File:thamos gen3009.pd]] | [[:File:thamos gen3009.pd]] | ||
===Example=== | |||
{{#ev:youtube|_vwCSt9Rva0|560|left|thamos gen3009.pd|frame}} | |||
<br clear="all"> | |||
===Notes regarding the Patch=== | |||
The fader section on the top of the patch is a control instance. When starting the patch, the faders have to be reset to zero, otherwise the sounds will start playing at random levels (sometimes distorted) before the fader movements kick in. This is a bug i couldn't fix, therefore the faders. I chose to exclude the overall tempo from randomness, but still it is adjustable. | |||
===Notes regarding Raspberry Pi=== | |||
For now, the piezo microphone is simply attached to my table to make the patch within the raspberry play randomly according to the noises in my room. | For now, the piezo microphone is simply attached to my table to make the patch within the raspberry play randomly according to the noises in my room. |
Latest revision as of 16:16, 15 October 2019
I built a patch, which semi- generates music under the influence of an incoming audio signal. Semi-generative should mean, that it randomly picks on predefined notes, makes changes in the note length, rhythm parts and volumes of the instruments and effects. The notes however are predefined and the “Snare” remains the only constant part of it to keep the output harmonic. All Sounds are built from cosine oscillators, with the exception of one saw-tooth oscillator.
Overall Randomness
The randomness in the patch is produced by a network of spigots set to an adc~ to toggle between several automated faders. These faders are attached to the different musical elements and effects throughout the patch. This works through a threshold between the microphone input and the spigots, resulting in the microphone input controlling the automated faders. Though the patch worked fine with the contact mic, I settled for the threshold control only and chose to avoid frequency dependency for the controls, as i found it impossible to set overall general values for different natural environments to control this patch.
Also, there’s a Markov Chain like random section, which randomises the behaviour of hi-hat, kick drum and alters one frequency of the MIC + Oscillator section
The Oscillator Step Sequencers
There’s two more or less similar Oscillator Step Sequencers, one for producing a flute type of sounds and one for the bass sounds. They mainly differ in the set frequencies for having high and low notes. Both are connected to a pseudo random integer, which is connected to the metronome and set to a range of 60. This range has far more numbers (notes), than the sequencers can select from, resulting in random note lengths. The flute- like Step Sequencer passes one signal (mono) to a delay line, producing a bouncy stereo effect with the original output.
The Drum Section
This section is partly modelled after a drum section from a live coding video from Gabriel Vinacca. kick and snare are generated from a filtered oscillator. For the snare sound i added a white noise.
the Hi Hat is generated through a saw-tooth oscillator.
The kick, which counts 6 by default, is connected to the Markov Chain’s random integer which is also set to high, resulting unforeseeable pauses within the rhythm. Along with the drums section comes a reverb line, an automated delay line and an automated high cut filter, which are partly connected to different inlets of the dac~ for more auditive diversity.
The Mic + Oscillator Section
This Sections takes the Microphone input and and adds three different midi values sent to three oscillators, one of them randomised from the Markov Chain. This gives a responsive, windy type of sound.
Final Patch
Download here
Example
Notes regarding the Patch
The fader section on the top of the patch is a control instance. When starting the patch, the faders have to be reset to zero, otherwise the sounds will start playing at random levels (sometimes distorted) before the fader movements kick in. This is a bug i couldn't fix, therefore the faders. I chose to exclude the overall tempo from randomness, but still it is adjustable.
Notes regarding Raspberry Pi
For now, the piezo microphone is simply attached to my table to make the patch within the raspberry play randomly according to the noises in my room.