brummer10 / guitarix

guitarix virtual versatile amplification for Jack/Linux
236 stars 24 forks source link

GxAmplifierX (LV2) produces weird noise after buffer size changes in 0.43.0 update #100

Closed Bleuzen closed 2 years ago

Bleuzen commented 2 years ago

Hi, I use the GxAmplifierX plugin in my Ardour session and usually change jack/pipewire buffer size when necessary. Now after the guitarix 0.43.0 release this became problematic, because the plugin starts making weird noise if the buffer size is changed. This is no problem with old 0.42.1 release.

Because this is hard to explain in words, I made a video so you can listen to how it sounds: https://www.youtube.com/watch?v=dwktQauEGkg

brummer10 commented 2 years ago

Hi Yea, I've removed the buffersize changed handler because ardour now tends to send buffers with arbitrary sizes. This leads to configure failures when GxAmplifier react on a buffersize change. But truly you are right, it isn't nice to ignore them all. So I've reimplement the buffersize change handler, but have restricted the handler to a buffersize min size of 64 samples, and only react when the buffer size is power of two.

Bleuzen commented 2 years ago

Thanks for reimplementing this :)

ardour now tends to send buffers with arbitrary sizes

Hm, never had problems with that, how did you test this? Also, using jack or pipewire?

but have restricted the handler to a buffersize min size of 64 samples

Is there a special reason for this restriction? Some may want to use lower buffer sizes and it becomes easier as hardware evolves. The standalone supports at lowest 16 samples, so why not use the same limit for plugin version?


Also, will there be a new release soon? Think that buffer size changes are common and hope this "broken" 0.43.0 doesn't make it into stable/frozen repos.

brummer10 commented 2 years ago

Hm, never had problems with that, how did you test this? Also, using jack or pipewire?

See here: https://sourceforge.net/p/guitarix/bugs/128/

s there a special reason for this restriction? Some may want to use lower buffer sizes and it becomes easier as hardware evolves. The standalone supports at lowest 16 samples, so why not use the same limit for plugin version?

Because I like to avoid to much (to fast following) configure calls for the convolver. Also, the min buffersize the convolver engine expect is 64, in guitarix main we padding it with zeros when the buffersize is smaller, but there we could ensure that there are no arbitrary buffersize changes.

Bleuzen commented 2 years ago

works again in 0.43.1, will close