Hi Mykle,

I tried your example with Faust Version 2.5.15 (command line) on a
Mac, and it works as expected (faust2caqt used).  Nothing strange to
point to here.

- Julius

On Wed, Feb 28, 2018 at 10:07 AM, Mykle Hansen <[email protected]> wrote:
> Hi,
>
> I’m looking closer at this strange behavior of ba.selectn().
> I’d really like to know if this is expected behavior,
> because it looks like a bug to me.  (I’m seeing this in
> FaustLive version 2.5.17, as installed by MacPorts.)
>
> Basically, if I have N inputs to selectn(), and I use a
> hslider with N possible values to select one of those inputs,
> the chosen input is not selected.  What happens instead
> is hard to characterize.  This code demonstrates the problem:
>
>
> import("stdfaust.lib");
> N=8;
> process = par(i, N, (i : hbargraph("[%2i]val %i", 0, N)))
>   : ba.selectn(N, hslider("selector", 0, 0, N-1, 1) )
>   : hbargraph("selected val", 0, N)
> ;
>
>
> Interestingly, if I use a hslider with N+1 possible values,
> everything seems to work as I’d expect. So that’s a workaround,
> although it requires the slider to have one meaningless value.
>
> Can anyone else confirm this?  Is this expected behavior?
> Or maybe I’m running a bad version of FaustLive?  Or I’m
> missing some other obvious thing?
>
> Much thanks,
> -mykle-
>
>
>> On Feb 27, 2018, at 4:36 AM, 
>> [email protected] wrote:
>>
>> Send Faudiostream-users mailing list submissions to
>>       [email protected]
>>
>> To subscribe or unsubscribe via the World Wide Web, visit
>>       https://lists.sourceforge.net/lists/listinfo/faudiostream-users
>> or, via email, send a message with subject or body 'help' to
>>       [email protected]
>>
>> You can reach the person managing the list at
>>       [email protected]
>>
>> When replying, please edit your Subject line so it is more specific
>> than "Re: Contents of Faudiostream-users digest..."
>> Today's Topics:
>>
>>   1. Re: compiler hangs on this program? (Mykle Hansen)
>>   2. Re: FAUST Compiler for GPGPU? ([email protected])
>>
>> From: Mykle Hansen <[email protected]>
>> Subject: Re: [Faudiostream-users] compiler hangs on this program?
>> Date: February 26, 2018 at 3:59:32 PM PST
>> To: Julius Smith <[email protected]>
>> Cc: Oleg Nesterov <[email protected]>, faudiostream-users 
>> <[email protected]>
>>
>>
>>> On Feb 23, 2018, at 12:17 PM, Julius Smith <[email protected]> wrote:
>>>
>>> Hi Mykle,
>>>
>>> Yes, iFFT takes spectral-bin signals in parallel.  Right now they all
>>> run at the full audio sampling rate, but later we should be able to
>>> downsample as is typical.
>>
>> Thanks.  Clearly I have wandered in over my head, math-wise.
>> But after reading all weekend, I think I now (sort of) understand
>> the difference between the real and the complex FFT.  Or so I’d like
>> to prove to myself, by making this algorithm work in Faust. =)
>>
>> Nevertheless, I’m still struggling.  I expect this to work, and it doesn’t:
>>
>> import("stdfaust.lib”);
>> process = no.noise : an.rtocv(N) : an.fft(N) : par(f, N, (/(denom(f)^beta), 
>> _ )) : an.ifft(N) : ba.selectn(N*2, 0)
>> with {
>>  N=8;
>>  hN = N/2;
>>  beta = hslider("beta", 1, 0, 3, 0.01);
>>  // Convert par() index to appropriate coefficient for pos & neg freqs 
>> produced by complex fft
>>  // For instance: 0 1 2 3 4 5 6 7 -> 4 3 2 1 1 2 3 4
>>  denom(f) = ba.if(f < hN, hN-f, f+1 - hN);
>> };
>>
>>
>> And while trying to debug that myself, I hit an even bigger snag
>> with selectn().  The code below seems pretty straightforward,
>> but it does not work at all like I expect, and I haven’t a clue why not:
>>
>>
>> import("stdfaust.lib");
>> process = par(i, N, (2*i, 2*i+1)) : par(i, 16, hbargraph("[%2i]value %i", 0, 
>> 20))
>>  : ba.selectn(16, pick) : hbargraph("selected value", 0, 20)
>> with {
>>  N=8;
>>  pick = hslider(“pick a value", 0, 0, 15, 1);
>> };
>>
>>
>> (Possibly this is because selectn() expects an integer?
>> The SVG shows me that the hslider is producing floats,
>> even though there’s not a decimal point in this program.)
>>
>>> Note that for 1/f noise there is a spectral_tilt function in
>>> filters.lib that will provide a 1/f filter for white noise as a
>>> special case.  More generally it can provide 1/f^alpha over the entire
>>> audio band, for any alpha, to any desired degree of accuracy.
>>> Moreover, alpha can be safely modulated over time as that only moves
>>> the zeros of the filter.
>>
>> Thank you!  For any sort of practical use, I’m sure that would be ideal.
>> At the moment I’m just researching the various different approaches to
>> synthesizing 1/f noise.  I expect this one to be the slowest.
>> I wanted to see if I could code in Faust, as a learning exercise.
>> (Boy, am I learning …)
>>
>> -mykle-
>>
>>
>>
>>
>>
>>
>>
>> From: [email protected]
>> Subject: Re: [Faudiostream-users] FAUST Compiler for GPGPU?
>> Date: February 27, 2018 at 12:35:59 AM PST
>> To: Christoph Kuhr <[email protected]>
>> Cc: [email protected], Thomas Hofmann 
>> <[email protected]>
>>
>>
>>
>>> Le 27 févr. 2018 à 09:13, Christoph Kuhr <[email protected]> a écrit :
>>>
>>> Hey,
>>>
>>> we are trying to implement FAUST in our online environment untill CfP.
>>> Chances are good that we could submit some proof of concept.
>>
>> That would be great yes ! Is your «  online environment » visible somewhere?
>>
>>> So, we will try to attend the IFC18. Even if it does not work out, I may be 
>>> able to drop by.
>>>
>>> However, I will be present at the LAC 2018.
>>>
>>>
>>> BR,
>>> Ck
>>>
>>
>> OK.
>>
>> Stéphane
>>
>>
>>
>> ------------------------------------------------------------------------------
>> Check out the vibrant tech community on one of the world's most
>> engaging tech sites, Slashdot.org! 
>> http://sdm.link/slashdot_______________________________________________
>> Faudiostream-users mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/faudiostream-users
>
>
> ------------------------------------------------------------------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> _______________________________________________
> Faudiostream-users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/faudiostream-users



-- 
Julius O. Smith III <[email protected]>
Professor of Music and, by courtesy, Electrical Engineering
CCRMA, Stanford University
http://ccrma.stanford.edu/~jos/

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Faudiostream-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/faudiostream-users

Reply via email to