Proposal DC Management

From Audacity Wiki
Revision as of 23:59, 26 October 2012 by Galeandrews (talk | contribs) (I "think" we still want to add the DC offset hint here for those who search for "offset" in Wiki and land straight here?)
Jump to: navigation, search
Proposal pages help us get from feature requests into actual plans. This page is a proposal for automatically removing DC bias.
Proposal pages are used on an ongoing basis by the Audacity development team and are open to edits from visitors to the wiki. They are a good way to get community feedback on a proposal.


  • Note: Proposals for Google Summer of Code projects are significantly different in structure, are submitted via Google's web app and may or may not have a corresponding proposal page.
Warning icon
  • A waveform with DC offset should be corrected at once by running Effect > Normalize with the option checked "Remove any DC offset (center on 0 vertically)". Uncheck the "Normalize maximum amplitude..." box unless you want to run Normalize as well - see here for what Normalize does and when to use it.
  • An alternative method is to use dcRemove in the plugin.org.uk suite of LADPSA plug-ins for Windows, Mac or Linux. This removes the DC (0 Hz) component from the audio, using a high pass filter.


Note: Removing offset after the event does not reinstate the original loss of headroom, so you should still correct the DC problem at source.

Newer Windows PCs may have a DC offset cancellation feature when recording from the built-in sound inputs. To check or enable:

  1. Right-click over the speaker icon in the System Tray > Recording Devices, or click Start > Control Panel > Hardware and Sound > Sound, then the "Recording" tab
  2. Right-click over empty space, show disabled and disconnected devices, then right-click over each device and enable it
  3. Right-click or select each device, choose "Properties" then look in the "Enhancements" tab
  4. If there is no "Enhancements" tab, look in the sound device's own control panel in "Hardware and Sound".


Proposed Feature

The proposal is an option (defaulted to on) to apply a low frequency high-pass filter to all audio in Audacity so that DC offset is removed.


Developer Backing

  • None so far.


Use Cases

  • For most users of Audacity for audio processing:
    • DC offset is not audible (so may not be corrected by the user) but reduces headroom for subsequent processing
    • Differences in DC offset cause unwanted clicks where audio is tacked together
  • It is suggested that where a waveform is inherently asymmetrical, such as in recordings of brass instruments, Audacity's DC removal method (making the average positive and negative sample values equal) may create an offset.


Background

DC offset is an offsetting of a signal from zero. On the Audacity waveform it would mean that the waveform in default view appears not to be centred on the 0.0 horizontal line.

This page contains detailed discussion about better management of DC offset, which is asked for on Feature Requests.


  • A sound that has DC offset will not be at its loudest possible volume when normalized (because the offset consumes headroom). This problem can possibly extend to the mix as a whole, since a sound with DC offset and a sound without DC offset will have DC offset when mixed.


  • DC offset can cause inaudible low level distortion (which becomes audible when other filters are applied or if the sound is compressed upon export)


  • It can cause audible clicks at the start and end of tracks when played back (even without editing)
Left and right channels of a recording displaying serious DC offset

The cause is almost always a fixed voltage offset before the analogue signal is converted to digital values. This voltage is known as a DC offset, and is normally so small as to not be noticeable, but with defective or poor quality hardware it may become big enough to to be a problem. This can also happen if another piece of equipment in the audio chain is defective and producing a large voltage with is being fed through to the computer.