I've been using the MIT-Style STK-4.3 license. Great to hear it is working for you! Julius
On Fri, May 8, 2020 at 1:38 AM Bart Brouns <b...@magnetophon.nl> wrote: > > > Thanks Julius, > > That one works great! > What license is it under? > > Got any more of these gems gathering dust on your HD? ;) > > Cheers, > Bart. > > > Julius Smith <julius.sm...@gmail.com> writes: > > > In case anyone might be interested to build on it, attached is a > > similar > > function I wrote some years ago. > > > > - Julius > > > > On Thu, May 7, 2020 at 2:36 PM Bart Brouns <b...@magnetophon.nl> > > wrote: > > > >> > >> Hi Nicolas, > >> > >> > >> Great to hear it's GPL! Thank you! > >> > >> Do you mean the soundcard buffer setting? > >> I have that set to 3*4096. > >> > >> The jackqt program says: > >> "The buffer size is now 512/sec" > >> on the CLI though. > >> > >> > >> Either way, the bargraph shows up empty, and I tried an > >> oscillator > >> at all audio frequencies. > >> I'd be grateful for any help! > >> > >> > >> > >> Have you heard of Specially Normalized AutoCorrelation ? > >> http://miracle.otago.ac.nz/tartini/papers/Philip_McLeod_PhD.pdf > >> > >> It's supposed to be an improvement on AutoCorrelation, and I've > >> been using http://www.katjaas.nl/helmholtz/helmholtz.html with > >> great results. > >> > >> I'd love to see it implemented in faust, but I can't make heads > >> nor tails of the explanation. > >> Maybe something for the future? > >> > >> > >> Cheers, > >> Bart. > >> > >> > >> > >> Nicolas Gravillon <gravil...@gmail.com> writes: > >> > >> > Hi Bart, > >> > > >> > Glad you like it. I guess this is something quite expected as > >> > it > >> > gives access to so many applications. Let’s distribute it > >> > under > >> > the terms of GNU General Public License, as published by the > >> > FSF, v2 or any later version. > >> > > >> > I will give it some more time to test the accuracy. Consider > >> > this code as a POC and try to increase the BufferLength to > >> > something over 300 if possible. It depends on ur lowest > >> > frequency and SR actually. > >> > > >> > Nicolas > >> > > >> > > >> > > >> >> On 7 May 2020, at 15:48, Bart Brouns <b...@magnetophon.nl> > >> >> wrote: > >> >> > >> >> > >> >> Hi all, > >> >> > >> >> This is very exciting to me, since I've been looking for a > >> >> way > >> >> to integrate the pitchtracker of > >> >> https://magnetophon.github.io/VoiceOfFaust/ into the binary, > >> >> instead of using an external pd patch. > >> >> So many thanks to Nicolas for writing it! > >> >> Is it open source? What license? > >> >> > >> >> > >> >> Julius's solution didn't work for me, but this at least > >> >> compiles and runs: > >> >> i = +(1) ~_ :min(1e9):max(0); > >> >> > >> >> Unfortunately it doesn't track the pitch here. > >> >> I connected an oscillator but the bargraph stays at 0. > >> >> > >> >> > >> >> Also, I don't understand any of the algorithm, but shouldn't > >> >> "i" get reset at some point, so it doesn't run into the min > >> >> clause? > >> >> That would happen after 1e9/48000/60/60 = almost 6 hours at > >> >> 48k > >> >> SR, right? > >> >> > >> >> > >> >> Cheers, > >> >> Bart > >> >> > >> >> > >> >> > >> >> Julius Smith <julius.sm...@gmail.com> writes: > >> >> > >> >>> Hi Nicolas, > >> >>> > >> >>> It looks like you are asking for unbounded correlation > >> >>> lags. > >> >>> Try limiting > >> >>> it with something like i = min(1e8,+(1)) ~_ ; > >> >>> > >> >>> - Julius > >> >>> > >> >>> On Tue, May 5, 2020 at 11:56 PM Nicolas Gravillon > >> >>> <gravil...@gmail.com> > >> >>> wrote: > >> >>> > >> >>>> Hi everyone, > >> >>>> > >> >>>> First of all, thank you all for your amazing achievement > >> >>>> with > >> >>>> Faust. I am > >> >>>> delighted to use it and amazed by all this work. Regarding > >> >>>> my > >> >>>> problem, I > >> >>>> try for some time now to implement a pitch tracker > >> >>>> implementing > >> >>>> autocorrelation, for a more reliable metering than the > >> >>>> zero > >> >>>> crossing > >> >>>> method. I ended with the following version, strongly > >> >>>> inspired > >> >>>> from Tiziano > >> >>>> Bole work : > >> >>>> > >> >>>> import("stdfaust.lib"); > >> >>>> > >> >>>> BufferLength=4; > >> >>>> > >> >>>> pitch(x) = ma.SR / max(M, 1) - ma.SR * (M == 0) > >> >>>> with { > >> >>>> AC(x, k) = sum(j, BufferLength, (x@(j))*(x@(j+k))) / > >> >>>> (BufferLength) ; > >> >>>> // Correlating two signals, on the buffer length, ideally > >> >>>> over 600 samples > >> >>>> with actual SR > >> >>>> i = +(1) ~_ ; > >> >>>> U = AC(x,i) > AC(x,0)/2; // Detection of a > >> >>>> good > >> >>>> correlation, AC(x,0) being the highest possible value, so > >> >>>> its > >> >>>> half becomes > >> >>>> the detection threshold > >> >>>> V = AC(x,i) <= AC(x,i+1); > >> >>>> W = AC(x,i+1) > AC(x,i+2); > >> >>>> Y = U: *(V) : *(W); > >> >>>> > >> >>>> N = (+(1) : *(1 - Y)) ~ _; > >> >>>> M = (N' + 1) : ba.sAndH(Y); > >> >>>> }; > >> >>>> > >> >>>> process = pitch : hbargraph(“Frequency", 50, 2000); > >> >>>> > >> >>>> The problem seems to be located in the Autocorrelation > >> >>>> function : AC(x, > >> >>>> k) = sum(j, BufferLength, (x@(j))*(x@(j+k))) / > >> >>>> (BufferLength) > >> >>>> since the > >> >>>> error says “can’t compute the min and max values of […] > >> >>>> used > >> >>>> in delay > >> >>>> expression […] (probably a recursive signal). > >> >>>> > >> >>>> Any chance to get it working? I do not see actually how to > >> >>>> fix boundaries > >> >>>> for the delay lines, or get rid of the recursive guess > >> >>>> from > >> >>>> the compiler. > >> >>>> > >> >>>> Thanks for reading this, > >> >>>> > >> >>>> Nicolas > >> >>>> _______________________________________________ > >> >>>> Faudiostream-users mailing list > >> >>>> Faudiostream-users@lists.sourceforge.net > >> >>>> https://lists.sourceforge.net/lists/listinfo/faudiostream-users > >> >>>> > >> >> > >> > >> > >> > >> _______________________________________________ > >> Faudiostream-users mailing list > >> Faudiostream-users@lists.sourceforge.net > >> https://lists.sourceforge.net/lists/listinfo/faudiostream-users > >> > > -- "Anybody who knows all about nothing knows everything" -- Leonard Susskind
_______________________________________________ Faudiostream-users mailing list Faudiostream-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/faudiostream-users