OK well i've used fiddle~, bonk~ and an altered version of the example 'sinedecomposer' (that comes with pd) to successfully extract, and re-synthesise, the pitches and relevant amps of a source.
now i need pd to tell me when 'noise' occurs, and possibly re-synthesise it too, although this is not strictly neccesary in the first instance.
for example, a sample of guitar feedback and snare rolling - - - i can extract the pitches amps and durations of the held tones, and also the transients (amps and durations/timing) of (most of) the snare. however, my machine (obviously) interprets the pitch of the snare as clustered pitches - which as we all know it really is - however it's not cpu-feasible to make a bank of enough oscillators to reproduce whitenoise!
basically, i need pd to tell me the amplitude of a sound that is more noise than tone - like wind, snares, etc.
i thought about zero crossings, and i found an object called zerocrossing~ BUT do not know how to import it into my mac's pd and get it working.
sorry for the long message, any ideas?
or even better--- any patches?
-
NOISE analysis
-
sorry barny, i didn't really understand your question (but then i am quite a newbie)
Dual 1.8 IBM G5: Mac OSX 10.4.11 -- Asus eeePC 701: Pure:Dyne / eeeXubuntu GNU/Linux -- myspace.com/thearifd
-
ok! sorry, lemme try again:
i want pd to tell me the amplitude (down to zero=none) of any white/pink/brown/any type of NOISE there may be in a source, instead of/as well as multi amps of multi PITCH.
i know fully well that noise itself is just extremely multi and clustered pitch... but this does not help when trying to extract-
ie, snare sounds in a band recording (not just sudden transients, because they can be instrumental/not percussive) OR wind in an outdoor recording of a choir (or something).
...i've got the pitch bit sorted, using various implementations of fft.
i hope that makes more sense... -
heeeeeeeeeeeeeeeey burt.
Pitchnoise~ does what you want, you'll have to poll the signal intermittently I think, but then you probably are anyway eh?
However, can't find anything on pitchnoise~ for OSX from google (I do have the C file and makefile somewhere), but using a search string I found this denoising patch http://cmagnus.com/cmagnus/research.shtml which might be worth a shot...
Also, putting zerocrossing~ in the same folder as your patch should work for now.
-
super simple, but old vocoders just used a simple highpass/lowpass filter to determine if the signal was noisy or not. the logic being that noise has a lot more high frequencies than tones do.
-
Vocoder algorithm would be good e.g.(as I think you're doing?) number of zero-crossings per time period (set-able threshold) and then direct that signal for amplitude testing. I think this would assume a the input was regular/transient ala speech though, and might be a bit negi once you start trying to work with polyphonic stuff...
but hey, below is the windows build and C file etc for pitchnoise~. Looks like it needs hanning~ too... Can't find anything on the the author.
http://www.sendspace.com/file/6iodidHave a look at FFTease as well, maybe you could subtract the simplified/sine-ified version from the original signal spectrally to leave the noise as leftovers.
Saaaafe
-
lol i should've just called you up innit
ta muchly
about to try these ideas -
safe indeed!!!!!!!!itsalunken~
-
-
yoyoyo can anyone compile this for mac os x?
http://lists.puredata.info/pipermail/pd-cvs/2007-09/012763.html
because i have no idea what compiling is!
i would be more than appreciativesatanic_corpse~