STBassManager
Overview
ST Bass Manager
Discussion
The Bass Manager (BAM) module has the function of modifying the low-frequency part of a stereo signal. It is possible to configure the cross-over cut-off frequency and to amplify or attenuate the bass signal. The modified low-frequency content can be mixed back with the rest of the signal or output as a third signal. Implementation uses 32 bits resolution for all computations, and can be used with 32 bits input/output format at a sampling frequency of 48 kHz. with a minimum input frame size of 96 and a maximum input frame size of 480 stereo samples. This limitation corresponds to 10ms scheduling at 48 kHz sampling frequency.
Output Mode:
1 = output is a 2.0 configuration
2 = output is a 2.1 configuration (Left and Right channels are kept with low frequencies filtered out)
3 = output is a 2.1 configuration (Left and Right channel are not modified)
Type Definition
typedef struct _ModuleSTBassManager
{
ModuleInstanceDescriptor instance; // Common Audio Weaver module instance structure
INT32 nAPIResult; // Return status for last call into the ST API
INT32 outputMode; // Output mode (1 - Stereo, 2 - 2.1 with LFE, 3 - 2.1 without LFE
INT32 limiterReleaseTime; // Limiter release time in Ms (1ms:900ms)
INT32 bassVol; // Bass volume in dB (-24dB:+24dB, 1dB step)
INT32 freqXOver; // Crossover frequency in Hz
INT32 enable; // Block enable
INT32 limiterEnable; // Limiter enable
void * pGlobals; // Points to the global variables structure
} ModuleSTBassManagerClass;
Variables
Properties
Name | Type | Usage | isHidden | Default value | Range | Units |
nAPIResult | int | state | 0 | 0 | Unrestricted | |
outputMode | int | const | 0 | 1 | Unrestricted | |
limiterReleaseTime | int | parameter | 0 | 200 | 1:1:900 | msec |
bassVol | int | parameter | 0 | 0 | -24:1:24 | dB |
freqXOver | int | parameter | 0 | 100 | Unrestricted | Hz |
enable | int | parameter | 0 | 1 | 0:1:1 | |
limiterEnable | int | parameter | 0 | 1 | 0:1:1 | |
pGlobals | void * | state | 1 | Unrestricted |
Pins
Input Pins
Name: in
Description: audio input
Data type: fract32
Channel range: 2
Block size range: 96:480
Sample rate range: Unrestricted
Complex support: Real
Output Pins
Name: out
Description: audio output
Data type: fract32
MATLAB Usage
File Name: st_bass_manager_module.m
M = st_bass_manager_module(NAME, OUTPUT_MODE)
Audio Weaver wrapper for the ST Bass Manager module. Arguments:
NAME - name of the module.
OUTPUT_MODE - (1, 2, or 3)
BAM_OUTPUT_MODE_2_0 1 (default)
BAM_OUTPUT_MODE_2_1_WITH_LFE_SPLIT 2
BAM_OUTPUT_MODE_2_1_WITHOUT_LFE_SPLIT 3
Copyright (c) 2017 DSP Concepts, Inc. All Rights Reserved.
Author: Chris Perry