This patch cleans up the scripts and improves the accuracy of speaker
case with more carefully set manual equalizer design parameters.
Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
This patch adds checks into places where Octave and Matlab handle
the used functions differently. In previous version the difference
in bilinear transform caused IIR designs to fail totally in Matlab.
There remains an issue with IIR EQs design with Matlab. In that case
a warning text is printed since the problem with tf2sos() does not happen
with all designs (example_spk_eq is impacted). It will be investigated
and fixed later. The problem does not happen with Octave.
Equalizer defaults had accidentally by default boost of one dB compared
to desired filter scaling. the offset (norm_offs_db) is now restored to
0.
In parametric equalizers design renamed BW to Q for the correct purpose
(peaking filter Q-value).
Fixed bug in filters normalization where loudness based scaling of IIR
filters was using calculated value for the FIR part.
Also cleaned up lot commented out lines and simplified some functions
parameters usage.
Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
This patch adds support to SOFT to setup FIR and IIR equalizer types.
The examples scripts for simple FIR loudness effect, IIR loudness effect
and speaker equalization case demonstrate the usage of the tool. The
output ".txt" files will be possible to apply with alsactl to setup
the equalizers in SOF.
Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
This patch adds the scripts src_std_int32.m and src_tiny_int16.m those
were used to create the conversions matrices for the default and tiny
profiles. The scripts call the included src_generate function that
does the task with help from the filter design and coefficients
export utilities.
The quality and resources consumption of SRC can be customized with
this tool.
Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>