Hi all,
My first pd patch is this one:
http://www.sfu.ca/~pthomson/BLIM.pd
A simple four-stereo-channel soundfile player and mixer. But I wonder how I could add volume control to each channel and maybe even to the stereo outs. I would like a slider-like object that could do this, but when I put actual sliders between the readsf~ and the mixer, I can't connect the output of readsf~ to the slider. How could I make something like that happen?
Ideally, I'd also like to have sliders that could control the left and right of each stereo channel together, so I would only have to move one slider to adjust the amplitude of a particular sound file. Is this possible?
Thanks in advance for any advice.
Phil
The slider is basically a GUI version of a number atom. That means that it puts out numbers, which are control data, whereas tilde objects output audio data. That's why you can't connect them. (RTFM) To use the slider as a volume control you need to multiply the signal by that number, effectively increasing and decreasing the amplitude of the signal. Thus, if you multiply a normalized signal by more than 1, you'll get clipping. While it would be enough to simply multiply the signal like this:
[osc~] | | [hslider] | / [*~]
I much prefer using the dbtorms~ object in between. Attached is a simple abstraction I always keep handy for controlling volume.
Wait, on second look the patch got fancier since the last time I used it ;) Now it also has a fancy little dohicky to see the amplitude of whatever is coming out. It's a graph on parent object, so just stick it in your abstractions path and create it.
If you want to control 2 sliders with a third, just connect the output of the master to the inputs of the slaves.
On another note, I'm pretty sure this is covered in the help files..
-Ian
Phil Thomson wrote:
Hi all,
My first pd patch is this one:
http://www.sfu.ca/~pthomson/BLIM.pd
A simple four-stereo-channel soundfile player and mixer. But I wonder how I could add volume control to each channel and maybe even to the stereo outs. I would like a slider-like object that could do this, but when I put actual sliders between the readsf~ and the mixer, I can't connect the output of readsf~ to the slider. How could I make something like that happen?
Ideally, I'd also like to have sliders that could control the left and right of each stereo channel together, so I would only have to move one slider to adjust the amplitude of a particular sound file. Is this possible?
Thanks in advance for any advice.
Phil
Ian Smith-Heisters wrote:
[osc~] | | [hslider] | / [*~]
well, if you use this, please do not complain about clicks when changing the volume. if you want smooth transitions, you should rather go for [line~] to convert the gain-message into a smooth gain-signal.
I much prefer using the dbtorms~ object in between. Attached is a simple abstraction I always keep handy for controlling volume.
or use the [dbtorms]-object, which needs less CPU-power (this might be a hairy assumption, as i have done no benchmarking: the [dbtorms~] object will execute the conversion for each and every sample e.g. 44100 times per second), while the [dbtorms] will only call it when it gets triggered (which is usually for more seldom))
mfg.asd.r IOhannes
hi...
just a little maybe stupid question:
does pd support hyperthreading?
regards wolfgang
just a little maybe stupid question:
does pd support hyperthreading?
Hi, the PD kernel is currently a single-threaded concept, but there are a number of objects that will spawn their own threads, like some soundfile players, py/pyext Python external, maybe also PDP/gridflow? (i don't know).
best greetings, Thomas