well, let me tell you how I did it, I can send some of my last work, but, as usual, needs some cleaning up and documenting.
But basically I'm using [sigmund~], then getting "tracks" output to use all the partial information to feed an oscillator bank for resynthesis. This is pretty much what you can call a phase vocoder, hence you can tweak with it and mess around with partials. I also have a patch where you can control the partials individually and very arbitrarily. So, for spectral mapping, what I do is I try to map all the harmonic relationship from partials and "detune" them according to a different "harmonic series". It's a lot of work getting all of the data mapped and in order, then apply the math and stuff. It's also tricky because you need the right tuning of [sigmund~] to get better results according to the kind of musical audio signal that is coming through... Anyway, anyone got a better idea than that? I think that if you use FFT you will go crazy trying yo get this right, and I assume that [sigmund~] does work in the best way for this and it is based on FFT anywy (Am I right?). Cheers 2013/11/26 peiman khosravi <[email protected]> > Hello, > > Yes, your description of warp is correct. > > Partial detection is more tricky because often the energy in 4 or more FFT > bins amounts to one partial. So firstly, you need to derive the partials > from the FFT data, then you need to quantise the partials' frequencies. > > One possible cheat would be to trace the loudest FFT-bins and then > transfer their energy to the bins whose frequencies are nearest to the > harmonics of a given fundamental. > > If I'm not mistaken, at a sampling rate of 44100 and an FFT size of 4096, > the frequency of bin 10 would be calculated as (44100/4096)*10=107.66. Just > note that only FFT-size/2+1 bins are usable. That's the Nyquist frequency > (half of the sampling frequency). If you take 107.66 as your fundamental > (and zero all the bins below that) then you can do the following: > > For each analysis window... > 1- Detect the next FFT bin whose magnitude is above a certain threshold > 2- Transfer the frequency and amplitude content of this bin to the nearest > harmonic of the fundamental. So for input bin 15 (and a fundamental > frequency of 107.66) this would be bin 20. The bin number to frequency > mapping is linear so it's easy to calculate. > > Even, using fiddle~, you can get the fundamental frequency from the input > and have it change dynamically from window to window. > > You're likely to get some bubbly artefacts thought, but once you have a > basic working patch you should be able to fine tune it. So you may want to > group the bins so that you transfer not just the energy in one bin but also > the bins around it. You might also want to do some averaging of the > amplitude of 6 windows or so to avoid rapidly changing values, before you > pass the signal into a threshold detector. I can do this in Csound but I'm > not that familiar with how FFT works in PD and I don't have a patch that > does this. If I get the time I might make one next weekend though and post > it here. > > P > > > > > *www.peimankhosravi.co.uk <http://www.peimankhosravi.co.uk> || RSS Feed > <http://peimankhosravi.co.uk/miscposts.rss> || Concert News > <http://spectralkimia.wordpress.com/>* > > > On 26 November 2013 11:48, Eran Sachs <[email protected]> wrote: > >> Peiman, >> It works great! I've been messing various sounds all day now, plus >> there's a thing in my computer with Barry Vercoe's name on it which I find >> oddly elevating. >> However, if I understand the wrap function correctly, it substitutes bin >> values for values of other bins through whatever function you apply. But >> the bins are still all derived from the FFT procedure. Or am I missing >> something there? >> >> What I would like to do is to move from bins to partials, so that they >> are essentially mapped to harmonic overtones of a given fundamental >> according to nearest match. Like a clever phase-vocoder Autotune of some >> kind. >> >> Is there a way to do that, to the best of anyone's knowledge? >> >> Much obliged, >> E. >> ------------------------------ >> Date: Mon, 25 Nov 2013 15:12:50 +0000 >> >> Subject: Re: [PD] spectral mapping, anyone? >> From: [email protected] >> To: [email protected] >> CC: [email protected]; [email protected]; [email protected] >> >> yes csound6 should work on windows too as far as I know. >> >> >> >> >> *www.peimankhosravi.co.uk <http://www.peimankhosravi.co.uk> || RSS Feed >> <http://peimankhosravi.co.uk/miscposts.rss> || Concert News >> <http://spectralkimia.wordpress.com/>* >> >> >> On 24 November 2013 22:06, Eran Sachs <[email protected]> wrote: >> >> Thanks Peiman. >> Alas, I'm living the life of a PC/Windows user. AFAICT, no csound6? >> Z >> >> ------------------------------ >> Date: Sun, 24 Nov 2013 20:27:39 +0000 >> >> Subject: Re: [PD] spectral mapping, anyone? >> From: [email protected] >> To: [email protected] >> CC: [email protected]; [email protected]; [email protected] >> >> >> With spectral warping you can do any frequency-based manipulation, >> depending on the transfer function. I have one for pd but it requires >> Csound to be installed and a couple of other externals. See attached. On an >> intel mac and with pd vanilla 4.5.3/4 this should just work out of the box >> as long as you have csound 6 installed. >> >> P >> >> >> >> >> >> >> *www.peimankhosravi.co.uk <http://www.peimankhosravi.co.uk> || RSS Feed >> <http://peimankhosravi.co.uk/miscposts.rss> || Concert News >> <http://spectralkimia.wordpress.com/>* >> >> >> On 24 November 2013 20:12, Eran Sachs <[email protected]> wrote: >> >> oops, I messed up the names. sorry. Once more, with feeling: >> >> Josep, >> Making harmonic sounds sound inharmonic can be down with spectral >> shifting. Try looking at Hilbert~ or at spec2_shift~ on extended. >> >> But Alexandre, I'd also would be interested in stuff that can manipulate >> the spectrum. >> I also made a little graphic control to all the cross-synthesis objects >> in FFTease. if anyone is interested I can post. >> >> A few years ago I tried to replicate the technique that Trevor Wishart >> refers to as "Spectral Focusing", namely - one that moves the other way - >> from inharmonic to harmonic sonds, by moving from bins to partials (a >> little like FFTease's pvtune~, but moving bins to nearest matching >> partial). >> >> I'm still looking for such an object. Does anyone have any suggestions? >> >> Zax. >> >> ------------------------------ >> From: [email protected] >> To: [email protected]; [email protected] >> Date: Sun, 24 Nov 2013 21:58:50 +0200 >> >> CC: [email protected] >> Subject: Re: [PD] spectral mapping, anyone? >> >> Alexandre, >> Making harmonic sounds sound inharmonic can be down with spectral >> shifting. Try looking at Hilbert~ or at spec2_shift~ on extended. >> >> But Jaime, I'd also would be interested in that. >> A few years ago I tried to replicate the technique that Trevor Wishart >> refers to as "Spectral Focusing", namely - one that moves the other way - >> from inharmonic to harmonic sonds, by moving from bins to partials (a >> little like FFTease's pvtune~, but moving bins to nearest matching >> partial). >> >> I'm still looking for such an object. Does anyone have any suggestions? >> >> Zax. >> >> >> ------------------------------ >> Date: Sun, 24 Nov 2013 01:05:29 -0200 >> From: [email protected] >> To: [email protected] >> CC: [email protected] >> Subject: Re: [PD] spectral mapping, anyone? >> >> Hi, I'm Alexandre, I can send you stuff >> >> cheers >> >> >> 2013/11/11 Jaime E Oliver <[email protected]> >> >> These are older, but I understand E. Lyon might re-release them? >> >> http://www.somasa.qub.ac.uk/~elyon/LyonSoftware/MaxMSP/FFTease/ >> >> J >> >> >> >> On Nov 11, 2013, at 7:23 AM, Jeppi Jeppi <[email protected]> wrote: >> >> Hi, >> just looking for some ready to be used spectral mapping effects >> implemented in pd, anything available? >> Specifically, just a way to slightly remap harmonics to make pitched >> sounds inharmonic. >> There is a paper by Alexandre >> http://www.uni-weimar.de/medien/wiki/images/Dissonance_Model_Toolbox_in_Pure_Data.pdf >> but >> I couldn't find the link to the sources. >> >> >> Many thanks in advance! >> Josep m >> >> _______________________________________________ >> [email protected] mailing list >> UNSUBSCRIBE and account-management -> >> http://lists.puredata.info/listinfo/pd-list >> >> >> >> _______________________________________________ >> [email protected] mailing list >> UNSUBSCRIBE and account-management -> >> http://lists.puredata.info/listinfo/pd-list >> >> >> >> _______________________________________________ [email protected] mailing >> list UNSUBSCRIBE and account-management -> >> http://lists.puredata.info/listinfo/pd-list >> >> _______________________________________________ [email protected] mailing >> list UNSUBSCRIBE and account-management -> >> http://lists.puredata.info/listinfo/pd-list >> >> _______________________________________________ >> [email protected] mailing list >> UNSUBSCRIBE and account-management -> >> http://lists.puredata.info/listinfo/pd-list >> >> >> >> >
_______________________________________________ [email protected] mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
