[LAD] Re: Update of zita-at1
On 2024-04-20 16:41, Fons Adriaensen wrote: With the new logic deciding on forward / backward jumps, the low latency mode just came for free Except the latency in zita-at1 0.8.1 is still around ~20ms, compared 2ms when using the current plugin's "fast mode". Re. microtuning individual notes: I don't think the retuning is ever accurate enough for this to be of any use. Or maybe I misunderstand what you refer to. It allows one to detune individual notes, and it is sufficiency accurate (not unlike changing the reference pitch or notebias). Those controls are not exposed in the custom plugin UI. They are control ports that show up as automation lines in Ardour, or when editing the plugin with a generic control UI. I think it is best to leave the current plugin as-is. Doing so will not break existing sessions using the plugin. I have started a new project without all the custom patches made to the AT1 DSP, and without the variants of the current plugin. The new plugin will closely follow the upcoming zita-AT2. What would be great (in particular for zita-at2) would be a mode were you can e.g. select a region in Ardour, have it analysed, present the result graphically so it can be edited, and finally apply the edited version to the region... It's highly unlikely that we'll reinvent Melodyne. The hard and time consuming part is not the DSP, but the the GUI. It is a full time project by itself. But you never know, someone might step up and file a pull request out of the blue. Things like this happened before. -- robin OpenPGP_signature.asc Description: OpenPGP digital signature ___ Linux-audio-dev mailing list -- linux-audio-dev@lists.linuxaudio.org To unsubscribe send an email to linux-audio-dev-le...@lists.linuxaudio.org
[LAD] Re: Help with resampling algorithm
On Tue, Apr 23, 2024 at 10:47:43AM +0100, Marco Castorina wrote: > > for each output sample you use a new filter from the set of 128 by > > incrementing the index by a fixed value. This may not be an integer, > > so you need to round. > This is what I am struggling with: how do I determine by how much to > advance? It depends on the inverse of the resampling ratio, R = Fin / Fout. Note that all filters have the same frequency response, they just provide a different delay in the range of 0 to 1 input samples. Let P be the position in the input stream where the center of the filter has to be. For each new output sample P increments by R. The integer part of P determines what should be first input sample. The fractional part determines which filter to use. Ciao, -- FA ___ Linux-audio-dev mailing list -- linux-audio-dev@lists.linuxaudio.org To unsubscribe send an email to linux-audio-dev-le...@lists.linuxaudio.org
[LAD] Re: Help with resampling algorithm
Thanks everyone, and apologies for the late reply! I didn't get notified about the replies to this thread. > for each output sample you use a new filter from the set of 128 by incrementing the index by a fixed value. This may not be an integer, so you need to round. This is what I am struggling with: how do I determine by how much to advance? I kind of got an idea by looking the resampler implementation in scipy, but it's still not clear. In my case I am going from 44.1 KHz to 96 KHz. Or this determined by the parameters of the filter? > [...] and advance by one sample in the input array until the index is within range. Within range of the next output sample or the filter sample? Again, apologies for the very basic questions, still wrapping my head around this algorithm :) Thanks, Marco ___ Linux-audio-dev mailing list -- linux-audio-dev@lists.linuxaudio.org To unsubscribe send an email to linux-audio-dev-le...@lists.linuxaudio.org