Converting audio signals to binary with no externals ?
@seb-harmonik.ar , @whale-av Many thanks for help. So what i want to do is this :
i want to have 2 oscillators (both sine waves. one a carry oscillator and the other one a modulator) with different frequency. And i want their audio signal to be processed in [expr~ ] using bitwise XOR modulation. This is different from [+~] , [-~] , [*~] , [/~]. This paper describes this in detail.
Here is a plot of the waveform result using bitwise XOR (from the paper above) :
Here is a schematic view of the oscillator structure :
So to control both oscillators i need to control the theta (phase) , f (frequency) and A (linear amplitude). Also S1 is unipolar. So the idea is that i can use the basic operations on the audio signals like (addition,multiplication,bitwise OR,bitwise AND) or i can use something different (bitwise XOR). So i tried to make somehow the bitwise XOR using a formula : bitwise XOR equivalent <- (S1 | S2) - (S1 & S2) (not working). The bitwise operations like "&" and "|" works for [expr] not [expr~].
Also i just found this about [expr~ ] object so maybe i am missing something or i am wrong
What is this operator "^" it is bitwise XOR ? or exponential ? or something else ?
Thanks to all a lot for the help. I also tried what @alexandros was talking about and it is almost working. But the waveform is really off so i need to learn more about this idea.
Quantizer for audio
Quantizer for oscillator:
Hello everyone I have a oscillator I am using for droning. Is there a way I can quantize it. So basically quantizing the pitch knob so I can snap the oscillator to a scale?
Thank you!
BELA & PD: Selecting between 2 routes for 1 analog input
Hi! Relative beginner to PD here. I've been building a pretty basic synth which works fine in PD, but when loading it onto Bela I'm having issues with my analog inputs. With my current patch there is no sound and the connected potentiometers do nothing when turned.
The screenshot shows 2 oscillators which are controlled by one pot. (I am using sliders on the patch to simulate the analog inputs which worked fine for testing in the virtual environment) Essentially, I am using 7 analog inputs to control the frequencies of 14 oscillators. You can see in my screenshot how a toggle switches between two routes (all toggles are either on or off dependent on a master toggle which is my 8th analog input).
I think the reason this isn't working may be to do with using snapshot~ as a way to convert the signal to a control - I guess this isn't creating a continuous value which the patch can use for the frequencies of the oscillators? The list prepend object which defines the 2 routes obviously cannot take an input from the adc, so is there another way to convert this? Or is there some way I could have the input after the list? I've tried a few things out but can't get anything to work.
Thanks!
PELLE8001, even more chaotic music sequencer
Even more chaotic 8-step sequencer.
Each step has square wave oscillator, sine wave oscillator, wav file sampler and noise generator.
Lenght of steps can be controlled, overall and individually, and sequentially muted.
Two square wave oscillators modulate each other and a third one modulates the combined two. Optional random frequency modulation on each one of them with control for range and speed.
Sine wave oscillators can be pure, randomized with control of range and tempo, with up/down sweeps or LFO.
Samplers can be set to start and end of loop, playback speed goes from -200% (reverse playback) to 200%.
Generators and left/stereo/right outputs on each step can be sequenced.
Each step has stereo delay.
Recording to wav files possible.
Enjoy.
Samples:
http://mp3.shitcore.org/PELLE8001, as played by NOISEBOB, 210120.mp3
http://mp3.shitcore.org/PELLE8001, as played by NOISEBOB, 220120.mp3
DOWnLOAD:
PELLE8001.pd
latest version here: http://pd.noiselove.net/PELLE8001-1.7.3.pd
PELLE8000, chaotic music sequencer
Hello
i've been mucking about in PD for some years, but lately taking it more serious.. i'd like to share my first patch, that i feel is worth sharing:
it's a chaotic sequencer/rhythmic noise generator.
Each step has square wave oscillator, sine wave oscillator and a wav file sampler.
Two square wave oscillators modulate each other and a third one modulates the combined two. Optional random frequency modulation on each one of them with control for range and speed. Sine wave oscillators can be pure or with up/down sweeps or LFO. Samplers can be set to start and end of loop, playback speed goes from -200% (reverse playback) to 200%. Generators and left/stereo/right outputs on each step can be sequenced.
Bugs: all outputs are set to right on start-up, division by zero on samplers.
patch is here:
PELLE8000-1.1.pd
a sample of me jamming on it here:
http://mp3.shitcore.org/PELLE8000, as played by NOISEBOB, 190120.mp3
Phase modulation FM8 emulation troubles
@RandLaneFly "Dude... all i can say is thank you." Glad to help. It just happens that I was working on this less than a month ago for a synthesis theory class.
"the fm8 sounds more filled out with high frequencies"
The FM8 plot (bottom left) looks like a lot of aliasing. I'm not sure if that's really "filled out." (And the "FM8 sine tone" plot is definitely not from a pure sine tone. It might be deliberate or it might be just a poor oscillator implementation. One of my former students did some research comparing analog oscillators against digital ones from commercial VSTs. The VSTs are often really awful -- unbelievable amounts of aliasing. Massive is one of the worst offenders. I think this is one of the reasons for the harshness of modern EDM -- adding a lot of noise into the pads is a way to cover the kind of gross sound of the oscillators.)
One thing you might try is to use a wavetable oscillator instead of [cos~]. The wavetable can include a bit extra harmonic content.
hjh
Fm Synth Mod Matrix Help
Hi! I've done some fm with feedback lately for a Camomile plugin. If you don't mind doing archeology, the patches are here: https://patchstorage.com/pmer/
I think the best way to do multiple operators with feedback is something like this:
your matrix will need to be able to detect feedback paths and route them correctly through the single sample delay. it's possible if an oscillator is fed back into itself and also routed into an earlier oscillator that then feeds the first oscillator you will end up stacking delays? is this true?
Analyzing & Synthesizing a Cowbell
I'm having a hard time with one of Farnell's exercises. In Chapter 29 of Designing Sound, he shows you how to synthesize an old telephone bell and in Exercise 2 he says to do your own analysis of tubular bells, cowbells or Tibeten singing bowls. I chose cowbell and found a sample online. I had it analyzed in SPEAR and Sonic Visualizer:
In SPEAR, some frequencies stand out more than others, which seems helpful- however, the analysis lacks detail and there's very little information about amplitudes of frequencies.
In Sonic Visualizer, there's more information, but when I see these thick vertical bands of frequencies, I'm not sure what to do- make very thick clusters with oscillators? That would mean using a lot more oscillators than are in the telephone bell patch and doesn't seem in line with the methodology set forth in the telephone bell patch. I've never used Sonic Visualizer, so it's possible I'm using the wrong analysis layer.
This zip-file contains the following two patches + necessary abstractions:
cowbell - the main patch of my resynthesis. It also has the cowbell sample in an array for comparison.
telephoneBell- Farnell's original patch synthesizing a telephone bell.
For my resynthesis, I mostly chose frequencies based on the SPEAR analysis and then looked up their amplitude with the Sonic Visualizer analysis. I also made the dynamic envelopes steeper than in the telephone bell patch. I can hear that it's wrong, and doing a rudimentary spectral comparison in PD shows that in the model file, there's much more amplitude around the 430Hz and the 1100Hz range. I'm just not sure how to derive the proper values from an analysis and where within those frequency ranges (the thick red-orange lines) I should be placing the oscillators..
Could anyone give me suggestions on how to go about this analysis/resynthesis? I've been fiddling with this/trying different things too long already and feel like I'm not getting anywhere.
I love my envelope except when it gets stuck on -- problem using with poly?
Thanks for all the suggestions about this. I'm going to keep plugging away and report back when I find the fix, though I'll probably ultimately take th8a's suggestion of using tables for the envelope segments so I can eliminate the hacky way I'm using threshold~.
I've been building in lots of print and env~ objects to try to figure out where the exact problem is. I believe I've successfully determined that it's NOT the voice stealing or the threshold~ object. All the midi info seems to be getting routed to the right voices, and the decay segment seems to be playing correctly even in notes that get stuck on, which it's the purpose of the threshold~ object to trigger.
For some reason the midi off control seems to be sent to the envelope, but it isn't registering it. I can fake another off event with messages and the envelope releases normally at that point. I've been playing around with a slightly more complex synth patch that uses the same envelope abstraction, which is actually a little more helpful because it has multiple oscillators for each voice, and they do NOT all seem to get stuck on at once. In fact, the base oscillator seems to be the only one that gets stuck on, whereas the 2 suboscillators do not, which suggest to me that I might have screwed up the construction of how the oscillator patch interacts with the envelope. But I'm still only closer to figuring it out; I haven't had much time to mess around with it lately.
Permutations, second part, can anybody get this patch to work?
@whale-av oh and another thing, there would have to be a lot more sine waves, because morphing timbre cannot occur with one sine wave, otherwise you´re just manipulating that sine waves´s volume, what I mean is that there are 16 sine waves or oscillators PER curve, so the morphing occurs by manipulating the volumes of the set of 16 sine waves per curve,. Lets have mercy on my computer and for now use 5 sine waves as a set for morphing timbre per curve. is it going to take to put a set of 5 graphs and oscillators per curve? (there are 31 curves for timbre), i wish but i think it cannot be done, to use the five graphs for all the curves? that´s impossible right? would there need to be 155 graphs and oscillators? because the set of 5 sine waves is there just to make and fuse into ONE sound, the one that will go to one curve and morph by manipulating it´s volumes.