Raspberry Pi audio projects can be prone to noise issues.
I don't use our bedside radio very often, but when I do, I notice background noise.
I've finally got around to doing something about it.
Our Insomniacs Bedside Radio has given good service for the last 5 years. I'm not the prime user, but on those occasions when I do use it, I notice a background noise rather like a poor sound effect for a 'windy night' or maybe people whispering.
The problem is due to a mismatch between the Pi output and the Bluetooth module input requirements. The Bluetooth headphone volume needs to be adjustable right down to a whisper. Its a digital control (not analogue) so adjusts in steps. So this means that if the audio signal from the Pi is too high, the first step up from 0 is too loud.
My original solution was to set the Pi audio to 80%, but as this setting is reduced from 100% (max) the Pi noise quickly becomes noticeable. When using the Pi audio output you really need the level set to 100%.
Since I took the Bluetooth module apart last year to remove its internal battery, it wasn't that difficult to dismantle the radio and get inside the module.
I simply fitted resistors in series with the module inputs (i.e. one for left and one for right channels). By trial-and-error I found 100k was suitable.
I then turned the headphones volume up far higher than it would be in use and heard 'motor-boating'. I had previously fitted a 100uF capacitor when I took out the damaged battery last year. Again by trial-and-error, I found that 1000uf lowered the frequency and the repetition rate which made the noise much worse, and that a 10uF reduced the noise, so I settled for that.
The net result is that I no longer notice any background noise when listening to speech or music at normal volume settings.