Overview
Converts from linear units to decibels using a fast approximation
Discussion
Converts from linear units to decibels (db20) using a polynomial approximation. The function uses a 3rd order polynomial and the maximum error over the entire input range is 0.003 dB.
Type Definition
typedef struct _ModuleDb20Approx { ModuleInstanceDescriptor instance; // Common Audio Weaver module instance structure } ModuleDb20ApproxClass;
Pins
Input Pins
Name: in
Description: Input signal
Data type: float
Channel range: Unrestricted
Block size range: Unrestricted
Sample rate range: Unrestricted
Complex support: Real
Output Pins
Name: out
Description: Output signal
Data type: float
MATLAB Usage
File Name: db20_approx_module.m
M=db20_approx_module(NAME) Creates an Audio Weaver module that computes the function 20*log10(abs(x)) using a polynomial approximation. This converts from linear units to decibels. The approximation is accurate to 7.984884e-003 dB. NAME - name of the module.