Sure, that sounds like efficient new expanded capabilities to me. I am curious to know what the driving application was for that one? It leads to the whole bandlimited pulse-train story...
On Sun, Nov 26, 2023 at 8:41 AM Oleg Nesterov <o...@redhat.com> wrote: > On 11/25, Julius Smith wrote: > > > > Hey, perfection is often a minor step forward! > > ;) > > > I would simply say that there is no difference for constant p, but in the > > time-varying case there is a new one-sample delay preventing bit-for-bit > > compatibility. > > OK, thanks. I'll try to do something more meaningful and possibly change > period/pulse "while at it". Again, I am shy to spam > github.com/grame-cncm > with such a trivial change. > > For example, do you think the new > > pulsef(period) = tick ~ -(1) : !,_ with { > tick(acc) = select2(pulse, acc, acc+period), pulse > with { pulse = acc <= 0; }; > }; > > makes sense? > > Like ba.pulse() but "period" can be float. So pulsef(2.5) outputs > > 1 0 1 0 0 1 0 1 0 0 ... > > iow, ba.time / (pulsef(P) : +~_) "converges" to P. > > At the same time, if P is integer it does not uses floating point, > and (according to my naive testing) it is 14% faster than ba.pulse > because it doesn't use the division. > > Oleg. > > -- "Anything that can be automated should optionally be"
_______________________________________________ Faudiostream-users mailing list Faudiostream-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/faudiostream-users