VCVRack / Fundamental

https://vcvrack.com/Fundamental
Other
235 stars 76 forks source link

NOISE: Invalid output on Red output #98

Open sanderbaan opened 5 years ago

sanderbaan commented 5 years ago

I had it a couple of times, after a while the Red output starts to output invalid data which overloads the audio signal. When connecting to scope this is what you see: Screenshot 2019-10-19 at 17 46 37

AndrewBelt commented 5 years ago

The IIR coefficients in https://github.com/VCVRack/Fundamental/blob/v1/src/Noise.cpp#L148-L150 are probably unstable, didn't even check. Do you have a better filter in mind? Otherwise I'll get to it eventually.

SteveRussell33 commented 4 years ago

Maybe Nohmad?
https://github.com/joelrobichaud/Nohmad/blob/84be73e8fa4f715a2f6334df897983ed1bbaa120/src/Noise.cpp#L138

teknico commented 4 years ago

According to the BogAudio spectrum analyzer, several signals behave unexpectedly at low frequencies:

NoisSpectra

AndrewBelt commented 4 years ago

Nice colors.

Pink and red must have a shelf at the lower limit of hearing, otherwise the output is unbounded. This is not a bug. Same with gray noise. Think about what gray noise means: "White noise through equal-loudness filter". In order for 1Hz to sound the same loudness as 1000Hz, its amplitude would have to be infinite. Our ears cannot hear 1Hz sounds. So the filters are shelved because there's no point of generating frequencies below our range of hearing.

The plot says that it has a DC component at around -24 dB, which is about +/-0.63V (assuming the plot reads 0dB @ 10V). I don't know why, so if you find out let me know.