Skip to content

Enable AGC for SBA SPAR in low bit rate (1 TC) modes to avoid quality loss due to out of range signals generated within the encoder.

AGC is current diabled in PC baseline because further tuning and testing was required before it is enabled. Such tasks have been completed and is outlined in the PDF attached in this ticket.

AGC has been shown to provide benefit in the form of protecting out of range signals hitting the core coder used in 24.4 and 32kbps, 1 transport channel case. We also know of at least 3 ways in which out of range signals can occur in the SBA encoder with the merged SPAR+DIRAC system. Details of this is outlined in the PDF. For these reasons, we should enable AGC for 24.4 and 32kbps.

During testing of the AGC, a bug has been found where click artifacts occur. This occurs when AGC decides a large sharp transition is required. Such sharp transitions are not coded well by the core coder, and results in a click artifact when the AGC is undone in the decoder side. Further explanation and proposed tuning changes are described in the PDF.

AGC_Tuning_and_Verification.pdf

The benefit of AGC can also be seen in the attached vector, where the vector is provided as an input into the encoder. The distortion is obvious when the word "signal" is uttered. voice_object1_FOA_single_int_voice

See following commands to reproduce the issue:

AGC off

./IVAS_cod -no_delay_cmp -sba +1 –agc 0 32000 48 voice_object1_FOA_single_int.wav out.pkt
./IVAS_dec -no_delay_cmp FOA 48 out.pkt out_noagc.wav

out_noagc

AGC on

./IVAS_cod -no_delay_cmp -sba +1 –agc 1 32000 48 voice_object1_FOA_single_int.wav out.pkt
./IVAS_dec -no_delay_cmp FOA 48 out.pkt out_agc.wav

out_agc

Edited by premathasara