-
kickofighto
Hi guys!!
This is my first useful and nice sounding abstraction.
Its a special morphing oscilator with a special kind of FM capability built in.
You make two waveforms using the partial sliders and toggles.
You can morph between the two waveforms by sending -1 to 1 range (so you can use an oscillator or audio signal directly)
You can do FM the old fashioned way through the frequency input OR if you're brave enough via my special input.
This will route frequency changes to the individual oscilators that make up the partials: GASP!!
The fourth input can change how out of tune the partials go with each other
-1 they remain harmonic (modulation is multiplied by each partial), and you effectively just have bog-standard FM
+1 the modulation numbers are added directly to each partialAll inputs can take audio signal!
included is a helpfile and another abstraction [morph.pd] you will need to run it.
it should run in vanilla if you add morph to your libraries.
All morph does is linear interpolate between two values given an input between -1 and +1;
Again all inputs and outputs are audio.I would like to make some improvements
1. Add buttons to set the waveforms to commonly used ones
2. somehow work out how to get the oscillators back in phase after detuning them
3. I'm not sure, but I dont think the gainstage of the oscilator is the best way to go, at the moment it simply takes the average of all the partials
4. It would be trivial to give it 16 voices/partials
5. I want to try to introduce some antialiasing provisions, some way of attenuating the higher partials when needed, but my math isn't the best
6. Some may find a table showing the waveforms useful,
7. Two more outputs which simultaneously send waveform A and waveform B read from a sinesum based wavetable.8. Any other suggestions!
-
kickofighto
Hi guys!!
This is my first useful and nice sounding abstraction.
Its a special morphing oscilator with a special kind of FM capability built in.
You make two waveforms using the partial sliders and toggles.
You can morph between the two waveforms by sending -1 to 1 range (so you can use an oscillator or audio signal directly)
You can do FM the old fashioned way through the frequency input OR if you're brave enough via my special input.
This will route frequency changes to the individual oscilators that make up the partials: GASP!!
The fourth input can change how out of tune the partials go with each other
-1 they remain harmonic (modulation is multiplied by each partial), and you effectively just have bog-standard FM
+1 the modulation numbers are added directly to each partialAll inputs can take audio signal!
included is a helpfile and another abstraction [morph.pd] you will need to run it.
it should run in vanilla if you add morph to your libraries.
All morph does is linear interpolate between two values given an input between -1 and +1;
Again all inputs and outputs are audio.I would like to make some improvements
1. Add buttons to set the waveforms to commonly used ones
2. somehow work out how to get the oscillators back in phase after detuning them
3. I'm not sure, but I dont think the gainstage of the oscilator is the best way to go, at the moment it simply takes the average of all the partials
4. It would be trivial to give it 16 voices/partials
5. I want to try to introduce some antialiasing provisions, some way of attenuating the higher partials when needed, but my math isn't the best
6. Some may find a table showing the waveforms useful,
7. Two more outputs which simultaneously send waveform A and waveform B read from a sinesum based wavetable.8. Any other suggestions!
-
kickofighto
Hi guys!!
This is my first useful and nice sounding abstraction.
Its a special morphing oscilator with a special kind of FM capability built in.
You make two waveforms using the partial sliders and toggles.
You can morph between the two waveforms by sending -1 to 1 range (so you can use an oscillator or audio signal directly)
You can do FM the old fashioned way through the frequency input OR if you're brave enough via my special input.
This will route frequency changes to the individual oscilators that make up the partials: GASP!!
The fourth input can change how out of tune the partials go with each other
-1 they remain harmonic (modulation is multiplied by each partial), and you effectively just have bog-standard FM
+1 the modulation numbers are added directly to each partialAll inputs can take audio signal!
included is a helpfile and another abstraction [morph.pd] you will need to run it.
it should run in vanilla if you add morph to your libraries.
All morph does is linear interpolate between two values given an input between -1 and +1;
Again all inputs and outputs are audio.I would like to make some improvements
1. Add buttons to set the waveforms to commonly used ones
2. somehow work out how to get the oscillators back in phase after detuning them
3. I'm not sure, but I dont think the gainstage of the oscilator is the best way to go, at the moment it simply takes the average of all the partials
4. It would be trivial to give it 16 voices/partials
5. I want to try to introduce some antialiasing provisions, some way of attenuating the higher partials when needed, but my math isn't the best
6. Some may find a table showing the waveforms useful,
7. Two more outputs which simultaneously send waveform A and waveform B read from a sinesum based wavetable.8. Any other suggestions!
-
kickofighto
Hi guys I'm wondering if there is an audio object which can slide between two definable values
To explain I want to feed the device values between 0 and 1 (lets say) and the device will output between MAX and MIN where 0 maps to MIN and 1 maps to MAX
EG if MAX=12 and MIN=0
then feeding 0.5 will give 6I want to use it for a morphing oscilator
I can make an abstraction or a subpatch but I would rather something more efficient
-
kickofighto
Another Update:
Now the maximum relative maximum skew of each harmonic can be independently controlled.
The modulation signal is now multiplied by a number between h and h^s.
Where h is the harmonics number and s is a power between -2 and 2.
ie if you set s to 1 then the skew values between -1 and 1 wont change the relative skew.This is great for making bell like sounds if the parameters are controlled by envelope.
I have managed to get some nice engine like, metallic and vocal sounds out of it aswell as some weird noises and sinescapes, beating, reverb like effects etc...
Please do more than just play with the help fileAny suggestions are more than welcome.
At the moment it's quite CPU heavy, any help or ideas here would be appreciated.
I should probably encapsulate each harmonic voice, but I'm still new to PD so have to work out a good way to do it.Another issue is the phase relationships of the individual voices. Any ideas on how to bring em back in line in a nice way?
-
kickofighto
Updated:
Now has 16band and buttons to use square, sin, triangle, and saw.
Also now properly encapsulated, so can use multiple instances.
old helpfile still works -
-
-
kickofighto
This is a big and somewhat vague question.
I'm not sure what exactly it is you want to do.
By "Vocal wave track" do you mean a recording of someone talking or singing?
I would start by trying to understand all the FFT stuff from the help and manual files; It's fairly daunting stuff (for me anyway). From those, try to think what exactly your going to be doing to the file at every point, in terms of time and frequency/pitch.
You'll probably need to start there anyway; I'm not too sure myself