Removing DC offset adds noise
Posted: Sun Aug 21, 2011 3:37 pm
I am running Audacity 1.3.12-beta on Debian Squeeze using the on-board sound which Alsamixer reports as an ATI IXP card with a Realtek ALC658D chip. I am trying to record some Minidiscs using an analogue cable from the Minidisc headphone out to the computer's line in. With the Minidisc volume on full, and the line-in capture level very low (everything else muted, of course) the results are surprisingly good. Really very good, in fact, with very little noise or hum indeed. There is only one problem: a small DC offset of around -42dB on both channels. I have never seen on-board sound, or a cheap sound card, where this was did not happen.
Of course I can easily run the recordings through Audacity's normalize filter to remove this DC bias; it's small enough that I lose minimal volume (do I mean range? gain? -- sorry, I'm not an expert!) by doing so. But the problem is that the DC offset removal (with no normalization) seems to be adding white noise. If I record a few seconds of silence from the line in, then select a chunk in the middle and just remove the DC offset from that, when I play the whole thing back I hear almost complete silence, except in the middle chunk, where there is noticeably higher noise.
Does anyone have any idea what's going on? I thought the DC offset removal filter would in effect subtract (or add) the same fixed value from every sample in the file, to lower (or raise, depending on the offset) the entire wave a little. How can this add noise?
I've tried the alternative high-pass filter method for removing the DC bias and this, too, adds noise, which fades in as the wave curves down from its original offset position to the zero line. Also recording as 16-bit or 32-bit float makes no difference.
I would be very grateful for any ideas on how to overcome this, as frankly the slightly pop at the beginning and end of playback (owing to the DC offset) is preferable in my mind to the noise added by removing it. But I'd obviously rather have neither pops nor hiss!
Cheers
Alan
Of course I can easily run the recordings through Audacity's normalize filter to remove this DC bias; it's small enough that I lose minimal volume (do I mean range? gain? -- sorry, I'm not an expert!) by doing so. But the problem is that the DC offset removal (with no normalization) seems to be adding white noise. If I record a few seconds of silence from the line in, then select a chunk in the middle and just remove the DC offset from that, when I play the whole thing back I hear almost complete silence, except in the middle chunk, where there is noticeably higher noise.
Does anyone have any idea what's going on? I thought the DC offset removal filter would in effect subtract (or add) the same fixed value from every sample in the file, to lower (or raise, depending on the offset) the entire wave a little. How can this add noise?
I've tried the alternative high-pass filter method for removing the DC bias and this, too, adds noise, which fades in as the wave curves down from its original offset position to the zero line. Also recording as 16-bit or 32-bit float makes no difference.
I would be very grateful for any ideas on how to overcome this, as frankly the slightly pop at the beginning and end of playback (owing to the DC offset) is preferable in my mind to the noise added by removing it. But I'd obviously rather have neither pops nor hiss!
Cheers
Alan