Skip to content
Commit 5010b924 authored by premathasara's avatar premathasara
Browse files

AGC tuning change and enable AGC for SBA SPAR 1TC



This commit has two changes:
A tuning change has been done to fix a clicking artifact (of which is described in the issue #168.)
The changes include:
- Limiting the attack/release done per frame to 6dB
  - In the code, this attack/release amount is configurable at compile time using the `DBSTEP` macro
- Always distributing the total amount of attack/release to be done across a maximum of 3 frames
- Removing hard transition cases and instead always doing a smooth transition

These changes are bit exact for signals that do not become OOR inside the encoder. However the changes are, of course, not bit exact for non-OOR signals.

AGC will be enabled by default when 1 transport channel is used and in SBA mode. This translates to bitrates of 24.4 and 32kbps in SBA. It is enabled only in these modes, because these are the modes where we know out of range signals can occur, and because degradations are known to occur for the 1 transport channel case. Further explanation is done in issue #168. Otherwise AGC is disabled.
In the command line, a user can force agc to be enabled or disabled using the `-agc` flag. If a user does not specify the `-agc` flag, then the default behaviour will be done.

Additional tests have been added, where for any test in `tests/test_sba_bs_dec_plc.py` and `tests/test_sba_bs_enc.py` which had agc has a paramaeter, agc undefined case was added. For any other existing tests which had set AGC to off, it has been changed to be AGC undefined to maintain the previous intent.
For the python files touched, small editorial changes were made to comply with the pep8 standard.

Co-authored-by: default avatarBenjamin McDonald <benjamin.mcdonald@dolby.com>
Co-authored-by: default avatarPanji Setiawan <panji.setiawan@dolby.com>
parent b59d9282
Loading
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment