...that deal with pure data
You are not logged in.
Challenge #1 - The inaugural challenge!
Title: [osc~] -> [dac~]
Description: Create a patch with the following format:
Rules: No other signal objects. One [osc~] object only.
Are there restriction to the amount of osc~?
I believe it was originally intended to be one [osc~] object I'll edit the original post to clarify.
oops, sorry about that. no-one had permission to read or write attachments. :D
should be fine now.
read and write away!
(oh, and yeah,...there are some 'rules' for this challenge thing...but yeah...i'm not going to go deleting your post if you bend them a little bit.)
that's a really cool example of how accurately [metro] works.
also, great how you can make quiet sounds with it.
attaching the obvious mod to that patch to make volume adjustable.
the only way you can make [line] a natural-sounding envelope is by putting a [dbtorms] on it. Then it mimics exponential decay, x'=kx for k<0.
I didn't actually need a [metro] for that patch : I could have used [bang~] instead, at most with an optional [spigot] on it. The period that I chose for the metro is 64/44.1, or 64 samples / 44100 Hz times 1000.
but [bang~] is technically another signal object ;)
you did good.
oh... yeah. That must be why I didn't think of [bang~] ;)
So, a « signal object » means anything that has a dsp-method scheduling a perform-function, or do you use a different definition ? [bang~] is somewhat special because it has no signal input and no signal output. [switch~] is similarly odd but more so, as its dsp-method is empty and it has no perform-method. Where do you draw the line ?
I was thinking of this, too. I really wanted to use [block~ 1] so I could cheat and just use [osc~] as a table-lookup using the phase inlet (though I haven't actually checked to see if it has that 64-sample limit that objects like [bang~] do).
Where do you draw the line ?
i'd call anything with a tilde a signal object. But as i said, no-one is going to delete your patches if you interpret it differently.
i think there are still a few more tricks that can be done with just [osc~] and [dac~] though.
extremely lo-fi "sampler" of sorts. extracts basic pitch and amplitude information from a soundfile and plays it back one block at a time using [osc~]
by switching the sine wave on and then off again, it is possible to make a filter/formant type of effect (there are examples of this in the pd docs, using a different technique)
here's a simple one, and then the same thing with some sequencing
Is there any way you (or somebody more knowledgeable than myself) could explain how the phase inlet of the [osc~] is affecting the waveform in the oscFormantSeq3 patch? I can hear the difference, I just don't quite understand it.
I'm in love with that little sequencer =)
resetting the [osc~] phase introduces a discontinuity in the signal. The waveform suddenly jumps from whatever value it was at, to the value forced upon it by the reset. These sudden jumps in waveform introduce a lot of harmonics to the sound, generally resulting in a 'buzzy' sound.
This is why a sine wave sounds very clean and round, but a sawtooth wave sounds fuzzy and noisy.
If you look at matju's sawtooth patch, it uses the same principle. (as do parts of maelstorm's one)
Hey, if anyone has any ideas for patch challenge #2, please just post them in this thread. Go on! don't be shy!
While making the sawtooth patch, I started wondering about ways to construct the best possible approximation to a sound using only one sine wave per block (and not necessarily a whole number of cycles). This means picking the best matching frequency and phase for each block. That's somewhat hard to solve, and it depends on the criterion of similarity being used. But I wonder what it would sound like.
BTW, much of the brrrrrr anomaly that appears in the sawtooth is because there are a variable number of blocks per cycle. E.g. if a cycle should last 23.25 blocks, then the cycles will have durations 23, 23, 23, 24, 23, 23, 23, 24, ... which gives a strange and very fast vibrato. Using a ideal approximator, you could get something that sounds much smoother (that is, in which the distorsions are still very present but not rough).
I started wondering about ways to construct the best possible approximation to a sound using only one sine wave per block (and not necessarily a whole number of cycles). This means picking the best matching frequency and phase for each block. That's somewhat hard to solve, and it depends on the criterion of similarity being used. But I wonder what it would sound like.
that's pretty much the approach i took with the 'sampler' i did.
i had to hack it pretty badly though, because once the osc~ frequency gets to 1/4 of block size, there is no longer any way to control amplitude - which from my observations, seems to be more important than pitch in making a sample play back with some degree of recognisability. My hack was just to scale the pitch by the amplitude. Somehow it works - at least for really simple sounds where pitch doesn't matter too much and rhythm is more pronounced. So, i could make drum loops play back and still sound quite like drumloops.
by the way,
i've never seen that [f ]x[+ 1]x[& 255] structure before. that's really cool.