Goto: [ usage | examples | source ]

dcblock is a filter which removes very low frequencies from a soundfile. A good use for the dc-blocking filter is to remove a DC offset (0 Hertz frequency) from a sound recorded with a microphone which might have added a constant voltage offset. For example, here is a picture of a soundfile on the left which has a noticeable dc offset. The picture of the same sound on the right has been passed through the DC-blocking filter, and is now centered around rather than above the zero line.

[sound with dc offset] [sound with no dc offset]
The degree to which low frequencies are blocked is determined by the parameter specified by the -p option. A typical value for -p is around 0.995 which is the default for the program. Lower values given with the -p options attenuate more frequencies. Here is a graph showing attenuation for various pole locations, a, which can be given to the -p option:

[dcblock attenuation values]

Pole values can be given either as a single number or as a time-varying envelope. As a complex function, the DC-blocking filter consists of a single zero located at z=1, and a pole located on the real axis somewhat close to the zero (usually around z=0.995):

[dcblock zplane]
Here is the flowgraph of a DC-blocking filter:

[dcblock flowgraph]

If no input soundfile is specified as an argument to the dcblock program, then whitenoise will be generated as an input signal.