(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.
Â