Document toolboxDocument toolbox

(8.D.2.7) EmphasisFilterFract32

Overview

Audio pre- and de-emphasis

Discussion

Implements pre-emphasis and de-emphasis filters. These are first order recursive filters which are used in a variety of applications, typically for noise reduction. The pre-emphasis filter boosts high frequencies while the de-emphasis filter reduces high frequencies in a complementary fashion. The filters are designed so that a cascade of a pre-emphasis and de-emphasis filter with the same tau setting cancel each other out perfectly.

The cutoff frequency of the filter is specified via a time constant tau. tau is specified in microseconds and the 3 dB frequency is related to tau by the formula $f_c = \frac{1}{2*\pi*\tau}.$

Typical time constants are:

50 usec for US and Korean FM

75 usec for all other FM

The .filterType variable specifies the behavior of the module. If .filterType = 0, then the filter is bypassed (no change). If .filterType = 1, then the filter implements pre-emphasis (boost high frequencies). If .filterType = 2, then the filter implements de-emphasis (reduce high frequencies).

Type Definition

typedef struct _ModuleEmphasisFilterFract32 { ModuleInstanceDescriptor instance; // Common Audio Weaver module instance structure INT32 filterType; // Specifies whether the filter implements bypass (=0) pre-emphasis (=1) or de-emphasis (=2) FLOAT32 tau; // Time constant of the filter awe_modBiquadSmoothedFract32Instance *filt; // 2nd order smoothly updating IIR filter } ModuleEmphasisFilterFract32Class;

Variables

Properties

Name

Type

Usage

isHidden

Default value

Range

Units

filterType

int

parameter

0

0

0:2

 

tau

float

parameter

0

75

0:10000

microseconds

Pins

Input Pins

Name: in

Description: Audio input

Data type: fract32

Channel range: Unrestricted

Block size range: Unrestricted

Sample rate range: Unrestricted

Complex support: Real

Output Pins

Name: out

Description: Audio output

Data type: fract32

MATLAB Usage

File Name: emphasis_filter_fract32_module.m

SYS = emphasis_filter_fract32_module(NAME) Creates a second order filter module which implements audio pre- and de-emphasis. Arguments: NAME - name of the module.

Â