lmms icon indicating copy to clipboard operation
lmms copied to clipboard

ZynAddSubFx glitch on high sample rate

Open zynskeywolf opened this issue 5 years ago • 8 comments

A rare glitch appears with ZynAddSubFx with very specific scenarios. It Might be related to the envelopes in ZynAddSubFx, but it happens too randomly to be sure.

Steps to reproduce:

  • Set the playback sample rate to 192 kHz (currently doable in .lmmsrc.xml)
  • Open this project. (Updated)
  • Enable the oscilloscope and press play

Expected behavior: The sound sounds, then goes to silence.

Actual behavior: You can see a gradually appearing DC offset in the output. Putting in a reverb in Zyn produces even more crazy things.

Tested in 1.3.0-alpha.1.606+g75d6be2ea (Linux/x86_64, Qt 5.15.13, GCC 14.1.1 20240507)

zynskeywolf avatar Jun 11 '20 17:06 zynskeywolf

I can confirm the issue.

Putting in a reverb in Zyn produces even more crazy things.

That's what you'd get with a floating point error. A good candidate to trouble shoot with the WANT_DEBUG_FPE debug option.

zonkmachine avatar Aug 13 '20 20:08 zonkmachine

That's what you'd get with a floating point error. A good candidate to trouble shoot with the WANT_DEBUG_FPE debug option.

Tested with -DWANT_DEBUG_FPE=ON and nothing showed up.

Change samplerate to 48000, bit depth to 16, and oversampling to 8x.

I get the same result no matter what bit depth setting I use.

zonkmachine avatar Feb 01 '21 00:02 zonkmachine

Oversampling was removed in https://github.com/LMMS/lmms/pull/7228

zonkmachine avatar May 20 '24 16:05 zonkmachine

Oversampling was removed in #7228

It's not an issue with the oversampling feature, it's a ZynAddSubFx bug when using high sample rates in general.

zynskeywolf avatar May 20 '24 16:05 zynskeywolf

Updated the original post to be reproducible without the removed setting.

zynskeywolf avatar May 20 '24 17:05 zynskeywolf

Set the playback sample rate to 192 kHz (currently doable in .lmmsrc.xml)

Are you sure this setting isn't just a feature in https://github.com/LMMS/lmms/pull/7125 ?

OK. I tested the issue above on https://github.com/LMMS/lmms/pull/7125 and can confirm the issue.

zonkmachine avatar May 20 '24 17:05 zonkmachine

Are you sure this setting isn't just a feature in #7125 ?

Well it is, but that pr is open, thus not in newest master.

zynskeywolf avatar May 20 '24 17:05 zynskeywolf

Well it is, but that pr is open, thus not in newest master.

Ah, right! Now I found it. samplerate=""/>. I learnt something new.

Enable the oscilloscope and press play

Interesting. I do get the bug but it doesn't show up on export.

zonkmachine avatar May 20 '24 18:05 zonkmachine