diff --git a/Workspace_msvc/lib_debug.vcxproj b/Workspace_msvc/lib_debug.vcxproj
index ef9c58a89b4c4818ed2eef065e2e642903b850c4..f29b302f7879a38d5c6007c49e9196ab21417014 100644
--- a/Workspace_msvc/lib_debug.vcxproj
+++ b/Workspace_msvc/lib_debug.vcxproj
@@ -102,14 +102,9 @@
-
-
-
-
-
diff --git a/apps/ambi_converter.c b/apps/ambi_converter.c
index 84f3192389c79ffd54c5d2545677ed8e5642c20e..2b2a87a26138d42c5e6cd5e56b6f5795983502f1 100644
--- a/apps/ambi_converter.c
+++ b/apps/ambi_converter.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
#include
diff --git a/apps/decoder.c b/apps/decoder.c
index 1bb6db63a40da0b49126d8287046c3a84f5763ce..cce7b165cb67610441048d8f7f2ac9852816bdcf 100644
--- a/apps/decoder.c
+++ b/apps/decoder.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include "lib_dec.h"
#include "options.h"
@@ -59,18 +31,13 @@
* Local constants
*------------------------------------------------------------------------------------------*/
-#if !defined( DEBUGGING ) && !defined( WMOPS )
+#if !defined( WMOPS )
static
#endif
int32_t frame = 0; /* Counter of frames */
#define RANDOM_INITSEED_DEC ( 0xFADE )
-#ifdef DEBUGGING
-#define MIN_NUM_BITS_ACTIVE_FRAME 56
-#define NUM_BITS_SID_IVAS_5K2 104
-#endif
-
/*------------------------------------------------------------------------------------------*
* Local structure for storing cmdln arguments
@@ -159,21 +126,10 @@ typedef struct
static bool parseCmdlIVAS_dec( int16_t argc, char **argv, DecArguments *arg );
static void usage_dec( void );
-#ifdef FIX_FLOAT_1539_G192_FORMAT_SWITCH
static ivas_error decodeG192( DecArguments arg, BS_READER_HANDLE hBsReader, IVAS_DEC_HRTF_BINARY_WRAPPER *hHrtfBinary, RotFileReader *headRotReader, RotFileReader *externalOrientationFileReader, RotFileReader *refRotReader, Vector3PairFileReader *referenceVectorReader, ObjectEditFileReader *objectEditFileReader, ISAR_SPLIT_REND_BITS_DATA *splitRendBits, IVAS_DEC_HANDLE *phIvasDec, int16_t *pcmBuf );
-#else
-static ivas_error decodeG192( DecArguments arg, BS_READER_HANDLE hBsReader, IVAS_DEC_HRTF_BINARY_WRAPPER *hHrtfBinary, RotFileReader *headRotReader, RotFileReader *externalOrientationFileReader, RotFileReader *refRotReader, Vector3PairFileReader *referenceVectorReader, ObjectEditFileReader *objectEditFileReader, ISAR_SPLIT_REND_BITS_DATA *splitRendBits, IVAS_DEC_HANDLE hIvasDec, int16_t *pcmBuf );
-#endif
-#ifdef FIX_FMSW_DEC
static ivas_error decodeVoIP( DecArguments arg, BS_READER_HANDLE hBsReader, IVAS_DEC_HRTF_BINARY_WRAPPER *hHrtf, RotFileReader *headRotReader, RotFileReader *externalOrientationFileReader, RotFileReader *refRotReader, Vector3PairFileReader *referenceVectorReader, ObjectEditFileReader *objectEditFileReader, ISAR_SPLIT_REND_BITS_DATA *splitRendBits, IVAS_DEC_HANDLE *phIvasDec, int16_t *pcmBuf );
-#else
-static ivas_error decodeVoIP( DecArguments arg, BS_READER_HANDLE hBsReader, IVAS_DEC_HRTF_BINARY_WRAPPER *hHrtf, RotFileReader *headRotReader, RotFileReader *externalOrientationFileReader, RotFileReader *refRotReader, Vector3PairFileReader *referenceVectorReader, ObjectEditFileReader *objectEditFileReader, ISAR_SPLIT_REND_BITS_DATA *splitRendBits, IVAS_RENDER_CONFIG_DATA *renderConfig, IVAS_DEC_HANDLE *phIvasDec, int16_t *pcmBuf );
-#endif
static ivas_error load_hrtf_from_file( IVAS_DEC_HRTF_BINARY_WRAPPER *hHrtfBinary, IVAS_DEC_HANDLE hIvasDec, const IVAS_AUDIO_CONFIG OutputConfig, const int32_t output_Fs );
static void do_object_editing_fx( IVAS_EDITABLE_PARAMETERS *editableParameters, ObjectEditFileReader *objectEditFileReader );
-#ifndef FIX_FMSW_DEC
-static ivas_error restartDecoder( IVAS_DEC_HANDLE *phIvasDec, const IVAS_DEC_MODE decMode, DecArguments *arg, IVAS_RENDER_CONFIG_DATA *renderConfig, IVAS_CUSTOM_LS_DATA *hLsCustomData );
-#endif
/*------------------------------------------------------------------------------------------*
@@ -507,13 +463,11 @@ int main(
goto cleanup;
}
-#ifdef FIX_2500_RENDCONF_REFACTOR
if ( RenderConfigReader_checkValues( renderConfigReader ) != IVAS_ERR_OK )
{
fprintf( stderr, "Invalid renderer configuration parameters\n\n" );
goto cleanup;
}
-#endif
aeCount = RenderConfigReader_getAcousticEnvironmentCount( renderConfigReader );
if ( aeCount > 0 )
@@ -593,27 +547,11 @@ int main(
if ( arg.outputConfig == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB )
{
-#ifdef FIX_2500_RENDCONF_REFACTOR
if ( ( error = IVAS_DEC_GetAcousticEnvironment( hIvasDec, aeID, &renderConfig.roomAcoustics ) ) != IVAS_ERR_OK )
{
fprintf( stderr, "Failed to get acoustic environment with ID: %d\n\n", aeID );
goto cleanup;
}
-#else
- if ( ( error = IVAS_DEC_GetAcousticEnvironment( hIvasDec, aeID, &renderConfig.roomAcoustics ) ) == IVAS_ERR_OK )
- {
- if ( RenderConfigReader_checkValues( &renderConfig ) != IVAS_ERR_OK )
- {
- fprintf( stderr, "Invalid reverberation configuration parameters\n\n" );
- goto cleanup;
- }
- }
- else
- {
- fprintf( stderr, "Failed to get acoustic environment with ID: %d\n\n", aeID );
- goto cleanup;
- }
-#endif
}
/* ISAR frame size is set from command line, not renderer config file.
@@ -690,19 +628,11 @@ int main(
if ( arg.voipMode )
{
-#ifdef FIX_FMSW_DEC
error = decodeVoIP( arg, hBsReader, &hHrtfBinary, headRotReader, externalOrientationFileReader, refRotReader, referenceVectorReader, objectEditFileReader, &splitRendBits, &hIvasDec, pcmBuf );
-#else
- error = decodeVoIP( arg, hBsReader, &hHrtfBinary, headRotReader, externalOrientationFileReader, refRotReader, referenceVectorReader, objectEditFileReader, &splitRendBits, &renderConfig, &hIvasDec, pcmBuf );
-#endif
}
else
{
-#ifdef FIX_FLOAT_1539_G192_FORMAT_SWITCH
error = decodeG192( arg, hBsReader, &hHrtfBinary, headRotReader, externalOrientationFileReader, refRotReader, referenceVectorReader, objectEditFileReader, &splitRendBits, &hIvasDec, pcmBuf );
-#else
- error = decodeG192( arg, hBsReader, &hHrtfBinary, headRotReader, externalOrientationFileReader, refRotReader, referenceVectorReader, objectEditFileReader, &splitRendBits, hIvasDec, pcmBuf );
-#endif
}
if ( error == IVAS_ERR_OK || error == IVAS_ERR_END_OF_FILE )
@@ -1675,11 +1605,7 @@ static void resetHeadRotation(
pPos[i].x_fx = 0;
pPos[i].y_fx = 0;
pPos[i].z_fx = 0;
-#ifdef FIX_BASOP_2023_TDREND_DISTATT_PRECISION
pPos[i].q_fact = 31;
-#else
- pPos[i].q_fact = 25;
-#endif
}
return;
@@ -2034,11 +1960,7 @@ static ivas_error decodeG192(
Vector3PairFileReader *referenceVectorReader,
ObjectEditFileReader *objectEditFileReader,
ISAR_SPLIT_REND_BITS_DATA *splitRendBits,
-#ifdef FIX_FLOAT_1539_G192_FORMAT_SWITCH
IVAS_DEC_HANDLE *phIvasDec,
-#else
- IVAS_DEC_HANDLE hIvasDec,
-#endif
int16_t *pcmBuf )
{
@@ -2046,9 +1968,7 @@ static ivas_error decodeG192(
uint16_t bit_stream[IVAS_MAX_BITS_PER_FRAME + 4 * 8];
int16_t i, num_bits;
int16_t bfi = 0;
-#ifdef FIX_FLOAT_1539_G192_FORMAT_SWITCH
IVAS_DEC_HANDLE hIvasDec = *phIvasDec;
-#endif
AudioFileWriter *afWriter = NULL;
MasaFileWriter *masaWriter = NULL;
bool decodedGoodFrame = false;
@@ -2072,21 +1992,8 @@ static ivas_error decodeG192(
int16_t isSplitRend, isSplitCoded;
IVAS_RENDER_CONFIG_DATA renderConfig;
RenderConfigReader *renderConfigReader = NULL;
-#ifdef FIX_FLOAT_1539_G192_FORMAT_SWITCH
bool restartNeeded;
-#endif
-#ifdef VARIABLE_SPEED_DECODING
- if ( arg.tsmEnabled )
- {
- if ( ( error = IVAS_DEC_EnableTsm( hIvasDec ) ) != IVAS_ERR_OK )
- {
- fprintf( stderr, "\nError in IVAS_DEC_EnableTsm, code: %d\n", error );
- return error;
- }
- }
-
-#endif
if ( ( error = IVAS_DEC_is_split_rendering_enabled( hIvasDec, &isSplitRend ) ) != IVAS_ERR_OK )
{
fprintf( stderr, "\nError in IVAS_DEC_is_split_rendering_enabled, code: %d\n", error );
@@ -2125,13 +2032,11 @@ static ivas_error decodeG192(
goto cleanup;
}
-#ifdef FIX_2500_RENDCONF_REFACTOR
if ( RenderConfigReader_checkValues( renderConfigReader ) != IVAS_ERR_OK )
{
fprintf( stderr, "Invalid renderer configuration parameters\n\n" );
goto cleanup;
}
-#endif
}
for ( i = 0; i < IVAS_MAX_NUM_OBJECTS; ++i )
@@ -2294,27 +2199,11 @@ static ivas_error decodeG192(
arg.aeSequence.selected = 0;
}
arg.aeSequence.frameCounter = 0;
-#ifdef FIX_2500_RENDCONF_REFACTOR
if ( ( error = RenderConfigReader_getAcousticEnvironment( renderConfigReader, arg.aeSequence.pID[arg.aeSequence.selected], &renderConfig.roomAcoustics ) ) != IVAS_ERR_OK )
{
fprintf( stderr, "Failed to get acoustic environment with ID %d\n\n", arg.aeSequence.pID[arg.aeSequence.selected] );
goto cleanup;
}
-#else
- if ( ( error = RenderConfigReader_getAcousticEnvironment( renderConfigReader, arg.aeSequence.pID[arg.aeSequence.selected], &renderConfig.roomAcoustics ) ) == IVAS_ERR_OK )
- {
- if ( RenderConfigReader_checkValues( &renderConfig ) != IVAS_ERR_OK )
- {
- fprintf( stderr, "Invalid acoustic environment configuratoin parameters\n\n" );
- goto cleanup;
- }
- }
- else
- {
- fprintf( stderr, "Failed to get acoustic environment with ID %d\n\n", arg.aeSequence.pID[arg.aeSequence.selected] );
- goto cleanup;
- }
-#endif
if ( ( error = IVAS_DEC_FeedRenderConfig( hIvasDec, renderConfig ) ) != IVAS_ERR_OK )
{
fprintf( stderr, "\nIVAS_DEC_FeedRenderConfig failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) );
@@ -2347,7 +2236,6 @@ static ivas_error decodeG192(
return error;
}
-#ifdef FIX_FLOAT_1539_G192_FORMAT_SWITCH
if ( ( error = IVAS_DEC_isRestartNeeded( hIvasDec, &restartNeeded ) ) != IVAS_ERR_OK )
{
return error;
@@ -2355,36 +2243,12 @@ static ivas_error decodeG192(
if ( restartNeeded )
{
-#ifdef FIX_FMSW_DEC
if ( ( error = IVAS_DEC_Restart( hIvasDec, IVAS_DEC_MODE_IVAS ) ) != IVAS_ERR_OK ) /* note: only switching within IVAS formats is supported in G.192 */
{
fprintf( stderr, "\nIVAS_DEC_Restart restart failed: %s\n", IVAS_DEC_GetErrorMessage( error ) );
goto cleanup;
}
-#else
- IVAS_DEC_BS_FORMAT tempFormat;
- if ( ( error = IVAS_DEC_GetFormat( hIvasDec, &tempFormat ) ) != IVAS_ERR_OK )
- {
- fprintf( stderr, "\nError in IVAS_DEC_GetFormat, code: %d\n", error );
- goto cleanup;
- }
- IVAS_DEC_MODE codecMode = ( tempFormat == IVAS_DEC_BS_MONO ) ? IVAS_DEC_MODE_EVS : IVAS_DEC_MODE_IVAS;
- error = restartDecoder(
- &hIvasDec,
- codecMode,
- &arg,
- NULL, /* ToDo : Provide rendererConfig */
- NULL /* ToDo : Provide LS Custom Data */
- );
- if ( error != IVAS_ERR_OK )
- {
- fprintf( stderr, "\nFailed to restart decoder\n" );
- goto cleanup;
- }
- *phIvasDec = hIvasDec; /* Update for main()' s free */
-#endif
}
-#endif
/* Placeholder for memory reallocation */
/* ... */
@@ -2862,9 +2726,6 @@ static ivas_error decodeVoIP(
Vector3PairFileReader *referenceVectorReader,
ObjectEditFileReader *objectEditFileReader,
ISAR_SPLIT_REND_BITS_DATA *splitRendBits,
-#ifndef FIX_FMSW_DEC
- IVAS_RENDER_CONFIG_DATA *renderConfig,
-#endif
IVAS_DEC_HANDLE *phIvasDec,
int16_t *pcmBuf )
{
@@ -3021,14 +2882,12 @@ static ivas_error decodeVoIP(
/* EVS RTP payload format has timescale 16000, JBM uses 1000 internally */
rtpTimeStamp = rtpTimeStamp / 16;
-#ifdef FIX_FMSW_DEC_2
arg.decMode = ( ivasRtp.codecId == IVAS_RTP_EVS ) ? IVAS_DEC_MODE_EVS : IVAS_DEC_MODE_IVAS;
if ( ( error = IVAS_DEC_Restart( hIvasDec, arg.decMode ) ) != IVAS_ERR_OK ) /* note: when the RTP bitstream starts with EVS, do the restart */
{
fprintf( stderr, "\nIVAS_DEC_Restart restart failed: %s\n", IVAS_DEC_GetErrorMessage( error ) );
goto cleanup;
}
-#endif
}
if ( error != IVAS_ERR_OK )
{
@@ -3062,29 +2921,12 @@ static ivas_error decodeVoIP(
/* restart decoder in case of format switching */
if ( ivasRtp.restartNeeded )
{
-#ifdef FIX_FMSW_DEC
arg.decMode = ( ivasRtp.codecId == IVAS_RTP_EVS ) ? IVAS_DEC_MODE_EVS : IVAS_DEC_MODE_IVAS;
if ( ( error = IVAS_DEC_Restart( hIvasDec, arg.decMode ) ) != IVAS_ERR_OK ) /* note: switching between EVS and IVAS is supported in RTP */
{
fprintf( stderr, "\nIVAS_DEC_Restart restart failed: %s\n", IVAS_DEC_GetErrorMessage( error ) );
goto cleanup;
}
-#else
- IVAS_DEC_MODE newDecModeInPacket = ( ivasRtp.codecId == IVAS_RTP_EVS ) ? IVAS_DEC_MODE_EVS : IVAS_DEC_MODE_IVAS;
- if ( ( error = restartDecoder(
- &hIvasDec,
- newDecModeInPacket,
- &arg,
- renderConfig,
- NULL /* ToDo : Provide LS Custom Data */
- ) ) != IVAS_ERR_OK )
- {
- fprintf( stderr, "\nFailed to restart decoder from %d to %d\n", arg.decMode, newDecModeInPacket );
- goto cleanup;
- }
-
- *phIvasDec = hIvasDec; /* Update for main()' s free */
-#endif
ivasRtp.restartNeeded = false;
bitstreamReadDone = false;
parametersAvailableForEditing = false;
@@ -3316,35 +3158,11 @@ static ivas_error decodeVoIP(
if ( restartNeeded )
{
-#ifdef FIX_FMSW_DEC
if ( ( error = IVAS_DEC_Restart( hIvasDec, IVAS_DEC_MODE_IVAS ) ) != IVAS_ERR_OK ) /* note: only switching within IVAS formats is supported in non-RTP VoIP */
{
fprintf( stderr, "\nIVAS_DEC_Restart restart failed: %s\n", IVAS_DEC_GetErrorMessage( error ) );
goto cleanup;
}
-#else
- IVAS_DEC_BS_FORMAT tempBsFormat;
- if ( ( error = IVAS_DEC_GetFormat( hIvasDec, &tempBsFormat ) ) != IVAS_ERR_OK )
- {
- fprintf( stderr, "\nError in IVAS_DEC_GetFormat, code: %d\n", error );
- goto cleanup;
- }
-
- IVAS_DEC_MODE newDecModeInPacket = ( tempBsFormat == IVAS_DEC_BS_MONO ) ? IVAS_DEC_MODE_EVS : IVAS_DEC_MODE_IVAS;
- if ( ( error = restartDecoder(
- &hIvasDec,
- newDecModeInPacket,
- &arg,
- NULL, /* ToDo : Provide rendererConfig */
- NULL /* ToDo : Provide LS Custom Data */
- ) ) != IVAS_ERR_OK )
- {
- fprintf( stderr, "\nFailed to restart decoder\n" );
- goto cleanup;
- }
-
- *phIvasDec = hIvasDec; /* Update for main()' s free */
-#endif
bitstreamReadDone = false;
parametersAvailableForEditing = false;
}
@@ -4037,110 +3855,4 @@ static ivas_error load_hrtf_from_file(
return IVAS_ERR_OK;
}
-#ifndef FIX_FMSW_DEC
-/*---------------------------------------------------------------------*
- * restartDecoder()
- *
- * Restart decoder in case of IVAS format switching
- *---------------------------------------------------------------------*/
-
-static ivas_error restartDecoder(
- IVAS_DEC_HANDLE *phIvasDec,
- const IVAS_DEC_MODE decMode,
- DecArguments *arg,
- IVAS_RENDER_CONFIG_DATA *renderConfig,
- IVAS_CUSTOM_LS_DATA *hLsCustomData )
-{
- ivas_error error = IVAS_ERR_OK;
- IVAS_DEC_HANDLE hIvasDec;
-
- if ( phIvasDec == NULL )
- {
- return IVAS_ERR_UNEXPECTED_NULL_POINTER;
- }
-
- if ( NULL != *phIvasDec )
- {
- IVAS_DEC_Close( phIvasDec );
- }
-
- if ( ( error = IVAS_DEC_Open( phIvasDec, decMode ) ) != IVAS_ERR_OK )
- {
- fprintf( stderr, "Open failed: %s\n", IVAS_DEC_GetErrorMessage( error ) );
- goto cleanup;
- }
-
- arg->decMode = decMode;
-
- hIvasDec = *phIvasDec;
-
- uint16_t aeID = arg->aeSequence.count > 0 ? arg->aeSequence.pID[0] : IVAS_DEFAULT_AEID;
-
- IVAS_AUDIO_CONFIG outputConfig = ( decMode == IVAS_DEC_MODE_IVAS ) ? arg->outputConfig : IVAS_AUDIO_CONFIG_MONO;
-
- if ( ( error = IVAS_DEC_Configure( hIvasDec, arg->output_Fs, outputConfig, arg->render_num_subframes, arg->customLsOutputEnabled, arg->hrtfReaderEnabled,
- arg->enableHeadRotation, arg->enableExternalOrientation, arg->orientation_tracking, arg->renderConfigEnabled, arg->roomSize, arg->non_diegetic_pan_enabled,
- arg->non_diegetic_pan_gain_fx, arg->dpidEnabled, aeID, arg->objEditEnabled, arg->delayCompensationEnabled ) ) != IVAS_ERR_OK )
- {
- fprintf( stderr, "\nConfigure failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) );
- goto cleanup;
- }
-
- if ( arg->outputConfig == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED || arg->outputConfig == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM )
- {
- if ( ( error = IVAS_DEC_EnableSplitRendering( hIvasDec ) ) != IVAS_ERR_OK )
- {
- fprintf( stderr, "\nSplit rendering configure failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) );
- goto cleanup;
- }
- }
-
- if ( ( error = IVAS_DEC_GetRenderNumSubfr( hIvasDec, &arg->render_num_subframes ) ) != IVAS_ERR_OK )
- {
- fprintf( stderr, "\nIVAS_DEC_GetRenderNumSubfr failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) );
- goto cleanup;
- }
-
- if ( arg->voipMode )
- {
- if ( ( error = IVAS_DEC_EnableVoIP( hIvasDec, 60, arg->inputFormat ) ) != IVAS_ERR_OK )
- {
- fprintf( stderr, "\nCould not enable VOIP: %s\n\n", IVAS_DEC_GetErrorMessage( error ) );
- goto cleanup;
- }
- }
-
- /* ISAR frame size is set from command line, not renderer config file.
- * This will be ignored if output format is not split rendering. */
- if ( renderConfig != NULL )
- {
- renderConfig->split_rend_config.isar_frame_size_ms = (int16_t) arg->render_num_subframes * 5;
- }
-
- if ( arg->renderConfigEnabled && renderConfig != NULL )
- {
- if ( ( error = IVAS_DEC_FeedRenderConfig( hIvasDec, *renderConfig ) ) != IVAS_ERR_OK )
- {
- fprintf( stderr, "\nIVAS_DEC_FeedRenderConfig failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) );
- goto cleanup;
- }
- }
-
- if ( arg->customLsOutputEnabled && hLsCustomData != NULL )
- {
- if ( ( error = IVAS_DEC_FeedCustomLsData( hIvasDec, *hLsCustomData ) ) != IVAS_ERR_OK )
- {
- fprintf( stderr, "\nIVAS_DEC_FeedCustomLsData failed: %s\n", IVAS_DEC_GetErrorMessage( error ) );
- goto cleanup;
- }
- }
-
- return IVAS_ERR_OK;
-
-cleanup:
- IVAS_DEC_Close( phIvasDec );
-
- return error;
-}
-#endif
#undef WMC_TOOL_SKIP
diff --git a/apps/encoder.c b/apps/encoder.c
index b3a35930416892f9650668243c74cfdf09d9c165..fbff2877380a49532aa5b68904176f28bcee7f8b 100644
--- a/apps/encoder.c
+++ b/apps/encoder.c
@@ -1,40 +1,9 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
-#ifdef DEBUGGING
-#include "debug.h"
-#endif
#include "stl.h"
#include "lib_enc.h"
#include "cmdl_tools.h"
@@ -49,27 +18,13 @@
#include "wmc_auto.h"
-#ifdef DEBUG_FORCE_DIR
-/* Windows does not define the S_ISREG and S_ISDIR macros in stat.h, so we do.
- We have to define _CRT_INTERNAL_NONSTDC_NAMES 1 before #including sys/stat.h
- in order for Microsoft's stat.h to define names like S_IFMT, S_IFREG, and S_IFDIR,
- rather than just defining _S_IFMT, _S_IFREG, and _S_IFDIR as it normally does. */
-#include
-#if !defined( S_ISREG ) && defined( S_IFMT ) && defined( S_IFREG )
-#define S_ISREG( m ) ( ( ( m ) & S_IFMT ) == S_IFREG )
-#endif
-#if !defined( S_ISDIR ) && defined( S_IFMT ) && defined( S_IFDIR )
-#define S_ISDIR( m ) ( ( ( m ) & S_IFMT ) == S_IFDIR )
-#endif
-#endif
-
#define WMC_TOOL_SKIP
/*------------------------------------------------------------------------------------------*
* Local constants, enums
*------------------------------------------------------------------------------------------*/
-#if !defined( DEBUGGING ) && !defined( WMOPS )
+#if !defined( WMOPS )
static
#endif
int32_t frame = 0; /* Counter of frames */
@@ -84,10 +39,6 @@ typedef union _EncInputFormatConfig
/* MONO details */
bool stereoToMonoDownmix;
-#ifdef DEBUGGING
- /* STEREO details */
- IVAS_ENC_STEREO_MODE stereoMode;
-#endif
/* ISM details */
struct EncIsmConfig
@@ -152,13 +103,6 @@ typedef struct
const char *ca_config_file;
bool mimeOutput;
IVAS_ENC_COMPLEXITY_LEVEL complexityLevel;
-#ifdef DEBUGGING
- IVAS_ENC_FORCED_MODE forcedMode;
- const char *forcedModeFile;
-#ifdef DEBUG_FORCE_DIR
- const char *forcedModeDir;
-#endif
-#endif
bool pca;
bool ism_extended_metadata;
bool rtpdumpOutput;
@@ -178,10 +122,6 @@ static bool parseCmdlIVAS_enc( int16_t argc, char *argv[], EncArguments *arg );
static void usage_enc( void );
static bool readBandwidth( FILE *file, IVAS_ENC_BANDWIDTH *bandwidth, int32_t *bandwidthFrameCounter );
static bool readBitrate( FILE *file, int32_t *bitrate );
-#ifdef DEBUGGING
-static ivas_error readForcedMode( FILE *file, IVAS_ENC_FORCED_MODE *forcedMode, int32_t *forceFrameCounter );
-static IVAS_ENC_FORCED_MODE parseForcedMode( char *forcedModeChar );
-#endif
/*------------------------------------------------------------------------------------------*
@@ -211,9 +151,6 @@ int main(
int16_t *pcmBuf = NULL;
RotFileReader *sceneOrientationFileReader = NULL;
RotFileReader *deviceOrientationFileReader = NULL;
-#ifdef DEBUGGING
- FILE *f_forcedModeProfile = NULL;
-#endif
#ifdef WMOPS
reset_wmops();
@@ -363,7 +300,6 @@ int main(
}
}
-#ifdef FIX_FMSW_DEC
/*------------------------------------------------------------------------------------------*
* Open remote requests file for rtp packing (E-bytes)
*------------------------------------------------------------------------------------------*/
@@ -383,7 +319,6 @@ int main(
goto cleanup;
}
}
-#endif
/*------------------------------------------------------------------------------------------*
* Handle Channel-aware mode
@@ -414,14 +349,6 @@ int main(
goto cleanup;
}
-#ifdef SUPPORT_FORCE_TCX10_TCX20
-#ifdef DEBUGGING
- if ( arg.forcedMode == IVAS_ENC_FORCE_TCX10 && totalBitrate < 48000 )
- {
- fprintf( stderr, "Warning: Enforcing the TCX10 mode is only supported for bitrates higher or equal than 48 kbps!\n\n" );
- }
-#endif
-#endif
/*------------------------------------------------------------------------------------------*
* Configure and initialize (allocate memory for static variables) the encoder
@@ -437,11 +364,7 @@ int main(
}
break;
case IVAS_ENC_INPUT_STEREO:
-#ifdef DEBUGGING
- if ( ( error = IVAS_ENC_ConfigureForStereo( hIvasEnc, arg.inputFs, totalBitrate, arg.max_bwidth_user, bandwidth, arg.dtxConfig, arg.is_binaural, arg.inputFormatConfig.stereoMode ) ) != IVAS_ERR_OK )
-#else
if ( ( error = IVAS_ENC_ConfigureForStereo( hIvasEnc, arg.inputFs, totalBitrate, arg.max_bwidth_user, bandwidth, arg.dtxConfig, arg.is_binaural ) ) != IVAS_ERR_OK )
-#endif
{
fprintf( stderr, "\nIVAS_ENC_ConfigureForStereo failed: %s\n\n", IVAS_ENC_GetErrorMessage( error ) );
goto cleanup;
@@ -589,20 +512,6 @@ int main(
}
}
-#ifdef DEBUGGING
- IVAS_ENC_FORCED_MODE forcedMode = arg.forcedMode;
- int32_t force_profile_cnt = 0;
-
- if ( arg.forcedModeFile )
- {
- if ( ( f_forcedModeProfile = fopen( arg.forcedModeFile, "rb" ) ) == NULL )
- {
- fprintf( stderr, "\nError: Incorrect mode specification or the profile file could not be opened: %s\n\n", arg.forcedModeFile );
- usage_enc();
- goto cleanup;
- }
- }
-#endif
/*------------------------------------------------------------------------------------------*
* Allocate input data buffer
@@ -678,19 +587,6 @@ int main(
}
}
-#ifndef FIX_FMSW_DEC
- /*------------------------------------------------------------------------------------------*
- * Open remote requests file for rtp packing (E-bytes)
- *------------------------------------------------------------------------------------------*/
- if ( arg.requestsFileName != NULL )
- {
- if ( ( error = RequestsFileReader_open( arg.requestsFileName, &requestsFileReader ) ) != IVAS_ERR_OK )
- {
- fprintf( stderr, "\nError: Can't open requests file %s \n\n", arg.requestsFileName );
- goto cleanup;
- }
- }
-#endif
/*------------------------------------------------------------------------------------------*
* Run the encoder
*------------------------------------------------------------------------------------------*/
@@ -793,31 +689,6 @@ int main(
}
}
-#ifdef DEBUGGING
- if ( f_forcedModeProfile )
- {
- if ( ( error = readForcedMode( f_forcedModeProfile, &forcedMode, &force_profile_cnt ) ) != IVAS_ERR_OK )
- {
- fprintf( stderr, "\nError reading from file: %s\n%s\n", arg.forcedModeFile, IVAS_ENC_GetErrorMessage( error ) );
- goto cleanup;
- }
- }
-
- /* Force mode not set when configuring, set in first frame even if not reading from file */
- if ( f_forcedModeProfile || frame == 0 )
- {
- if ( ( error = IVAS_ENC_SetForcedMode( hIvasEnc, forcedMode
-#ifdef DEBUG_FORCE_DIR
- ,
- arg.forcedModeDir
-#endif
- ) ) != IVAS_ERR_OK )
- {
- fprintf( stderr, "\nIVAS_ENC_SetForcedMode failed: %s\n\n", IVAS_ENC_GetErrorMessage( error ) );
- goto cleanup;
- }
- }
-#endif
/* Read ISM input metadata */
for ( i = 0; i < numIsmInputs; ++i )
@@ -1080,13 +951,6 @@ static bool parseCmdlIVAS_enc(
arg->rtpdumpOutput = false;
arg->sceneOrientationTrajFileName = NULL;
arg->deviceOrientationTrajFileName = NULL;
-#ifdef DEBUGGING
- arg->forcedMode = IVAS_ENC_FORCE_UNFORCED;
- arg->forcedModeFile = NULL;
-#ifdef DEBUG_FORCE_DIR
- arg->forcedModeDir = NULL;
-#endif
-#endif
arg->pca = false;
/*-----------------------------------------------------------------*
@@ -1199,83 +1063,6 @@ static bool parseCmdlIVAS_enc(
return false;
}
}
-#ifdef DEBUGGING
- /*-----------------------------------------------------------------*
- * Force specific mode
- *-----------------------------------------------------------------*/
-
- else if ( strcmp( argv_to_upper, "-FORCE" ) == 0 )
- {
- strncpy( stmp, argv[i + 1], sizeof( stmp ) );
-
- arg->forcedMode = parseForcedMode( stmp );
-
-#ifdef DEBUG_FORCE_DIR
- if ( arg->forcedMode < IVAS_ENC_FORCE_FILE )
- {
- fprintf( stdout, "Forcing codec to: %s\n", argv[i + 1] );
- }
- else if ( arg->forcedMode == IVAS_ENC_FORCE_FILE )
- {
- arg->forcedModeFile = argv[i + 1];
- fprintf( stdout, "Force switching file: %s\n", argv[i + 1] );
- }
- else if ( arg->forcedMode == IVAS_ENC_FORCE_DIR )
- {
- arg->forcedModeDir = argv[i + 1];
- fprintf( stdout, "Forcing switching directory: %s\n", argv[i + 1] );
- }
- else
- {
- fprintf( stderr, "\nError: The force switching profile file/dir %s does not exist or could not be opened!\n\n", argv[i + 1] );
- usage_enc();
- return false;
- }
-#else
- if ( arg->forcedMode == IVAS_ENC_FORCE_UNDEFINED )
- {
- arg->forcedModeFile = argv[i + 1];
- fprintf( stdout, "Force switching file: %s\n", argv[i + 1] );
- }
- else
- {
-#ifdef SUPPORT_FORCE_TCX10_TCX20
- if ( arg->forcedMode == IVAS_ENC_FORCE_TCX10 )
- {
- strcpy( stmp, "TCX10" );
- }
- else if ( arg->forcedMode == IVAS_ENC_FORCE_TCX20 )
- {
- strcpy( stmp, "TCX20" );
- }
- else
- {
- strncpy( stmp, argv[i + 1], sizeof( stmp ) );
- }
-
- fprintf( stdout, "Forcing codec to: %s\n", stmp );
-#else
- fprintf( stdout, "Forcing codec to: %s\n", argv[i + 1] );
-#endif
- }
-#endif
-
- i += 2;
- }
-#ifdef DEBUG_MODE_INFO
-#ifdef DEBUG_MODE_INFO_TWEAK
- /*-----------------------------------------------------------------*
- * Define additional subfolder for debug info output in ./res
- *-----------------------------------------------------------------*/
- else if ( strcmp( argv_to_upper, "-INFO" ) == 0 )
- {
- extern char infoFolder[FILENAME_MAX];
- strncpy( infoFolder, argv[i + 1], sizeof( infoFolder ) );
- i += 2;
- }
-#endif /* #ifdef DEBUG_MODE_INFO_TWEAK */
-#endif /* #ifdef DEBUG_MODE_INFO */
-#endif /* #ifdef DEBUGGING */
/*-----------------------------------------------------------------*
* deactivate delay compensation
@@ -1379,78 +1166,6 @@ static bool parseCmdlIVAS_enc(
{
i++;
arg->inputFormat = IVAS_ENC_INPUT_STEREO;
-
-#ifdef DEBUGGING
- if ( ( i < argc - 4 ) && argv[i][0] != 45 ) /* note: 45 corresponds to "-" */
- {
- if ( sscanf( argv[i], "%d", &tmp ) > 0 )
- {
- if ( tmp == 1 )
- {
- arg->inputFormatConfig.stereoMode = IVAS_ENC_STEREO_MODE_DFT;
- i++;
- }
- else if ( tmp == 2 )
- {
- arg->inputFormatConfig.stereoMode = IVAS_ENC_STEREO_MODE_TD;
- i++;
- }
- else if ( tmp == 3 )
- {
- arg->inputFormatConfig.stereoMode = IVAS_ENC_STEREO_MODE_MDCT_DECISION;
-#ifdef DEBUG_FORCE_MDCT_STEREO_MODE
- i++;
-
- /* force mdct stereo mode for debugging purposes */
- if ( i < argc - 4 )
- {
- if ( sscanf( argv[i], "%d", &tmp ) > 0 )
- {
- if ( tmp == 0 )
- {
- /* keep "DECISION" */
- arg->inputFormatConfig.stereoMode = IVAS_ENC_STEREO_MODE_MDCT_DECISION;
- i++;
- }
- else if ( tmp == 1 )
- {
- arg->inputFormatConfig.stereoMode = IVAS_ENC_STEREO_MODE_MDCT_FORCE_LR;
- i++;
- }
- else if ( tmp == 2 )
- {
- arg->inputFormatConfig.stereoMode = IVAS_ENC_STEREO_MODE_MDCT_FORCE_MS;
- i++;
- }
- else
- {
- fprintf( stderr, "Error: Incorrect mdct stereo coding method (%d) specified\n\n", tmp );
- usage_enc();
- return false;
- }
- }
- }
-#endif
- }
- else
- {
- fprintf( stderr, "Error: Incorrect stereo mode (%d) specified\n\n", tmp );
- usage_enc();
- return false;
- }
- }
- else
- {
- fprintf( stderr, "Error: Stereo mode not specified.\n\n" ); /* in the debugging stage */
- usage_enc();
- return false;
- }
- }
- else
- {
- arg->inputFormatConfig.stereoMode = IVAS_ENC_STEREO_MODE_UNIFIED;
- }
-#endif /* DEBUGGING */
}
else if ( strcmp( argv_to_upper, "-BINAURAL" ) == 0 )
{
@@ -2133,18 +1848,6 @@ static void usage_enc( void )
fprintf( stdout, "-pca : activate PCA in SBA format FOA at 256 kbps \n" );
fprintf( stdout, "-level level : Complexity level, level = (1, 2, 3), will be defined after characterisation. \n" );
fprintf( stdout, " Currently, all values default to level 3 (full functionality).\n" );
-#ifdef DEBUGGING
- fprintf( stdout, "-force T : Force specific mode, T = (speech, music, ACELP, GSC, TCX, HQ),\n" );
- fprintf( stdout, " alternatively, T can be a text file where each line contains \"nb_frames T\"\n" );
-#ifdef DEBUG_FORCE_DIR
- fprintf( stdout, " or T can be a directory containing external binary files for modes/parameters enforcement\n" );
-#endif
-#endif
-#ifdef DEBUG_MODE_INFO
-#ifdef DEBUG_MODE_INFO_TWEAK
- fprintf( stdout, "-info : specify subfolder name for debug output\n" );
-#endif
-#endif
fprintf( stdout, "-q : Quiet mode, no frame counters\n" );
fprintf( stdout, " default is deactivated\n" );
fprintf( stdout, "-rtpdump : RTPDump output, hf_only=1 by default. The encoder will packetize the \n" );
@@ -2246,170 +1949,4 @@ static bool readBitrate(
}
-#ifdef DEBUGGING
-/*---------------------------------------------------------------------*
- * parseForcedMode()
- *
- *
- *---------------------------------------------------------------------*/
-
-static IVAS_ENC_FORCED_MODE parseForcedMode(
- char *forcedModeChar )
-{
-#ifdef DEBUG_FORCE_DIR
- struct stat path_stat;
-#endif
-
- to_upper( forcedModeChar );
-
-#ifdef DEBUG_FORCE_DIR
- if ( ( strcmp( forcedModeChar, "SPEECH" ) == 0 ) || ( strcmp( forcedModeChar, "'SPEECH'" ) == 0 ) ||
- ( strcmp( forcedModeChar, "0" ) == 0 ) )
- {
- return IVAS_ENC_FORCE_SPEECH;
- }
- else if ( ( strcmp( forcedModeChar, "MUSIC" ) == 0 ) || ( strcmp( forcedModeChar, "'MUSIC'" ) == 0 ) || ( strcmp( forcedModeChar, "AUDIO" ) == 0 ) || ( strcmp( forcedModeChar, "'AUDIO'" ) == 0 ) || ( strcmp( forcedModeChar, "1" ) == 0 ) )
- {
- return IVAS_ENC_FORCE_MUSIC;
- }
- else if ( ( strcmp( forcedModeChar, "ACELP" ) == 0 ) || ( strcmp( forcedModeChar, "'ACELP'" ) == 0 ) )
- {
- return IVAS_ENC_FORCE_ACELP;
- }
- else if ( ( strcmp( forcedModeChar, "GSC" ) == 0 ) || ( strcmp( forcedModeChar, "'GSC'" ) == 0 ) )
- {
- return IVAS_ENC_FORCE_GSC;
- }
- if ( ( strcmp( forcedModeChar, "TCX" ) == 0 ) || ( strcmp( forcedModeChar, "'TCX'" ) == 0 )
-#ifdef SUPPORT_FORCE_TCX10_TCX20
- || ( strcmp( forcedModeChar, "TCX20" ) == 0 ) || ( strcmp( forcedModeChar, "'TCX20'" ) == 0 )
-#endif
- )
- {
-#ifdef SUPPORT_FORCE_TCX10_TCX20
- return IVAS_ENC_FORCE_TCX20;
-#else
- return IVAS_ENC_FORCE_TCX;
-#endif
- }
-#ifdef SUPPORT_FORCE_TCX10_TCX20
- if ( ( strcmp( forcedModeChar, "TCX10" ) == 0 ) || ( strcmp( forcedModeChar, "'TCX10'" ) == 0 ) )
- {
- return IVAS_ENC_FORCE_TCX10;
- }
-#endif
- else if ( ( strcmp( forcedModeChar, "HQ" ) == 0 ) || ( strcmp( forcedModeChar, "'HQ'" ) == 0 ) )
- {
- return IVAS_ENC_FORCE_HQ;
- }
- else
- {
- if ( stat( forcedModeChar, &path_stat ) != 0 )
- {
- return IVAS_ENC_FORCE_UNDEFINED;
- }
-
- /* check if the argument represents an existing file or directory */
- if ( S_ISDIR( path_stat.st_mode ) )
- {
- /* it's a directory */
- return IVAS_ENC_FORCE_DIR;
- }
- else
- {
- /* it's a file */
- return IVAS_ENC_FORCE_FILE;
- }
- }
-#else
- if ( ( strcmp( forcedModeChar, "SPEECH" ) == 0 ) || ( strcmp( forcedModeChar, "'SPEECH'" ) == 0 ) ||
- ( strcmp( forcedModeChar, "0" ) == 0 ) )
- {
- return IVAS_ENC_FORCE_SPEECH;
- }
- if ( ( strcmp( forcedModeChar, "MUSIC" ) == 0 ) || ( strcmp( forcedModeChar, "'MUSIC'" ) == 0 ) || ( strcmp( forcedModeChar, "AUDIO" ) == 0 ) || ( strcmp( forcedModeChar, "'AUDIO'" ) == 0 ) || ( strcmp( forcedModeChar, "1" ) == 0 ) )
- {
- return IVAS_ENC_FORCE_MUSIC;
- }
- if ( ( strcmp( forcedModeChar, "ACELP" ) == 0 ) || ( strcmp( forcedModeChar, "'ACELP'" ) == 0 ) )
- {
- return IVAS_ENC_FORCE_ACELP;
- }
- if ( ( strcmp( forcedModeChar, "GSC" ) == 0 ) || ( strcmp( forcedModeChar, "'GSC'" ) == 0 ) )
- {
- return IVAS_ENC_FORCE_GSC;
- }
- if ( ( strcmp( forcedModeChar, "TCX" ) == 0 ) || ( strcmp( forcedModeChar, "'TCX'" ) == 0 )
-#ifdef SUPPORT_FORCE_TCX10_TCX20
- || ( strcmp( forcedModeChar, "TCX20" ) == 0 ) || ( strcmp( forcedModeChar, "'TCX20'" ) == 0 )
-#endif
- )
- {
-#ifdef SUPPORT_FORCE_TCX10_TCX20
- return IVAS_ENC_FORCE_TCX20;
-#else
- return IVAS_ENC_FORCE_TCX;
-#endif
- }
-#ifdef SUPPORT_FORCE_TCX10_TCX20
- if ( ( strcmp( forcedModeChar, "TCX10" ) == 0 ) || ( strcmp( forcedModeChar, "'TCX10'" ) == 0 ) )
- {
- return IVAS_ENC_FORCE_TCX10;
- }
-#endif
- if ( ( strcmp( forcedModeChar, "HQ" ) == 0 ) || ( strcmp( forcedModeChar, "'HQ'" ) == 0 ) )
- {
- return IVAS_ENC_FORCE_HQ;
- }
-
- return IVAS_ENC_FORCE_UNDEFINED;
-#endif
-}
-
-
-/*---------------------------------------------------------------------*
- * readForcedMode()
- *
- *
- *---------------------------------------------------------------------*/
-
-static ivas_error readForcedMode(
- FILE *file,
- IVAS_ENC_FORCED_MODE *forcedMode,
- int32_t *forceFrameCounter )
-{
- int16_t res;
- char stmp[8];
-
- if ( *forceFrameCounter == 0 )
- {
- /* read next force and number of frames from the profile file */
- while ( ( res = (int16_t) fscanf( file, "%d %7s", forceFrameCounter, stmp ) ) != 2 && feof( file ) )
- {
- rewind( file );
- }
-
- *forcedMode = parseForcedMode( stmp );
-
- if ( *forcedMode == IVAS_ENC_FORCE_UNDEFINED )
- {
- fprintf( stderr, "Error: incorect mode specification or the force profile file could not be opened: %s\n\n", stmp );
- return IVAS_ERR_WRONG_PARAMS;
- }
-
- if ( res != 2 && !feof( file ) )
- {
- fprintf( stderr, "Error: incorrect format of the force profile file (please ensure that it does not contain any empty lines)\n\n" );
- return IVAS_ERR_WRONG_PARAMS;
- }
- }
-
- /* current profile still active, only decrease the counter */
- ( *forceFrameCounter )--;
-
- return IVAS_ERR_OK;
-}
-#endif
-
-
#undef WMC_TOOL_SKIP
diff --git a/apps/isar_post_rend.c b/apps/isar_post_rend.c
index c3fe556c8a02adc4ac7793d748f7b4a9a6e5391b..ef9d87140cd6f24cab3bb63cf922a1317dd59be2 100644
--- a/apps/isar_post_rend.c
+++ b/apps/isar_post_rend.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include "lib_isar_post_rend.h"
#include
@@ -42,9 +14,6 @@
#include "rotation_file_reader.h"
#include "split_render_file_read_write.h"
#include "split_rend_bfi_file_reader.h"
-#ifdef DEBUGGING
-#include "debug.h"
-#endif
#include "stl.h"
#include "wmc_auto.h"
#include "ivas_rtp_file.h"
@@ -63,7 +32,7 @@
#define ISAR_MAX16B_FX 32767
#define ISAR_MIN16B_FX ( -32768 )
-#if !defined( DEBUGGING ) && !defined( WMOPS )
+#if !defined( WMOPS )
static
#endif
int32_t frame = 0;
@@ -1464,17 +1433,6 @@ int main(
fprintf( stdout, "\n\nRendering of %d frames finished\n\n", frame );
-#ifdef DEBUGGING
- int32_t cnt_frames_limited, noClipping;
- if ( ( cnt_frames_limited = ISAR_POST_REND_GetCntFramesLimited( hIsarPostRend ) ) > 0 )
- {
- fprintf( stdout, "Limiter applied in %d frames.\n\n", cnt_frames_limited );
- }
- if ( ( noClipping = ISAR_POST_REND_GetNoCLipping( hIsarPostRend ) ) > 0 )
- {
- fprintf( stdout, "Clipping (saturation) detected: %d samples clipped!!!\n\n", noClipping );
- }
-#endif
/*------------------------------------------------------------------------------------------*
* Close files and deallocate resources
@@ -1506,9 +1464,6 @@ cleanup:
ISAR_POST_REND_Close( &hIsarPostRend );
-#ifdef DEBUGGING
- dbgclose();
-#endif
#ifdef WMOPS
print_wmops();
print_mem( NULL );
diff --git a/apps/renderer.c b/apps/renderer.c
index 8c48c97c6cd70fcb739f891bd3196a4fb46248ea..9bf4a4ebe1262b4834140a4183bd6b39bbd0dda7 100644
--- a/apps/renderer.c
+++ b/apps/renderer.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include "lib_rend.h"
#include "typedef.h"
@@ -76,7 +48,7 @@
#define OMASA_TDREND_MATCHING_GAIN_DB ( -2.0f )
-#if !defined( DEBUGGING ) && !defined( WMOPS )
+#if !defined( WMOPS )
static
#endif
int32_t frame = 0;
@@ -732,9 +704,6 @@ static int16_t get_cldfb_in_flag(
cldfb_in_flag = 0;
if ( renderConfig->split_rend_config.rendererSelection == IVAS_BIN_RENDERER_TYPE_FASTCONV )
{
-#ifdef DEBUGGING
- cldfb_in_flag = 1;
-#endif
if ( audioConfig == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED )
{
cldfb_in_flag = 1;
@@ -1174,7 +1143,6 @@ int main(
fprintf( stderr, "\nError in Renderer Config Init: %s\n", ivas_error_to_string( error ) );
goto cleanup;
}
-#ifdef FIX_1452_DEFAULT_REVERB
if ( args.outConfig.audioConfig == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB )
{
@@ -1220,7 +1188,6 @@ int main(
goto cleanup;
}
}
-#endif
if ( args.renderConfigFilePath[0] != '\0' )
{
@@ -1246,13 +1213,11 @@ int main(
fprintf( stderr, "\nFailed to read renderer configuration from file %s\n", args.renderConfigFilePath );
goto cleanup;
}
-#ifdef FIX_2500_RENDCONF_REFACTOR
if ( RenderConfigReader_checkValues( renderConfigReader ) != IVAS_ERR_OK )
{
fprintf( stderr, "Invalid renderer configuration parameters\n\n" );
goto cleanup;
}
-#endif
if ( ( error = RenderConfigReader_getDirectivity( renderConfigReader, args.directivityPatternId, renderConfig.directivity_fx ) ) != IVAS_ERR_OK )
{
fprintf( stderr, "Failed to get directivity patterns for one or more of IDs: %d %d %d %d\n\n", args.directivityPatternId[0], args.directivityPatternId[1], args.directivityPatternId[2], args.directivityPatternId[3] );
@@ -1266,27 +1231,11 @@ int main(
if ( args.outConfig.audioConfig == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB )
{
aeID = args.aeSequence.count > 0 ? args.aeSequence.pID[0] : IVAS_DEFAULT_AEID;
-#ifdef FIX_2500_RENDCONF_REFACTOR
if ( ( error = RenderConfigReader_getAcousticEnvironment( renderConfigReader, aeID, &renderConfig.roomAcoustics ) ) != IVAS_ERR_OK )
{
fprintf( stderr, "\nFailed to get acoustic environment with ID: %d\n\n", aeID );
goto cleanup;
}
-#else
- if ( ( error = RenderConfigReader_getAcousticEnvironment( renderConfigReader, aeID, &renderConfig.roomAcoustics ) ) == IVAS_ERR_OK )
- {
- if ( RenderConfigReader_checkValues( &renderConfig ) != IVAS_ERR_OK )
- {
- fprintf( stderr, "\nInvalid room acoustics configuration parameters\n\n" );
- goto cleanup;
- }
- }
- else
- {
- fprintf( stderr, "Failed to get acoustic environment with ID: %d\n\n", aeID );
- goto cleanup;
- }
-#endif
}
/* ISAR frame size is set from command line, not renderer config file.
@@ -1731,27 +1680,11 @@ int main(
args.aeSequence.selected = 0;
}
args.aeSequence.frameCounter = 0;
-#ifdef FIX_2500_RENDCONF_REFACTOR
if ( ( error = RenderConfigReader_getAcousticEnvironment( renderConfigReader, args.aeSequence.pID[args.aeSequence.selected], &renderConfig.roomAcoustics ) ) != IVAS_ERR_OK )
{
fprintf( stderr, "\nFailed to get acoustic environment with ID %d\n\n", args.aeSequence.pID[args.aeSequence.selected] );
goto cleanup;
}
-#else
- if ( ( error = RenderConfigReader_getAcousticEnvironment( renderConfigReader, args.aeSequence.pID[args.aeSequence.selected], &renderConfig.roomAcoustics ) ) == IVAS_ERR_OK )
- {
- if ( RenderConfigReader_checkValues( &renderConfig ) != IVAS_ERR_OK )
- {
- fprintf( stderr, "Invalid acoustic environment configuration parameters\n\n" );
- goto cleanup;
- }
- }
- else
- {
- fprintf( stderr, "Failed to get acoustic environment with ID %d\n\n", args.aeSequence.pID[args.aeSequence.selected] );
- goto cleanup;
- }
-#endif
if ( ( error = IVAS_REND_FeedRenderConfig( hIvasRend, renderConfig ) ) != IVAS_ERR_OK )
{
fprintf( stderr, "\nIVAS_REND_FeedRenderConfig failed: %s\n\n", ivas_error_to_string( error ) );
@@ -3203,11 +3136,7 @@ static void IsmPositionProvider_getNextFrame(
}
-#ifdef FIX_1548_HARMONIZE_NON_DIEGETIC_PANNING_LAW
/* Wrap azimuth to lie within (0, 360] range */
-#else
- /* Wrap azimuth to lie within (-180, 180] range */
-#endif
while ( LT_32( objectMetadataBuffer->positions[objIdx].azimuth_fx, 0 ) )
{
@@ -3218,13 +3147,11 @@ static void IsmPositionProvider_getNextFrame(
objectMetadataBuffer->positions[objIdx].azimuth_fx = L_sub( objectMetadataBuffer->positions[objIdx].azimuth_fx, DEG_360_IN_Q22 );
}
-#ifdef FIX_1548_HARMONIZE_NON_DIEGETIC_PANNING_LAW
IF( objectMetadataBuffer->positions[objIdx].non_diegetic_flag && objectMetadataBuffer->positions[objIdx].azimuth_fx >= DEG_180_IN_Q22 )
{
/* Wrap azimuth to lie within [-180, 180) range for non-diegetic panning */
objectMetadataBuffer->positions[objIdx].azimuth_fx = L_sub( objectMetadataBuffer->positions[objIdx].azimuth_fx, DEG_360_IN_Q22 );
}
-#endif
/* Clamp elevation to lie within [-90, 90] range (can't be wrapped easily) */
objectMetadataBuffer->positions[objIdx].elevation_fx = L_min( L_max( objectMetadataBuffer->positions[objIdx].elevation_fx, -DEG_90_IN_Q22 ), DEG_90_IN_Q22 );
diff --git a/lib_basop/basop32.c b/lib_basop/basop32.c
index 1b9ef845d8792aba2a0b89569d297bc7d1f8e8ca..0d1df64593e7f0c9a0d92ffe3e7a921940947739 100644
--- a/lib_basop/basop32.c
+++ b/lib_basop/basop32.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/* v.2.3 - 30.Nov.2009
=============================================================================
@@ -896,7 +868,6 @@ Word16 shr_o( Word16 var1, Word16 var2, Flag *Overflow )
Word16 shr( Word16 var1, Word16 var2 )
{
-#ifdef FIX_BASOP_2563_CRASH_HQ_GENERIC_DEC
Flag Overflow;
Word16 result;
@@ -908,9 +879,6 @@ Word16 shr( Word16 var1, Word16 var2 )
assert( 0 );
}
return result;
-#else
- return shr_o( var1, var2, NULL );
-#endif
}
Word16 shr_sat( Word16 var1, Word16 var2 )
{
diff --git a/lib_basop/basop32.h b/lib_basop/basop32.h
index 7fe294167c38a962ea16d6b8dfbbdb14cb52384b..bb702410bf6489cb28cb28890bf79f646ffb4b45 100644
--- a/lib_basop/basop32.h
+++ b/lib_basop/basop32.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*
===========================================================================
diff --git a/lib_basop/complex_basop.c b/lib_basop/complex_basop.c
index f8006ed46ac18c3a8bb5722ff8af8ab6d6ef27c7..a43932fb432f18c3b6670b4a6a4eb612f21aef88 100644
--- a/lib_basop/complex_basop.c
+++ b/lib_basop/complex_basop.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*****************************************************************************
*
diff --git a/lib_basop/complex_basop.h b/lib_basop/complex_basop.h
index bf1641e749960b5fdf2c9ee4130ebce852f39c81..4850d06638aae4d0ddf1599e94a0c2604633196f 100644
--- a/lib_basop/complex_basop.h
+++ b/lib_basop/complex_basop.h
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*****************************************************************************
*
diff --git a/lib_basop/enh1632.c b/lib_basop/enh1632.c
index f397c3432b9dc63b6a376cfb394e3efb50a82bc0..62cd872b63a5c2abe5a7bdd7a50be8844b93a266 100644
--- a/lib_basop/enh1632.c
+++ b/lib_basop/enh1632.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*
===========================================================================
File: ENH1632.C v.2.3 - 30.Nov.2009
diff --git a/lib_basop/enh1632.h b/lib_basop/enh1632.h
index f91494fb137d799d461cca6afa5bbfa5b160ba39..8bd4162a206c828a4736515073a2f82e04a7cc0d 100644
--- a/lib_basop/enh1632.h
+++ b/lib_basop/enh1632.h
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*
===========================================================================
File: ENH1632.H v.2.3 - 30.Nov.2009
diff --git a/lib_basop/enh32.c b/lib_basop/enh32.c
index d2931dd5da697b0410a425adf4163018800cd5bf..036322011979b6be85319feb320741ad2e94b98b 100644
--- a/lib_basop/enh32.c
+++ b/lib_basop/enh32.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*****************************************************************************
*
* Enhanced 32 bit operators :
diff --git a/lib_basop/enh32.h b/lib_basop/enh32.h
index 1d275cdd26834f7c04572763575f65c1d7bf00d6..cf659564708501923ea35301a005e73b8179cd1e 100644
--- a/lib_basop/enh32.h
+++ b/lib_basop/enh32.h
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#ifndef _ENH32_H
#define _ENH32_H
diff --git a/lib_basop/enh40.c b/lib_basop/enh40.c
index 57df99e5c706d64c70ceadb659e837d93f8e244c..53aec0a914fa360b54afedafad78181d3ea71853 100644
--- a/lib_basop/enh40.c
+++ b/lib_basop/enh40.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*
===========================================================================
diff --git a/lib_basop/enh40.h b/lib_basop/enh40.h
index 8cfb0c6009194f2c88e2a6713d91f3440515ce1c..d653e3ab294d002abebf0143fe6a8a1a391efd7a 100644
--- a/lib_basop/enh40.h
+++ b/lib_basop/enh40.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*
===========================================================================
diff --git a/lib_basop/enh64.c b/lib_basop/enh64.c
index 8bffb620cc8dfb0b2164e718b83fa365fb048430..543a208b549fddb8b8fa853ffbecffac3858ce12 100644
--- a/lib_basop/enh64.c
+++ b/lib_basop/enh64.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*****************************************************************************
*
* Enhanced 64 bit operators :
diff --git a/lib_basop/enh64.h b/lib_basop/enh64.h
index c3896bb0d257aa053df48da5c84948b8255e0401..e59f021764d3f80f565553d9cf01e2cd05597e0f 100644
--- a/lib_basop/enh64.h
+++ b/lib_basop/enh64.h
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#ifndef _ENH64_H
#define _ENH64_H
diff --git a/lib_basop/enhUL32.c b/lib_basop/enhUL32.c
index 5650821200a63bc8404fbb31286f78d2d60c27ef..d059836cf3b6a8bb685fd9d47517a723211f7f27 100644
--- a/lib_basop/enhUL32.c
+++ b/lib_basop/enhUL32.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*
============================================================================
File: ENHUL32.C v.1.0 - 01.July.2018
diff --git a/lib_basop/enhUL32.h b/lib_basop/enhUL32.h
index d200342b4b24e054ba0e5b92fea5b34d3ed37718..ed90e55b35c4c3fc01e0567e1b3595643698a5d3 100644
--- a/lib_basop/enhUL32.h
+++ b/lib_basop/enhUL32.h
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*
============================================================================
File: ENHUL32.H v.1.0 - 01.July.2018
diff --git a/lib_basop/move.h b/lib_basop/move.h
index 7f10031193e1add29631c97ce50536d6645966bb..73d4dea9831fba1caa6044c638674773b16741e3 100644
--- a/lib_basop/move.h
+++ b/lib_basop/move.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_basop/stl.h b/lib_basop/stl.h
index 6badc3bcfc758809a0063793ddef05fb68061813..21538b11b794a7b2771c7a024b2588a30c004e1d 100644
--- a/lib_basop/stl.h
+++ b/lib_basop/stl.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_basop/typedef.h b/lib_basop/typedef.h
index 9968d4c84cba87fc0435c0737579b64448365196..cae6b3b4779521751e324de16ffb4cbd231b40b0 100644
--- a/lib_basop/typedef.h
+++ b/lib_basop/typedef.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_basop/typedefs.h b/lib_basop/typedefs.h
index 001f3f1647c4ed00dd47fd28101a3f20a3c52c1b..e4f10fcef4a4455fe77875ffedaaf9833dd292c0 100644
--- a/lib_basop/typedefs.h
+++ b/lib_basop/typedefs.h
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*
===========================================================================
File: TYPEDEFS.H v.2.3 - 30.Nov.2009
diff --git a/lib_com/ACcontextMapping_fx.c b/lib_com/ACcontextMapping_fx.c
index 19cbea1a4b8f9b74cbbbd4a9310bc43b86dff046..b10496049e44c11ef60602d235e5b32f260c81f1 100644
--- a/lib_com/ACcontextMapping_fx.c
+++ b/lib_com/ACcontextMapping_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/ari_fx.c b/lib_com/ari_fx.c
index 32bb550b28a310bcad2612ce1ad93a32ac29d961..6827aa70030cd11d5f3deb93060ae0f61d2f3811 100644
--- a/lib_com/ari_fx.c
+++ b/lib_com/ari_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
@@ -9,27 +12,6 @@
#include "cnst.h"
-#ifndef FIX_2402_SIMPLIFY_ARI_CODEC
-/**
- * \brief 31x16 Bit multiply (x*y)
- *
- * \param[i] xh high part, bit [30..15]
- * \param[i] xl low part, 15 LSBits
- * \param[i] y
- *
- * \return x*y
- */
-Word32 L_multi31x16_X2( Word16 xh, Word16 xl, Word16 y )
-{
- Word32 z;
-
- z = L_shl( L_mult0( xh, y ), 15 );
- z = L_mac0( z, xl, y );
-
- return z;
-}
-#endif
-
/*---------------------------------------------------------------
Ari 14 bits common routines
-------------------------------------------------------------*/
diff --git a/lib_com/ari_hm_fx.c b/lib_com/ari_hm_fx.c
index e52e783f87aa6c9a5c75d10685d6a4ab2603a8ef..174555390a5ffedd4ee376a85d8247f733166eeb 100644
--- a/lib_com/ari_hm_fx.c
+++ b/lib_com/ari_hm_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/arith_coder_fx.c b/lib_com/arith_coder_fx.c
index 2467df93adce81959f72fe6f564e1b7a4d592bfe..29d8aa2631ddfe284e4e5cf543ff885594d305f8 100644
--- a/lib_com/arith_coder_fx.c
+++ b/lib_com/arith_coder_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/basop_com_lpc.c b/lib_com/basop_com_lpc.c
index 182ab57bb4589ef47c4134e06d509d7f006c1d8f..4628e02c15382c4ac413285bec3a313247a22293 100644
--- a/lib_com/basop_com_lpc.c
+++ b/lib_com/basop_com_lpc.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/basop_lsf_tools.c b/lib_com/basop_lsf_tools.c
index 9cb5d918052f186595cad20dde18395bcba7a7d8..d3c973a1ce53b3f2ee38d05e9c380db17409259e 100644
--- a/lib_com/basop_lsf_tools.c
+++ b/lib_com/basop_lsf_tools.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/basop_proto_func.h b/lib_com/basop_proto_func.h
index 845d14a27604a2a08030620bbb5be4d82dabee20..f916394d061a63b9bf11da7ec4f19d6b70e045e6 100644
--- a/lib_com/basop_proto_func.h
+++ b/lib_com/basop_proto_func.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/basop_settings.h b/lib_com/basop_settings.h
index 6d1d513a2fdd79ddd2a0dd71f2afe9e1f70ac19d..68ba0856acb4aa80ff06eba4e799ef698dbe8ea0 100644
--- a/lib_com/basop_settings.h
+++ b/lib_com/basop_settings.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/basop_tcx_utils.c b/lib_com/basop_tcx_utils.c
index 60200d9688391b78b59399f1a592a140dd8e2b8a..f2bca96357e5b956a35cae207c2b9f6cdbfd69e0 100644
--- a/lib_com/basop_tcx_utils.c
+++ b/lib_com/basop_tcx_utils.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/basop_util.c b/lib_com/basop_util.c
index 335f61c1e5d300df92356059d3064030f3db7351..0a42cf0705e0bb883e71927d2b1f65a75f5567f5 100644
--- a/lib_com/basop_util.c
+++ b/lib_com/basop_util.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/basop_util.h b/lib_com/basop_util.h
index d5283043068cc058b96c41460f52b8c63d1189dc..551e550fab8536d19131ad004d0b32e0dccbcb67 100644
--- a/lib_com/basop_util.h
+++ b/lib_com/basop_util.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/bitalloc_fx.c b/lib_com/bitalloc_fx.c
index 5dc4720470b65423ef89c72200f56a01997a60ba..53ef39deb4291d9b0b995ac73c6cd4de4ef72f46 100644
--- a/lib_com/bitalloc_fx.c
+++ b/lib_com/bitalloc_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/bitallocsum_fx.c b/lib_com/bitallocsum_fx.c
index d052b81875e95c665b9a6beda28420995760f882..b0d5e8e9e016ed9b147b9219af805a244548ad8a 100644
--- a/lib_com/bitallocsum_fx.c
+++ b/lib_com/bitallocsum_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/bits_alloc_fx.c b/lib_com/bits_alloc_fx.c
index 7201963162d9caae73d257420eecd3909cfaa3e4..1796af29a111721555b60d275a9666bdb70b0c11 100644
--- a/lib_com/bits_alloc_fx.c
+++ b/lib_com/bits_alloc_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
@@ -1746,9 +1749,6 @@ static Word16 allocate_unused(
}
ELSE
{
-#ifdef DEBUG_MODE_TD
- IVAS_ERROR( IVAS_ERR_WRONG_MODE, "unknown mode in bit_alloc.c" );
-#endif
}
max_bit_per_pos = s_min( unused_bits, sub( max_bit_per_pos, prm_bit_mode[subfr] ) );
diff --git a/lib_com/bitstream_fx.c b/lib_com/bitstream_fx.c
index 92f09b498c391e7ef8cffd0273ee5700a35bdcc8..86704e11b8599ccd2d4ce9c5fe449c116df8e641 100644
--- a/lib_com/bitstream_fx.c
+++ b/lib_com/bitstream_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
@@ -48,23 +20,7 @@
#include "wmc_auto.h"
#include "ivas_prot_fx.h"
#include "prot_fx_enc.h"
-#ifdef DEBUGGING
-#include "debug.h"
-#ifdef DBG_BITSTREAM_ANALYSIS
-#include
-#endif
-#endif
-
-#ifdef DEBUGGING
-
-#define FEC_SEED 12558
-/*-------------------------------------------------------------------*
- * Global variables
- *--------------------------------------------------------------------*/
-
-FILE *FEC_pattern = NULL; /* FEC pattern file (for simulation of FEC) */
-#endif
#define STEP_MAX_NUM_INDICES 100 /* increase the maximum number of allowed indices in the list by this amount */
@@ -359,9 +315,6 @@ ivas_error ind_list_realloc(
{
new_ind_list[i].id = old_ind_list[i].id;
new_ind_list[i].value = old_ind_list[i].value;
-#if defined( DEBUGGING ) && defined( DBG_BITSTREAM_ANALYSIS )
- strncpy( new_ind_list[i].function_name, old_ind_list[i].function_name, 100 );
-#endif
move16();
move16();
}
@@ -373,9 +326,6 @@ ivas_error ind_list_realloc(
FOR( ; i < max_num_indices; i++ )
{
new_ind_list[i].nb_bits = -1;
-#if defined( DEBUGGING ) && defined( DBG_BITSTREAM_ANALYSIS )
- sprintf( new_ind_list[i].function_name, "RESET in ind_list_realloc" );
-#endif
move16();
}
@@ -971,9 +921,6 @@ void move_indices(
move16();
move16();
-#if defined( DEBUGGING ) && defined( DBG_BITSTREAM_ANALYSIS )
- strncpy( new_ind_list[i].function_name, old_ind_list[i].function_name, 100 );
-#endif
old_ind_list[i].nb_bits = -1;
move16();
}
@@ -988,15 +935,9 @@ void move_indices(
move16();
move16();
move16();
-#if defined( DEBUGGING ) && defined( DBG_BITSTREAM_ANALYSIS )
- strncpy( new_ind_list[i].function_name, old_ind_list[i].function_name, 100 );
-#endif
old_ind_list[i].nb_bits = -1;
move16();
-#if defined( DEBUGGING ) && defined( DBG_BITSTREAM_ANALYSIS )
- sprintf( old_ind_list[i].function_name, "RESET in move_indices" );
-#endif
}
}
@@ -1026,9 +967,6 @@ ivas_error check_ind_list_limits(
/* the re-allocation can be avoided by increasing the limits in get_ivas_max_num_indices() or get_ivas_max_num_indices_metadata() */
IF( GE_16( (Word16) ( &hBstr->ind_list[hBstr->nb_ind_tot] - ivas_ind_list_zero ), *( hBstr->ivas_max_num_indices ) ) )
{
-#ifdef DEBUGGING
- fprintf( stderr, "Warning: The maximum number of indices %d has been exceeded in frame %d! Increase the limits in get_ivas_max_num_indices() or get_max_num_indices_metadata().\n", *( hBstr->ivas_max_num_indices ), frame );
-#endif
/* reallocate the buffer of indices with increased limit */
IF( NE_32( ( error = ind_list_realloc( *hBstr->ivas_ind_list_zero, *( hBstr->ivas_max_num_indices ) + STEP_MAX_NUM_INDICES, hBstr->st_ivas ) ), IVAS_ERR_OK ) )
@@ -1042,9 +980,6 @@ ivas_error check_ind_list_limits(
{
IF( hBstr->nb_ind_tot == 0 )
{
-#ifdef DEBUGGING
- fprintf( stderr, "Warning: Trying to overwrite an existing indice ID = %d in frame %d!\n", hBstr->ind_list[hBstr->nb_ind_tot].id, frame );
-#endif
/* move the pointer to the next available empty slot */
ivas_ind_list_last = &ivas_ind_list_zero[*( hBstr->ivas_max_num_indices )];
WHILE( hBstr->ind_list[0].nb_bits > 0 && hBstr->ind_list < ivas_ind_list_last )
@@ -1054,9 +989,6 @@ ivas_error check_ind_list_limits(
IF( hBstr->ind_list >= ivas_ind_list_last )
{
-#ifdef DEBUGGING
- fprintf( stderr, "Warning: The maximum number of indices %d has been exceeded in frame %d! Increase the limits in get_ivas_max_num_indices() or get_max_num_indices_metadata().\n", *( hBstr->ivas_max_num_indices ), frame );
-#endif
/* no available empty slot -> need to re-allocate the buffer */
IF( NE_32( ( error = ind_list_realloc( *hBstr->ivas_ind_list_zero, *( hBstr->ivas_max_num_indices ) + STEP_MAX_NUM_INDICES, hBstr->st_ivas ) ), IVAS_ERR_OK ) )
@@ -1067,1892 +999,13 @@ ivas_error check_ind_list_limits(
}
ELSE
{
-#ifdef DEBUGGING
- return IVAS_ERROR( IVAS_ERR_INTERNAL_FATAL, "Buffer of indices corrupted in frame %d! Attempt to overwrite indice ID = %d (value: %d, bits: %d)!\n", frame, hBstr->ind_list[hBstr->nb_ind_tot].id, hBstr->ind_list[hBstr->nb_ind_tot].value, hBstr->ind_list[hBstr->nb_ind_tot].nb_bits );
-#else
return IVAS_ERROR( IVAS_ERR_INTERNAL_FATAL, "Buffer of indices corrupted! Attempt to overwrite indice ID = %d (value: %d, bits: %d)!\n", hBstr->ind_list[hBstr->nb_ind_tot].id, hBstr->ind_list[hBstr->nb_ind_tot].value, hBstr->ind_list[hBstr->nb_ind_tot].nb_bits );
-#endif
}
}
return error;
}
-#if defined( DEBUGGING ) && defined( DBG_BITSTREAM_ANALYSIS )
-const char *named_indices_table[] = {
- "IND_IVAS_FORMAT",
- "IND_SMODE_OMASA",
- "IND_SMODE",
- "IND_SID_TYPE",
- "IND_BWIDTH",
- "IND_CORE",
- "IND_PPP_NELP_MODE",
- "IND_ACELP_16KHZ",
- "IND_ACELP_SIGNALLING",
- "IND_SHARP_FLAG",
- "IND_MDCT_CORE",
- "IND_TCX_CORE",
- "IND_BWE_FLAG",
- "IND_HQ_SWITCHING_FLG",
- "IND_LAST_L_FRAME",
- "IND_VAD_FLAG",
- "IND_HQ_BWIDTH",
- "IND_TC_SUBFR",
- "IND_TC_SUBFR",
- "IND_TC_SUBFR",
- "IND_TC_SUBFR",
- "IND_GSC_IVAS_SP",
- "IND_LSF_PREDICTOR_SELECT_BIT",
- "IND_LSF",
- "IND_LSF",
- "IND_LSF",
- "IND_LSF",
- "IND_LSF",
- "IND_LSF",
- "IND_LSF",
- "IND_LSF",
- "IND_LSF",
- "IND_LSF",
- "IND_LSF",
- "IND_LSF",
- "IND_LSF",
- "IND_LSF",
- "IND_LSF",
- "IND_LSF",
- "IND_LSF",
- "IND_MID_FRAME_LSF_INDEX",
- "IND_ISF_0_0",
- "IND_ISF_0_1",
- "IND_ISF_0_2",
- "IND_ISF_0_3",
- "IND_ISF_0_4",
- "IND_ISF_1_0",
- "IND_ISF_1_1",
- "IND_ISF_1_2",
- "IND_ISF_1_3",
- "IND_ISF_1_4",
- "IND_IC_LSF_PRED",
- "IND_GSC_ATTACK",
- "IND_GSC_SWB_SPEECH",
- "IND_NOISE_LEVEL",
- "IND_HF_NOISE",
- "IND_PIT_CONTR_IDX",
- "IND_FEC_CLAS",
- "IND_FEC_ENR",
- "IND_FEC_POS",
- "IND_ES_PRED",
- "IND_HARM_FLAG_ACELP",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "IND_ALG_CDBK_4T64_2_24KBIT",
- "TAG_ALG_CDBK_4T64_24KBIT_END",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "IND_HF_GAIN_MODIFICATION",
- "TAG_ACELP_SUBFR_LOOP_END",
- "IND_MEAN_GAIN2",
- "IND_MEAN_GAIN2",
- "IND_MEAN_GAIN2",
- "IND_MEAN_GAIN2",
- "IND_MEAN_GAIN2",
- "IND_MEAN_GAIN2",
- "IND_MEAN_GAIN2",
- "IND_MEAN_GAIN2",
- "IND_MEAN_GAIN2",
- "IND_MEAN_GAIN2",
- "IND_MEAN_GAIN2",
- "IND_MEAN_GAIN2",
- "IND_MEAN_GAIN2",
- "IND_MEAN_GAIN2",
- "IND_MEAN_GAIN2",
- "IND_MEAN_GAIN2",
- "IND_MEAN_GAIN2",
- "IND_MEAN_GAIN2",
- "IND_MEAN_GAIN2",
- "IND_MEAN_GAIN2",
- "IND_MEAN_GAIN2",
- "IND_MEAN_GAIN2",
- "IND_MEAN_GAIN2",
- "IND_MEAN_GAIN2",
- "IND_MEAN_GAIN2",
- "IND_MEAN_GAIN2",
- "IND_MEAN_GAIN2",
- "IND_MEAN_GAIN2",
- "IND_MEAN_GAIN2",
- "IND_MEAN_GAIN2",
- "IND_MEAN_GAIN2",
- "IND_MEAN_GAIN2",
- "IND_Y_GAIN_TMP",
- "IND_Y_GAIN_TMP",
- "IND_Y_GAIN_TMP",
- "IND_Y_GAIN_TMP",
- "IND_Y_GAIN_TMP",
- "IND_Y_GAIN_TMP",
- "IND_Y_GAIN_TMP",
- "IND_Y_GAIN_TMP",
- "IND_Y_GAIN_TMP",
- "IND_Y_GAIN_TMP",
- "IND_Y_GAIN_TMP",
- "IND_Y_GAIN_TMP",
- "IND_Y_GAIN_TMP",
- "IND_Y_GAIN_TMP",
- "IND_Y_GAIN_TMP",
- "IND_Y_GAIN_TMP",
- "IND_Y_GAIN_TMP",
- "IND_Y_GAIN_TMP",
- "IND_Y_GAIN_TMP",
- "IND_Y_GAIN_TMP",
- "IND_Y_GAIN_TMP",
- "IND_Y_GAIN_TMP",
- "IND_Y_GAIN_TMP",
- "IND_Y_GAIN_TMP",
- "IND_Y_GAIN_TMP",
- "IND_Y_GAIN_TMP",
- "IND_Y_GAIN_TMP",
- "IND_Y_GAIN_TMP",
- "IND_Y_GAIN_TMP",
- "IND_Y_GAIN_TMP",
- "IND_Y_GAIN_TMP",
- "IND_Y_GAIN_TMP",
- "IND_Y_GAIN_HF",
- "IND_HQ_VOICING_FLAG",
- "IND_HQ_SWB_CLAS",
- "IND_NF_IDX",
- "IND_LC_MODE",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_YNRM",
- "IND_SWB_FENV_HQ",
- "IND_SWB_FENV_HQ",
- "IND_SWB_FENV_HQ",
- "IND_SWB_FENV_HQ",
- "IND_SWB_FENV_HQ",
- "IND_FB_FENV_HQ",
- "IND_FB_FENV_HQ",
- "IND_FB_FENV_HQ",
- "IND_FB_FENV_HQ",
- "IND_FB_FENV_HQ",
- "IND_DELTA_ENV_HQ",
- "IND_HVQ_BWE_NL",
- "IND_HVQ_BWE_NL",
- "IND_NUM_PEAKS",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_POS_IDX",
- "IND_FLAGN",
- "IND_PG_IDX",
- "IND_PG_IDX",
- "IND_PG_IDX",
- "IND_PG_IDX",
- "IND_PG_IDX",
- "IND_PG_IDX",
- "IND_PG_IDX",
- "IND_PG_IDX",
- "IND_PG_IDX",
- "IND_PG_IDX",
- "IND_PG_IDX",
- "IND_PG_IDX",
- "IND_PG_IDX",
- "IND_PG_IDX",
- "IND_PG_IDX",
- "IND_PG_IDX",
- "IND_PG_IDX",
- "IND_PG_IDX",
- "IND_PG_IDX",
- "IND_PG_IDX",
- "IND_PG_IDX",
- "IND_PG_IDX",
- "IND_PG_IDX",
- "IND_PG_IDX",
- "IND_PG_IDX",
- "IND_PG_IDX",
- "IND_PG_IDX",
- "IND_PG_IDX",
- "IND_PG_IDX",
- "IND_PG_IDX",
- "IND_PG_IDX",
- "IND_PG_IDX",
- "IND_PG_IDX",
- "IND_PG_IDX",
- "IND_PG_IDX",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_PEAKS",
- "IND_HVQ_NF_GAIN",
- "IND_HVQ_NF_GAIN",
- "IND_HQ2_SWB_CLAS",
- "IND_HQ2_DENG_MODE",
- "IND_HQ2_DENG_8SMODE",
- "IND_HQ2_DENG_8SMODE_N0",
- "IND_HQ2_DENG_8SMODE_N1",
- "IND_HQ2_DENG_8SPOS",
- "IND_HQ2_DENG_8SDEPTH",
- "IND_HQ2_DENG_HMODE",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_DIFF_ENERGY",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_P2A_FLAGS",
- "IND_HQ2_LAST_BA_MAX_BAND",
- "IND_HQ2_LAST_BA_MAX_BAND",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_START",
- "IND_RC_END",
- "IND_HVQ_PVQ_GAIN",
- "IND_HVQ_PVQ_GAIN",
- "IND_HVQ_PVQ_GAIN",
- "IND_HVQ_PVQ_GAIN",
- "IND_HVQ_PVQ_GAIN",
- "IND_HVQ_PVQ_GAIN",
- "IND_HVQ_PVQ_GAIN",
- "IND_HVQ_PVQ_GAIN",
- "IND_NOISINESS",
- "IND_ENERGY",
- "IND_CNG_HO",
- "IND_SID_BW",
- "IND_CNG_ENV1",
- "IND_WB_FENV",
- "IND_WB_CLASS",
- "IND_IG1",
- "IND_IG2A",
- "IND_IG2B",
- "IND_NELP_FID",
- "IND_DELTALAG",
- "IND_POWER",
- "IND_AMP0",
- "IND_AMP1",
- "IND_GLOBAL_ALIGNMENT",
- "IND_PVQ_FINE_GAIN",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_UV_FLAG",
- "IND_SHB_SUBGAIN",
- "IND_SHB_FRAMEGAIN",
- "IND_STEREO_ICBWE_MSFLAG",
- "IND_SHB_ENER_SF",
- "IND_SHB_RES_GS",
- "IND_SHB_RES_GS",
- "IND_SHB_RES_GS",
- "IND_SHB_RES_GS",
- "IND_SHB_RES_GS",
- "IND_SHB_VF",
- "IND_SHB_LSF",
- "IND_SHB_LSF",
- "IND_SHB_LSF",
- "IND_SHB_LSF",
- "IND_SHB_LSF",
- "IND_SHB_MIRROR",
- "IND_SHB_GRID",
- "IND_SWB_CLASS",
- "IND_SWB_TENV",
- "IND_SWB_TENV",
- "IND_SWB_TENV",
- "IND_SWB_TENV",
- "IND_SWB_FENV",
- "IND_SWB_FENV",
- "IND_SWB_FENV",
- "IND_SWB_FENV",
- "IND_SHB_CNG_GAIN",
- "IND_DITHERING",
- "IND_FB_SLOPE",
- "IND_HQ2_SPT_SHORTEN",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_TCQ",
- "IND_HQ2_SUBBAND_GAIN",
- "IND_HQ2_SUBBAND_GAIN",
- "IND_HQ2_SUBBAND_GAIN",
- "IND_HQ2_SUBBAND_GAIN",
- "IND_HQ2_SUBBAND_GAIN",
- "IND_HQ2_SUBBAND_GAIN",
- "IND_HQ2_SUBBAND_GAIN",
- "IND_HQ2_SUBBAND_GAIN",
- "IND_HQ2_SUBBAND_GAIN",
- "IND_HQ2_SUBBAND_GAIN",
- "IND_HQ2_SUBBAND_GAIN",
- "IND_HQ2_SUBBAND_GAIN",
- "IND_HQ2_SUBBAND_GAIN",
- "IND_HQ2_SUBBAND_GAIN",
- "IND_HQ2_SUBBAND_GAIN",
- "IND_HQ2_SUBBAND_GAIN",
- "IND_HQ2_SUBBAND_GAIN",
- "IND_HQ2_SUBBAND_GAIN",
- "IND_HQ2_SUBBAND_GAIN",
- "IND_HQ2_SUBBAND_GAIN",
- "IND_HQ2_DUMMY",
- "IND_LAGINDICES",
- "IND_NOISEG",
- "IND_AUDIO_GAIN",
- "IND_AUDIO_DELAY",
- "IND_AUDIO_DELAY",
- "IND_AUDIO_DELAY",
- "IND_AUDIO_DELAY",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "IND_NQ2",
- "TAG_HR_BWE_LOOP_END",
- "IND_CORE_SWITCHING_CELP_SUBFRAME",
- "IND_CORE_SWITCHING_CELP_SUBFRAME",
- "IND_CORE_SWITCHING_CELP_SUBFRAME",
- "IND_CORE_SWITCHING_CELP_SUBFRAME",
- "IND_CORE_SWITCHING_CELP_SUBFRAME",
- "IND_CORE_SWITCHING_CELP_SUBFRAME",
- "IND_CORE_SWITCHING_CELP_SUBFRAME",
- "IND_CORE_SWITCHING_CELP_SUBFRAME",
- "IND_CORE_SWITCHING_CELP_SUBFRAME",
- "IND_CORE_SWITCHING_CELP_SUBFRAME",
- "IND_CORE_SWITCHING_CELP_SUBFRAME",
- "IND_CORE_SWITCHING_CELP_SUBFRAME",
- "IND_CORE_SWITCHING_CELP_SUBFRAME",
- "IND_CORE_SWITCHING_CELP_SUBFRAME",
- "IND_CORE_SWITCHING_CELP_SUBFRAME",
- "IND_CORE_SWITCHING_CELP_SUBFRAME",
- "IND_CORE_SWITCHING_CELP_SUBFRAME",
- "IND_CORE_SWITCHING_CELP_SUBFRAME",
- "IND_CORE_SWITCHING_CELP_SUBFRAME",
- "IND_CORE_SWITCHING_CELP_SUBFRAME",
- "IND_CORE_SWITCHING_AUDIO_DELAY",
- "IND_CORE_SWITCHING_AUDIO_GAIN",
- "IND_STEREO_ICBWE_REF",
- "IND_STEREO_ICBWE_SP",
- "IND_STEREO_ICBWE_GS",
- "IND_STEREO_REFCHAN",
- "IND_STEREO_CORRSTATS",
- "IND_STEREO_GD",
- "IND_STEREO_LRTD_FLAG",
- "IND_STEREO_LPC_REUSE",
- "IND_STEREO_TD_ALPHA",
- "IND_STEREO_2ND_CODER_T",
- "IND_UNUSED"
-};
-#endif
-
/*-------------------------------------------------------------------*
* push_indice()
@@ -2973,27 +1026,11 @@ ivas_error push_indice(
error = IVAS_ERR_OK;
move32();
-#ifdef DEBUGGING
- if ( nb_bits < ( 32 - 1 ) && ( value >> nb_bits ) > 0 )
- {
- return IVAS_ERROR( IVAS_ERR_INTERNAL_FATAL, "Indice ID = %d with value %d exceeds the range of %d bits (frame %d) !\n", id, value, nb_bits, frame );
- }
-
- if ( nb_bits > 16 )
- {
- return IVAS_ERROR( IVAS_ERR_INTERNAL_FATAL, "Indice ID = %d with value %d is trying to allocate %d bits which exceeds 16 bits (frame %d) !\n", id, value, nb_bits, frame );
- }
-
-#endif
/* check the limits of the list of indices */
IF( NE_32( ( error = check_ind_list_limits( hBstr ) ), IVAS_ERR_OK ) )
{
-#ifdef DEBUGGING
- return IVAS_ERROR( error, "Error occured in push_indice() while re-allocating the list of indices (frame %d) !\n", frame );
-#else
return IVAS_ERROR( error, "Error occured in push_indice() while re-allocating the list of indices!\n" );
-#endif
}
/* find the location in the list of indices based on ID */
@@ -3014,9 +1051,6 @@ ivas_error push_indice(
hBstr->ind_list[j].id = hBstr->ind_list[j - 1].id;
hBstr->ind_list[j].nb_bits = hBstr->ind_list[j - 1].nb_bits;
hBstr->ind_list[j].value = hBstr->ind_list[j - 1].value;
-#if defined( DEBUGGING ) && defined( DBG_BITSTREAM_ANALYSIS )
- strncpy( hBstr->ind_list[j].function_name, hBstr->ind_list[j - 1].function_name, 100 );
-#endif
move16();
move16();
move16();
@@ -3028,9 +1062,6 @@ ivas_error push_indice(
hBstr->ind_list[i].id = id;
hBstr->ind_list[i].value = value;
hBstr->ind_list[i].nb_bits = nb_bits;
-#if defined( DEBUGGING ) && defined( DBG_BITSTREAM_ANALYSIS )
- strncpy( hBstr->ind_list[i].function_name, named_indices_table[id], 100 );
-#endif
move16();
move16();
move16();
@@ -3049,12 +1080,7 @@ ivas_error push_indice(
*
* Push a new indice into the buffer at the next position
*-------------------------------------------------------------------*/
-#if defined( DEBUGGING ) && defined( DBG_BITSTREAM_ANALYSIS )
-ivas_error push_next_indice_(
- const char *caller,
-#else
ivas_error push_next_indice(
-#endif
BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
UWord16 value, /* i : value of the quantized indice */
Word16 nb_bits /* i : number of bits used to quantize the indice */
@@ -3066,18 +1092,6 @@ ivas_error push_next_indice(
error = IVAS_ERR_OK;
move32();
-#ifdef DEBUGGING
- if ( nb_bits < ( 32 - 1 ) && ( value >> nb_bits ) > 0 )
- {
- return IVAS_ERROR( IVAS_ERR_INTERNAL_FATAL, "Indice with value %d exceeds the range of %d bits (frame %d) !\n", value, nb_bits, frame );
- }
-
- if ( nb_bits > 16 )
- {
- return IVAS_ERROR( IVAS_ERR_INTERNAL_FATAL, "Indice with value %d is trying to allocate %d bits which exceeds 16 bits !\n", value, nb_bits );
- }
-
-#endif
/* check the limits of the list of indices */
IF( NE_32( ( error = check_ind_list_limits( hBstr ) ), IVAS_ERR_OK ) )
@@ -3104,9 +1118,6 @@ ivas_error push_next_indice(
move16();
move16();
-#if defined( DEBUGGING ) && defined( DBG_BITSTREAM_ANALYSIS )
- strncpy( hBstr->ind_list[hBstr->nb_ind_tot].function_name, caller, 100 );
-#endif
/* updates */
hBstr->nb_ind_tot = add( hBstr->nb_ind_tot, 1 );
@@ -3123,12 +1134,7 @@ ivas_error push_next_indice(
* Push a bit buffer into the buffer at the next position
*-------------------------------------------------------------------*/
-#if defined( DEBUGGING ) && defined( DBG_BITSTREAM_ANALYSIS )
-ivas_error push_next_bits_(
- const char *caller,
-#else
ivas_error push_next_bits(
-#endif
BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
const UWord16 bits[], /* i : bit buffer to pack, sequence of single bits */
const Word16 nb_bits /* i : number of bits to pack */
@@ -3165,20 +1171,13 @@ ivas_error push_next_bits(
/* check the limits of the list of indices */
IF( NE_32( ( error = check_ind_list_limits( hBstr ) ), IVAS_ERR_OK ) )
{
-#ifdef DEBUGGING
- return IVAS_ERROR( error, "Error occured in push_next_bits() while re-allocating the list of indices (frame %d) !\n", frame );
-#else
return IVAS_ERROR( error, "Error occured in push_next_bits() while re-allocating the list of indices!\n" );
-#endif
}
ptr = &hBstr->ind_list[hBstr->nb_ind_tot];
ptr->value = code;
ptr->nb_bits = 16;
ptr->id = prev_id;
-#if defined( DEBUGGING ) && defined( DBG_BITSTREAM_ANALYSIS )
- strncpy( ptr->function_name, caller, 100 );
-#endif
hBstr->nb_ind_tot = add( hBstr->nb_ind_tot, 1 );
move16();
move16();
@@ -3193,20 +1192,13 @@ ivas_error push_next_bits(
/* check the limits of the list of indices */
IF( NE_32( ( error = check_ind_list_limits( hBstr ) ), IVAS_ERR_OK ) )
{
-#ifdef DEBUGGING
- return IVAS_ERROR( error, "Error occured in push_next_bits() while re-allocating the list of indices (frame %d) !\n", frame );
-#else
return IVAS_ERROR( error, "Error occured in push_next_bits() while re-allocating the list of indices!\n" );
-#endif
}
ptr = &hBstr->ind_list[hBstr->nb_ind_tot];
ptr->value = bits[i];
ptr->nb_bits = 1;
ptr->id = prev_id;
-#if defined( DEBUGGING ) && defined( DBG_BITSTREAM_ANALYSIS )
- strncpy( ptr->function_name, caller, 100 );
-#endif
hBstr->nb_ind_tot = add( hBstr->nb_ind_tot, 1 );
move16();
move16();
@@ -3289,9 +1281,6 @@ UWord16 delete_indice(
move16();
move16();
move16();
-#if defined( DEBUGGING ) && defined( DBG_BITSTREAM_ANALYSIS )
- strncpy( hBstr->ind_list[j].function_name, hBstr->ind_list[i].function_name, 100 );
-#endif
}
j++;
@@ -3304,9 +1293,6 @@ UWord16 delete_indice(
/* reset the shifted indices at the end of the list */
hBstr->ind_list[j].nb_bits = -1;
move16();
-#if defined( DEBUGGING ) && defined( DBG_BITSTREAM_ANALYSIS )
- sprintf( hBstr->ind_list[j].function_name, "RESET in delete_indice" );
-#endif
}
return sub( i, j );
@@ -3573,9 +1559,6 @@ static Word16 write_indices_to_stream_fx(
Word16 i, k;
Word16 value, nb_bits;
UWord16 mask;
-#ifdef ENABLE_BITRATE_VERIFICATION
- int16_t total_nb_bits = 0;
-#endif
FOR( i = 0; i < num_indices; i++ )
{
@@ -3586,9 +1569,6 @@ static Word16 write_indices_to_stream_fx(
IF( nb_bits > 0 )
{
-#ifdef ENABLE_BITRATE_VERIFICATION
- total_nb_bits += nb_bits;
-#endif
/* mask from MSB to LSB */
mask = (UWord16) L_shl( 1, sub( nb_bits, 1 ) );
@@ -3611,22 +1591,8 @@ static Word16 write_indices_to_stream_fx(
mask = (UWord16) L_shr( mask, 1 );
}
}
-#ifdef DEBUGGING
- else if ( nb_bits == 0 )
- {
- /* fprintf( stderr, "Warning: %s: nb_bits == 0!\n", __func__ ); */
- }
- else
- {
- /* fprintf( stderr, "Warning: %s: nb_bits == %d!\n", __func__, nb_bits ); */
- }
-#endif
}
-#ifdef ENABLE_BITRATE_VERIFICATION
- return total_nb_bits;
-#else
return 0;
-#endif
}
@@ -3653,9 +1619,6 @@ static ivas_error write_indices_element_fx(
Indice *ind_list_metadata;
Word16 n, n_channels;
-#ifdef ENABLE_BITRATE_VERIFICATION
- int16_t total_nb_bits;
-#endif
ivas_error error;
error = IVAS_ERR_OK;
@@ -3703,12 +1666,6 @@ static ivas_error write_indices_element_fx(
move16();
}
}
-#ifdef DEBUGGING
- else
- {
- return IVAS_ERROR( IVAS_ERR_INTERNAL_FATAL, "Error: Bitstream writing error in frame %d. Exiting!\n", frame );
- }
-#endif
}
n_channels = 1;
@@ -3741,105 +1698,21 @@ static ivas_error write_indices_element_fx(
pt_stream_loc += nb_bits_tot_metadata - 1;
pt_stream_end = pt_stream_loc + 1;
-#ifdef ENABLE_BITRATE_VERIFICATION
- total_nb_bits =
-#endif
- write_indices_to_stream_fx( ind_list_metadata, &pt_stream_loc, -1,
- nb_ind_tot_metadata );
+ write_indices_to_stream_fx( ind_list_metadata, &pt_stream_loc, -1,
+ nb_ind_tot_metadata );
-#ifdef ENABLE_BITRATE_VERIFICATION
- if ( total_nb_bits != nb_bits_tot_metadata )
- {
- return IVAS_ERROR( IVAS_ERR_INTERNAL_FATAL, "Bitstream write size mismatch! Written bits: %d vs. Reference bits: %d\n", total_nb_bits, nb_bits_tot_metadata );
- }
-#endif
/* restore previous pointer position */
pt_stream_loc = pt_stream_backup;
}
-#ifdef ENABLE_BITRATE_VERIFICATION
- total_nb_bits =
-#endif
- write_indices_to_stream_fx( sts[n]->hBstr->ind_list, &pt_stream_loc, 1,
- sts[n]->hBstr->nb_ind_tot );
+ write_indices_to_stream_fx( sts[n]->hBstr->ind_list, &pt_stream_loc, 1,
+ sts[n]->hBstr->nb_ind_tot );
-#ifdef ENABLE_BITRATE_VERIFICATION
- if ( total_nb_bits != sts[n]->hBstr->nb_bits_tot )
- {
- return IVAS_ERROR( IVAS_ERR_INTERNAL_FATAL, "Bitstream write size mismatch! Written bits: %d vs. Reference bits: %d\n", total_nb_bits, sts[n]->hBstr->nb_bits_tot );
- }
-#endif
if ( pt_stream_loc > pt_stream_end )
{
pt_stream_end = pt_stream_loc;
}
}
-#if defined( DEBUGGING ) && defined( DBG_BITSTREAM_ANALYSIS )
- if ( is_SCE ) /* EVS and SCE */
- {
- static FILE *f1 = 0;
-
- if ( f1 == 0 )
- f1 = fopen( "bitstream_text", "w" );
-
- for ( int16_t i = 0; i < sts[0]->hBstr->nb_ind_tot; i++ )
- {
- Indice *ind_list = sts[0]->hBstr->ind_list;
- int16_t value = ind_list[i].value;
- int16_t nb_bits = ind_list[i].nb_bits;
- char *function_name = ind_list[i].function_name;
-
- fprintf( f1, "%d %d %d %s %d %d\n", frame, element_id, i, function_name, nb_bits, value );
- }
-
- if ( st_ivas->hSCE[element_id]->hMetaData != NULL )
- {
- for ( int16_t i = 0; i < st_ivas->hSCE[element_id]->hMetaData->nb_ind_tot; i++ )
- {
- Indice *ind_list = st_ivas->hSCE[element_id]->hMetaData->ind_list;
- int16_t value = ind_list[i].value;
- int16_t nb_bits = ind_list[i].nb_bits;
- char *function_name = ind_list[i].function_name;
-
- fprintf( f1, "%d %d %d %s %d %d\n", frame, element_id, i, function_name, nb_bits, value );
- }
- }
- }
- else
- {
- static FILE *f1 = 0;
-
- if ( f1 == 0 )
- f1 = fopen( "bitstream_text", "w" );
-
-
- for ( n = 0; n < n_channels; n++ )
- {
- for ( int16_t i = 0; i < sts[n]->hBstr->nb_ind_tot; i++ )
- {
- Indice *ind_list = sts[n]->hBstr->ind_list;
- int16_t value = ind_list[i].value;
- int16_t nb_bits = ind_list[i].nb_bits;
- char *function_name = ind_list[i].function_name;
-
- fprintf( f1, "%d %d %d %d %s %d %d\n", frame, element_id, n, i, function_name, nb_bits, value );
- }
- }
-
- if ( st_ivas->hCPE[element_id]->hMetaData != NULL )
- {
- for ( int16_t i = 0; i < st_ivas->hCPE[element_id]->hMetaData->nb_ind_tot; i++ )
- {
- Indice *ind_list = st_ivas->hCPE[element_id]->hMetaData->ind_list;
- int16_t value = ind_list[i].value;
- int16_t nb_bits = ind_list[i].nb_bits;
- char *function_name = ind_list[i].function_name;
-
- fprintf( f1, "%d %d %d %d %s %d %d\n", frame, element_id, -1, i, function_name, nb_bits, value );
- }
- }
- }
-#endif
/*----------------------------------------------------------------*
* Clearing of indices
@@ -3890,11 +1763,6 @@ ivas_error write_indices_ivas_fx(
{
Word16 i, n;
UWord16 *pt_stream;
-#ifdef ENABLE_BITRATE_VERIFICATION
- Encoder_State **sts;
- int32_t ivas_total_brate;
- int16_t ch;
-#endif
ivas_error error;
error = IVAS_ERR_OK;
@@ -3907,45 +1775,6 @@ ivas_error write_indices_ivas_fx(
move16();
}
-#ifdef ENABLE_BITRATE_VERIFICATION
- i = 0;
-
- for ( n = 0; n < st_ivas->nSCE; n++ )
- {
- sts = st_ivas->hSCE[n]->hCoreCoder;
- i += sts[0]->hBstr->nb_bits_tot;
-
- if ( st_ivas->hSCE[n]->hMetaData != NULL )
- {
- i += st_ivas->hSCE[n]->hMetaData->nb_bits_tot;
- }
- }
-
- for ( n = 0; n < st_ivas->nCPE; n++ )
- {
- sts = st_ivas->hCPE[n]->hCoreCoder;
- for ( ch = 0; ch < CPE_CHANNELS; ch++ )
- {
- i += sts[ch]->hBstr->nb_bits_tot;
- }
-
- if ( st_ivas->hCPE[n]->hMetaData != NULL )
- {
- i += st_ivas->hCPE[n]->hMetaData->nb_bits_tot;
- }
- }
-
- ivas_total_brate = st_ivas->hEncoderConfig->ivas_total_brate;
- if ( st_ivas->hEncoderConfig->Opt_SC_VBR )
- {
- ivas_total_brate = st_ivas->hSCE[0]->hCoreCoder[0]->total_brate;
- }
-
- if ( i * FRAMES_PER_SEC != ivas_total_brate && i >= ACELP_11k60 / FRAMES_PER_SEC )
- {
- return IVAS_ERROR( IVAS_ERR_INTERNAL_FATAL, "Bitstream write size mismatch! Actual bitrate: %ld vs. Reference bitrate: %d\n", i * 50L, ivas_total_brate );
- }
-#endif
/*-----------------------------------------------------------------*
* Encode Payload
@@ -3982,10 +1811,6 @@ void convertSerialToBytestream_fx(
{
Word16 i, ia7, isr3;
UWord8 bit, bitinbyte;
-#ifdef DEBUGGING
- UWord8 bitinbyte2, bytestream_tmp;
- assert( num_bits <= MAX_16 ); /* 512 kbps = 10240 bits, num_bits should always fits Word16 */
-#endif
FOR( i = 0; i < num_bits; ++i )
{
@@ -4003,24 +1828,13 @@ void convertSerialToBytestream_fx(
ia7 = s_and( i, 0x7 );
isr3 = shr( i, 3 );
bitinbyte = (UWord8) shl( (Word16) bit, sub( 7, ia7 ) );
-#ifdef DEBUGGING
- bitinbyte2 = bit << ( 7 - ( i & 0x7 ) );
- assert( bitinbyte2 == bitinbyte );
-#endif
IF( !( ia7 ) )
{
bytestream[isr3] = 0;
move16();
}
/*bytestream[i >> 3] |= bitinbyte;*/
-#ifdef DEBUGGING
- bytestream_tmp = bytestream[isr3];
- bytestream_tmp |= bitinbyte2;
-#endif
bytestream[isr3] = (Word8) s_or( bytestream[isr3], bitinbyte );
-#ifdef DEBUGGING
- assert( bytestream_tmp == bytestream[isr3] );
-#endif
move16();
}
@@ -4078,9 +1892,6 @@ static void decoder_selectCodec(
move16();
BREAK;
default: /* validate that total_brate (derived from RTP packet or a file header) is one of the defined bitrates */
-#ifdef DEBUGGING
- IVAS_ERROR( IVAS_ERR_INTERNAL, "Error illegal total bitrate (= %d) \n", total_brate );
-#endif
st->codec_mode = st->last_codec_mode;
move16();
st->bfi = 1;
@@ -4174,12 +1985,6 @@ static void dec_prm_core( Decoder_State *st )
BREAK;
}
}
-#ifdef DEBUGGING
- if ( n == FRAME_SIZE_NB )
- {
- assert( !"Bitrate not supported: not part of EVS" );
- }
-#endif
/* Get bandwidth mode */
st->bwidth = get_next_indice_fx( st, FrameSizeConfig[frame_size_index].bandwidth_bits );
@@ -4299,9 +2104,6 @@ static void decision_matrix_core_dec(
WHILE( acelp_sig_tbl[start_idx] != st->total_brate )
{
start_idx = add( start_idx, 1 );
-#ifdef DEBUGGING
- assert( ( start_idx < 194 ) && "ERROR: start_idx larger than acelp_sig_tbl[].\n" );
-#endif
}
/* skip the bitrate */
@@ -4574,58 +2376,6 @@ void ivas_set_bitstream_pointers(
return;
}
-#ifdef DEBUGGING
-
-/*-------------------------------------------------------------------*
- * file_read_FECpattern()
- *
- * Simulate packet losses by reading FEC pattern from external file
- *-------------------------------------------------------------------*/
-
-static ivas_error file_read_FECpattern(
- Word16 *bfi )
-{
- ivas_error error;
-
- error = IVAS_ERR_OK;
- *bfi = 0;
-
- /* FEC pattern file provided */
- if ( FEC_pattern != NULL )
- {
- Word16 tmp = 0;
- if ( fread( &tmp, sizeof( Word16 ), 1, FEC_pattern ) != 1 )
- {
- if ( feof( FEC_pattern ) != 0 )
- {
-#ifdef WRAP_AS_EIDXOR
- fseek( FEC_pattern, 0L, SEEK_SET );
- fread( &tmp, sizeof( Word16 ), 1, FEC_pattern );
-#else
- tmp = 0;
- fseek( FEC_pattern, 0L, SEEK_SET );
-#endif
- }
- else
- {
- return IVAS_ERROR( IVAS_ERR_INTERNAL_FATAL, "Error reading the FEC pattern file !" );
- }
- }
-
- if ( tmp == 2609 || tmp == 1 || tmp == (UWord16) 0x6B20 /* == G192_SYNC_BAD_FRAME */ )
- {
- *bfi = 1;
- }
- else
- {
- *bfi = 0;
- }
- }
-
- return error;
-}
-
-#endif
/*-------------------------------------------------------------------*
* read_indices()
@@ -4662,21 +2412,8 @@ ivas_error read_indices_fx(
move16();
sts = reset_elements( st_ivas );
-#ifdef DEBUGGING
- file_read_FECpattern( &st_ivas->bfi );
- st_ivas->bfi |= bfi;
-
- if ( bfi == FRAMEMODE_MISSING )
- {
- for ( k = 0; k < num_bits; k++ )
- {
- bit_stream[k] = 0;
- }
- }
-#else
st_ivas->bfi = bfi;
move16();
-#endif
/* convert the frame length to total bitrate */
total_brate = imult3216( num_bits, FRAMES_PER_SEC );
diff --git a/lib_com/cb_shape_fx.c b/lib_com/cb_shape_fx.c
index c300589941303e3df0c5b0b1dd7610363245b92e..55412ca5c927434b3afa26c0531674ac72dcd506 100644
--- a/lib_com/cb_shape_fx.c
+++ b/lib_com/cb_shape_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/cldfb_evs_fx.c b/lib_com/cldfb_evs_fx.c
index 2d611b27ef9e811c8264b761cebe6ee89838e7ef..26811e6d69ecd35d0e46f4cac2a03bc7382ba003 100644
--- a/lib_com/cldfb_evs_fx.c
+++ b/lib_com/cldfb_evs_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
@@ -1216,12 +1219,8 @@ void analysisCldfbEncoder_fx(
&enerScale.lb_scale16 );
/* get the energy */
-#ifdef HARMONIZE_2564_GetEnergyCldfb
GetEnergyCldfb(
EVS_MONO,
-#else
- GetEnergyCldfb(
-#endif
&st_fx->energyCoreLookahead_Fx,
&st_fx->sf_energyCoreLookahead_Fx,
num_slots,
@@ -1240,12 +1239,8 @@ void analysisCldfbEncoder_fx(
}
-#ifdef HARMONIZE_2564_GetEnergyCldfb
-void GetEnergyCldfb(
- Word16 element_mode, /*!< i: | Is IVAS or EVS? */
-#else
void GetEnergyCldfb(
-#endif
+ Word16 element_mode, /*!< i: | Is IVAS or EVS? */
Word32 *energyLookahead, /*!< o: Q(*sf_energyLookahead) | pointer to the result in the core look-ahead slot */
Word16 *sf_energyLookahead, /*!< o: pointer to the scalefactor of the result in the core look-ahead slot */
const Word16 numLookahead, /*!< i: Q0 the number of look-ahead time-slots */
@@ -1320,15 +1315,11 @@ void GetEnergyCldfb(
move16();
energyValuesSum[j] = L_shr_r( energyValuesSum[j], 1 );
move32();
-#ifdef HARMONIZE_2564_GetEnergyCldfb
nrg = L_shr_r( nrg, 1 );
if ( EQ_16( element_mode, EVS_MONO ) )
{
-#endif
nrg = L_shr_r( energyValues[k][j], 1 );
-#ifdef HARMONIZE_2564_GetEnergyCldfb
}
-#endif
}
energyValuesSum[j] = L_add( energyValuesSum[j], nrg );
move32();
diff --git a/lib_com/cldfb_fx.c b/lib_com/cldfb_fx.c
index 6126a6ee2b6200550a40cfade71d2b58cc9789b7..838ecfadcfb2e0785ebcd2dce14f3febcfa0d252 100644
--- a/lib_com/cldfb_fx.c
+++ b/lib_com/cldfb_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
@@ -55,21 +27,6 @@
static void cldfb_init_proto_and_twiddles( HANDLE_CLDFB_FILTER_BANK hs );
-#ifndef HARMONIZE_2564_GetEnergyCldfb
-static void GetEnergyCldfb_ivas_fx( Word32 *energyLookahead, /*!< o: Q(*sf_energyLookahead) | pointer to the result in the core look-ahead slot */
- Word16 *sf_energyLookahead, /*!< o: pointer to the scalefactor of the result in the core look-ahead slot */
- const Word16 numLookahead, /*!< i: Q0 the number of look-ahead time-slots */
- Word16 **realValues, /*!< i: Q(sf_Values) | the real part of the CLDFB subsamples */
- Word16 **imagValues, /*!< i: Q(sf_Values) | the imaginary part of the CLDFB subsamples */
- Word16 sf_Values, /*!< i: scalefactor of the CLDFB subcamples - apply as a negated Exponent */
- Word16 numberBands, /*!< i: Q0 | number of CLDFB bands */
- Word16 numberCols, /*!< i: Q0 | number of CLDFB subsamples */
- Word32 *energyHF, /*!< o: Q31 | pointer to HF energy */
- Word16 *energyHF_Exp, /*!< o: pointer to exponent of HF energy */
- Word32 *energyValuesSum, /*!< o: Q(2*sf_Values-4) | pointer to sum array of energy values, not initialized*/
- Word16 *energyValuesSum_Exp, /*!< o: pointer to exponents of energyValuesSum, not initialized */
- TEC_ENC_HANDLE hTecEnc );
-#endif
/*-------------------------------------------------------------------*
* cldfbAnalysis_ivas()
@@ -1456,167 +1413,6 @@ void resampleCldfb_ivas_fx(
return;
}
-#ifndef HARMONIZE_2564_GetEnergyCldfb
-static void GetEnergyCldfb_ivas_fx(
- Word32 *energyLookahead, /*!< o: Q(*sf_energyLookahead) | pointer to the result in the core look-ahead slot */
- Word16 *sf_energyLookahead, /*!< o: pointer to the scalefactor of the result in the core look-ahead slot */
- const Word16 numLookahead, /*!< i: Q0 the number of look-ahead time-slots */
- Word16 **realValues, /*!< i: Q(sf_Values) | the real part of the CLDFB subsamples */
- Word16 **imagValues, /*!< i: Q(sf_Values) | the imaginary part of the CLDFB subsamples */
- Word16 sf_Values, /*!< i: scalefactor of the CLDFB subcamples - apply as a negated Exponent */
- Word16 numberBands, /*!< i: Q0 | number of CLDFB bands */
- Word16 numberCols, /*!< i: Q0 | number of CLDFB subsamples */
- Word32 *energyHF, /*!< o: Q31 | pointer to HF energy */
- Word16 *energyHF_Exp, /*!< o: pointer to exponent of HF energy */
- Word32 *energyValuesSum, /*!< o: Q(2*sf_Values-4) | pointer to sum array of energy values, not initialized*/
- Word16 *energyValuesSum_Exp, /*!< o: pointer to exponents of energyValuesSum, not initialized */
- TEC_ENC_HANDLE hTecEnc )
-{
- Word16 j;
- Word16 k;
- Word16 s;
- Word16 sm;
- Word32 nrg;
- Word16 numberColsL;
- Word16 numberBandsM;
- Word16 numberBandsM20;
- Word32 energyValues[CLDFB_NO_COL_MAX][CLDFB_NO_CHANNELS_MAX];
- Word16 energyValuesSumE[CLDFB_NO_CHANNELS_MAX];
- // Word16 freqTable[2] = {20, 40};
-
- FOR( k = 0; k < numberCols; k++ )
- {
- FOR( j = 0; j < numberBands; j++ )
- {
- nrg = L_mult0( realValues[k][j], realValues[k][j] ); // Q(2*sf_Values)
- nrg = L_mac0( nrg, imagValues[k][j], imagValues[k][j] ); // Q(2*sf_Values)
-
- energyValues[k][j] = nrg;
- move32();
- }
- }
-
- IF( GE_16( numberBands, freqTable[1] ) && hTecEnc != NULL )
- {
- Word32 *tempEnergyValuesArry[CLDFB_NO_COL_MAX];
- Word16 ScaleX2;
- assert( numberCols == CLDFB_NO_COL_MAX );
- FOR( j = 0; j < numberCols; j++ )
- {
- tempEnergyValuesArry[j] = &energyValues[j][0];
- }
-
- ScaleX2 = shl( sf_Values, 1 );
- calcHiEnvLoBuff_Fix(
- numberCols,
- freqTable,
- 1,
- tempEnergyValuesArry,
- hTecEnc->loBuffer,
- hTecEnc->hiTempEnv,
- ScaleX2 );
- }
-
- FOR( j = 0; j < numberBands; j++ )
- {
- energyValuesSum[j] = 0;
- move32();
- energyValuesSumE[j] = 31;
- move16();
- FOR( k = 0; k < CLDFB_NO_COL_MAX; k++ )
- {
- nrg = L_shr_r( energyValues[k][j], sub( energyValuesSumE[j], 31 ) ); // Q(2*sf_Values - (energyValuesSumE[j]-31))
- IF( LT_32( L_sub( maxWord32, nrg ), energyValuesSum[j] ) )
- {
- energyValuesSumE[j] = add( energyValuesSumE[j], 1 );
- move16();
- energyValuesSum[j] = L_shr_r( energyValuesSum[j], 1 );
- move32();
- nrg = L_shr_r( nrg, 1 );
- }
- energyValuesSum[j] = L_add( energyValuesSum[j], nrg );
- move32();
- }
- test();
- if ( j == 0 || GT_16( energyValuesSumE[j], *energyValuesSum_Exp ) )
- {
- *energyValuesSum_Exp = energyValuesSumE[j];
- move16();
- }
- }
- FOR( j = 0; j < numberBands; j++ )
- {
- energyValuesSum[j] = L_shr_r( energyValuesSum[j], sub( *energyValuesSum_Exp, energyValuesSumE[j] ) ); // Q(energyValuesSum_Exp - (2*sf_Values))
- move32();
- }
- *energyValuesSum_Exp = sub( *energyValuesSum_Exp, shl( sf_Values, 1 ) );
- move16();
-
- IF( GT_16( numberBands, 20 ) )
- {
- numberBandsM = s_min( numberBands, 40 );
- numberBandsM20 = sub( numberBandsM, 20 );
-
- numberColsL = sub( numberCols, numLookahead );
-
- /* sum up CLDFB energy above 8 kHz */
- s = BASOP_util_norm_s_bands2shift( i_mult( numberColsL, numberBandsM20 ) );
- s = sub( s, 4 );
- nrg = 0;
- move32();
- FOR( k = 0; k < numberColsL; k++ )
- {
- FOR( j = 20; j < numberBandsM; j++ )
- {
- nrg = L_add_sat( nrg, L_shr_sat( energyValues[k][j], s ) );
- }
- }
-
- s = sub( sub( shl( sf_Values, 1 ), 1 ), s );
- sm = sub( s_min( s, *sf_energyLookahead ), 1 );
-
- *energyHF = L_add( L_shr( nrg, limitScale32( sub( s, sm ) ) ),
- L_shr( *energyLookahead, sub( *sf_energyLookahead, sm ) ) ); // Q(31-(-nm))
- move32();
-
- *energyHF_Exp = negate( sm );
- move16();
-
- /* process look-ahead region */
- s = BASOP_util_norm_s_bands2shift( i_mult( numLookahead, numberBandsM20 ) );
- s = sub( s, 2 );
- nrg = 0;
- move32();
- FOR( k = numberColsL; k < numberCols; k++ )
- {
- FOR( j = 20; j < numberBandsM; j++ )
- {
- nrg = L_add_sat( nrg, L_shr_sat( energyValues[k][j], s ) );
- }
- }
-
- s = sub( shl( sf_Values, 1 ), s );
- sm = sub( s_min( s, 44 ), 1 );
- BASOP_SATURATE_WARNING_OFF_EVS
- /* nrg + 6.1e-5f => value 0x40000000, scale 44 */
- *energyLookahead = L_add_sat( L_shr_sat( nrg, sub( s, sm ) ),
- L_shr_sat( 0x40000000, s_max( -31, s_min( 31, sub( 44, sm ) ) ) ) );
- move32();
- BASOP_SATURATE_WARNING_ON_EVS
- *sf_energyLookahead = sm;
- move16();
-
- return;
- }
-
-
- *energyHF = 0x40000000;
- move32();
- *energyHF_Exp = 17;
- move16();
-}
-#endif
-
void analysisCldfbEncoder_ivas_fx(
Encoder_State *st, /* i/o: encoder state structure */
@@ -1677,11 +1473,7 @@ void analysisCldfbEncoder_ivas_fx(
move16();
AnalysisPostSpectrumScaling_Fx( st->cldfbAnaEnc, ppBuf_Real, ppBuf_Imag, ppBuf_Real16, ppBuf_Imag16, &enerScale.lb_scale16 );
-#ifdef HARMONIZE_2564_GetEnergyCldfb
GetEnergyCldfb( st->element_mode, &st->energyCoreLookahead_Fx, &st->sf_energyCoreLookahead_Fx, 1, ppBuf_Real16, ppBuf_Imag16, enerScale.lb_scale16, st->cldfbAnaEnc->no_channels, st->cldfbAnaEnc->no_col, &st->currEnergyHF_fx, &st->currEnergyHF_e_fx, ppBuf_Ener, enerBuffSum_exp, st->hTECEnc );
-#else
- GetEnergyCldfb_ivas_fx( &st->energyCoreLookahead_Fx, &st->sf_energyCoreLookahead_Fx, 1, ppBuf_Real16, ppBuf_Imag16, enerScale.lb_scale16, st->cldfbAnaEnc->no_channels, st->cldfbAnaEnc->no_col, &st->currEnergyHF_fx, &st->currEnergyHF_e_fx, ppBuf_Ener, enerBuffSum_exp, st->hTECEnc );
-#endif
return;
}
diff --git a/lib_com/cng_exc_fx.c b/lib_com/cng_exc_fx.c
index 5ba48494eea584f46abc58840f6f013747489a9e..7ff74d7cdfa320e2173b92841141563a24956c1b 100644
--- a/lib_com/cng_exc_fx.c
+++ b/lib_com/cng_exc_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/cnst.h b/lib_com/cnst.h
index f2f1a64e68ae736c95d6ee90770ccb45ffb658db..00fa0a1421743137284cc56b01fbf42e8f77b905 100644
--- a/lib_com/cnst.h
+++ b/lib_com/cnst.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
@@ -77,22 +49,6 @@
#define DEC_IVAS 2 /* Index for IVAS decoder */
#define OUTPUT_Q 11
-#ifdef DEBUGGING
-#define FORCE_SPEECH 100 /* debugging - force speech on the command line */
-#define FORCE_MUSIC 101 /* debugging - force music on the command line */
-#define FORCE_ACELP 102 /* debugging - force ACELP core on the command line */
-#define FORCE_GSC 103 /* debugging - force GSC core on the command line */
-#ifdef SUPPORT_FORCE_TCX10_TCX20
-#define FORCE_TCX10 104 /* debugging - force TCX10 core on the command line */
-#define FORCE_TCX20 105 /* debugging - force TCX20 core on the command line */
-#define FORCE_HQ 106 /* debugging - force HQ core on the command line */
-#else
-#define FORCE_TCX 104 /* debugging - force TCX core on the command line */
-#define FORCE_HQ 105 /* debugging - force HQ core on the command line */
-#endif
-#define FORCE_TD_RENDERER 201
-#define FORCE_CLDFB_RENDERER 202
-#endif
enum{
NB = 0, /* Indicator of 4 kHz bandwidth */
diff --git a/lib_com/codec_tcx_common_fx.c b/lib_com/codec_tcx_common_fx.c
index 8517668e5779027a75dcbb2329246cc0f5f8425e..53adc2fae4a0864da769a6ccfadc4d005a463cf5 100644
--- a/lib_com/codec_tcx_common_fx.c
+++ b/lib_com/codec_tcx_common_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/common_api_types.h b/lib_com/common_api_types.h
index 3b366fb4c310656f2e32c6fd10ace7e5a8daea21..86d521cdb4e0d86c5fb751f3b41561aac3a27f40 100644
--- a/lib_com/common_api_types.h
+++ b/lib_com/common_api_types.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#ifndef COMMON_API_TYPES_H
#define COMMON_API_TYPES_H
@@ -63,10 +35,8 @@
#define IVAS_ER_LIST_HEIGHT 1.6f
#define IVAS_ER_LIST_HEIGHT_FX 6710886 /* 1.6f in Q.22 */
#define IVAS_DEFAULT_AEID 65535
-#ifdef FIX_BASOP_2023_TDREND_DISTATT_PRECISION
-#define IVAS_LISTENER_POSITION_MAX 327.67f
-#define IVAS_LISTENER_POSITION_MAX_Q22 1374347592 /* 327.67 in Q22 */
-#endif
+#define IVAS_LISTENER_POSITION_MAX 327.67f
+#define IVAS_LISTENER_POSITION_MAX_Q22 1374347592 /* 327.67 in Q22 */
/* JBM constants for adaptive-playout */
#define IVAS_TIME_SCALE_MIN 50 /* min. time-scaling [%] */
@@ -164,11 +134,7 @@ typedef struct
float x, y, z;
-#ifdef FIX_BASOP_2023_TDREND_DISTATT_PRECISION
Word32 x_fx, y_fx, z_fx; /* q_fact, q_fact, q_fact */
-#else
- Word32 x_fx, y_fx, z_fx;
-#endif
Word16 q_fact;
} IVAS_VECTOR3;
@@ -359,11 +325,7 @@ typedef struct _IVAS_RENDER_CONFIG
float directivity[IVAS_MAX_NUM_OBJECTS * 3];
Word16 directivity_fx[IVAS_MAX_NUM_OBJECTS * 3]; // has the following q-factor pattern: {6, 6, 15, 6, 6, 15, 6, 6, 15, 6, 6, 15}
float distAtt[3];
-#ifdef FIX_BASOP_2023_TDREND_DISTATT_PRECISION
Word32 distAtt_fx[3]; /* {Q25, Q28, Q28} */
-#else
- Word32 distAtt_fx[3]; /* {Q27, Q30, Q30} */
-#endif
} IVAS_RENDER_CONFIG_DATA, *IVAS_RENDER_CONFIG_HANDLE;
diff --git a/lib_com/core_com_config_fx.c b/lib_com/core_com_config_fx.c
index e2f617a62a9f4d972d44dadfe4c6934a5d42402f..60f90ed67d3f3c0d43ff352a6197c09802aec326 100644
--- a/lib_com/core_com_config_fx.c
+++ b/lib_com/core_com_config_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/deemph_fx.c b/lib_com/deemph_fx.c
index e141f9a67e599fdce79f29ffa220862d1f0d3ee5..180ad2ab634e73de3f86570553320a57cffae8e8 100644
--- a/lib_com/deemph_fx.c
+++ b/lib_com/deemph_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/delay_comp_fx.c b/lib_com/delay_comp_fx.c
index 6d82271baa656411bcb691b87776fda3c3713bbc..863e6cbff86e50c03522e1a100a7b671ad9a3545 100644
--- a/lib_com/delay_comp_fx.c
+++ b/lib_com/delay_comp_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/disclaimer.c b/lib_com/disclaimer.c
index b2dab1d06f9664e9a5f0036645fbb8969bfcc8bb..a69393c3449d363d99107e0132ec3ec89053ae1f 100644
--- a/lib_com/disclaimer.c
+++ b/lib_com/disclaimer.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
@@ -45,7 +17,7 @@ Word16 print_disclaimer( FILE *fPtr )
fprintf( fPtr, "\n==================================================================================================\n" );
fprintf( fPtr, "\n" );
- fprintf( fPtr, " 3GPP TS26.251 IVAS Codec Version IVAS-FX-3.1 (fixed-point C-Code)\n" );
+ fprintf( fPtr, " 3GPP TS26.251 IVAS Codec Version IVAS-FX-3.1RC02 (fixed-point C-Code)\n" );
fprintf( fPtr, "\n" );
fprintf( fPtr, " Based on EVS Codec (Alternative Fixed Point) 3GPP TS26.452 Nov 04, 2021,\n" );
fprintf( fPtr, " Version 16.4.0\n" );
diff --git a/lib_com/dlpc_bfi_fx.c b/lib_com/dlpc_bfi_fx.c
index dffdb982ad888d9964dcf59fe129b8e921e068c6..58187299e3fb50b02128cf9088565003871bfb26 100644
--- a/lib_com/dlpc_bfi_fx.c
+++ b/lib_com/dlpc_bfi_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/edct_fx.c b/lib_com/edct_fx.c
index 3ec5981ae2be1661b2caac52fd46881c8dd90c35..c08bd0019b6cb9f432f840171dd0ae7a3387d1a5 100644
--- a/lib_com/edct_fx.c
+++ b/lib_com/edct_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/enhancer_fx.c b/lib_com/enhancer_fx.c
index 6203dcd67c6fccc08523e3840ab752afddc74932..3c3d8f603a17099f851e62475b7d4be5e7b91034 100644
--- a/lib_com/enhancer_fx.c
+++ b/lib_com/enhancer_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/enr_1_az_fx.c b/lib_com/enr_1_az_fx.c
index 108e25c3a87fdbf149ab19f5a8d46ac8c3bc8d93..ac5bad68c112951fea159c4156779a789ef43a15 100644
--- a/lib_com/enr_1_az_fx.c
+++ b/lib_com/enr_1_az_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/env_adj_fx.c b/lib_com/env_adj_fx.c
index 0cf2906d544eb1211ad248a29e67e3e24b8b9700..5ca614cb36e965400b4ff837ed8a49b9bec826de 100644
--- a/lib_com/env_adj_fx.c
+++ b/lib_com/env_adj_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/env_stab_fx.c b/lib_com/env_stab_fx.c
index 33c3435dbea4a0ee8af2e8a158b79814c348581a..3dab834ddab77d2c0b164c90733b0e6ed0c0f8ed 100644
--- a/lib_com/env_stab_fx.c
+++ b/lib_com/env_stab_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/env_stab_trans_fx.c b/lib_com/env_stab_trans_fx.c
index 63b35b0d56cde4d412c91bf3d70aeb6bfde56c97..bdeb04fc753022650a79d37367d639d96d1f2e0b 100644
--- a/lib_com/env_stab_trans_fx.c
+++ b/lib_com/env_stab_trans_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/est_tilt_fx.c b/lib_com/est_tilt_fx.c
index 95e527da0e813e09f3196ef785d0bd7a47095a0a..eabf2a1b2c993ceaf1e7d0b765a1c7b78314472d 100644
--- a/lib_com/est_tilt_fx.c
+++ b/lib_com/est_tilt_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/fd_cng_com_fx.c b/lib_com/fd_cng_com_fx.c
index 9b13274d8799938f6a6f7df8da87d0eadf8629e9..54b66fa3f3b7bb80fa192d5f83f4dff160066127 100644
--- a/lib_com/fd_cng_com_fx.c
+++ b/lib_com/fd_cng_com_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
@@ -112,10 +115,8 @@ void initFdCngCom(
move16();
hFdCngCom->stopFFTbin = 0;
move16();
-#ifdef FIX_1559
hFdCngCom->nFFTpart = 0;
move16();
-#endif
hFdCngCom->frameSize = 0;
move16();
hFdCngCom->fftlen = 0;
diff --git a/lib_com/fft_cldfb_fx.c b/lib_com/fft_cldfb_fx.c
index 0be5e21942545a7cfa66763f400cdb289d20e4de..37de0bae6534f3f6a606f54926848e0032493dd9 100644
--- a/lib_com/fft_cldfb_fx.c
+++ b/lib_com/fft_cldfb_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/fft_evs.c b/lib_com/fft_evs.c
index 5748be95dde18d7656aafc140702a63073b74582..d3d219cf0b99a4213d0afedff7e17d34dfaef98d 100644
--- a/lib_com/fft_evs.c
+++ b/lib_com/fft_evs.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/fft_fx.c b/lib_com/fft_fx.c
index df681306ad5dd57d2b79a9ca3abadce9bb08859b..fed802dc837512cbb37b8315b559c1c9a340202d 100644
--- a/lib_com/fft_fx.c
+++ b/lib_com/fft_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/fft_fx_evs.c b/lib_com/fft_fx_evs.c
index 5cbfbc2503a3549140d1299ed0d513f7dd40b7d6..06dcb66666995b12911cf0b96734d545983670c4 100644
--- a/lib_com/fft_fx_evs.c
+++ b/lib_com/fft_fx_evs.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/fft_rel_fx.c b/lib_com/fft_rel_fx.c
index 320bf4aa28db440d966d1943a6af3a2d0e8304c2..f131495c8835d64c95bc817828886fa969990d1d 100644
--- a/lib_com/fft_rel_fx.c
+++ b/lib_com/fft_rel_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/fill_spectrum_fx.c b/lib_com/fill_spectrum_fx.c
index 8dcb7150df7c9df1fff89ed62f07dfbbd3bc4013..a251ed0cab899b803775963119c8fb38502a9bab 100644
--- a/lib_com/fill_spectrum_fx.c
+++ b/lib_com/fill_spectrum_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/findpulse_fx.c b/lib_com/findpulse_fx.c
index e95daaa698e655b54c9bbe633fc79ddd16b61a8a..7c0db121b27ba247a687d82b9e7f903795b9864c 100644
--- a/lib_com/findpulse_fx.c
+++ b/lib_com/findpulse_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/fine_gain_bits_fx.c b/lib_com/fine_gain_bits_fx.c
index d211a8a67efbcf7f9c023462f0d1d7da43bd0b79..961945b074d776df5fca54793e47df7634ea56c5 100644
--- a/lib_com/fine_gain_bits_fx.c
+++ b/lib_com/fine_gain_bits_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/frame_ener_fx.c b/lib_com/frame_ener_fx.c
index 6e7a6f2a2b199b7990edbe53bc6196368e0f63bf..7bea19f246cd5ac833c9b08d19222600ec9a104f 100644
--- a/lib_com/frame_ener_fx.c
+++ b/lib_com/frame_ener_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/gain_inov_fx.c b/lib_com/gain_inov_fx.c
index b97f399c072437b8f2b9a629226ec2669b7c1e75..2b31abfccedf6d6d120932b95f08bbfa6029531f 100644
--- a/lib_com/gain_inov_fx.c
+++ b/lib_com/gain_inov_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/get_gain_fx.c b/lib_com/get_gain_fx.c
index 7cf27be0b28700db5352e49015143c173bad6da4..b7effb75cfb525c78bb3396b798bd1faf1f08c93 100644
--- a/lib_com/get_gain_fx.c
+++ b/lib_com/get_gain_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/gs_bitallocation_fx.c b/lib_com/gs_bitallocation_fx.c
index 67dde91377b1b4cbaf0a159f29e7b211209895c2..44a65873fe8fa8e77a62026094a028a5e37badac 100644
--- a/lib_com/gs_bitallocation_fx.c
+++ b/lib_com/gs_bitallocation_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
@@ -876,9 +879,6 @@ static Word32 Find_bit_frac_fx(
}
ELSE
{
-#ifdef DEBUGGING
- printf( "1/%d NOT DEFINED in Find_bit_frac\n", nb_band );
-#endif
}
L_out = L_mult( inv_bandQ15, shl( remaining_bits, 2 ) ); /*Q18*/
diff --git a/lib_com/gs_gains_fx.c b/lib_com/gs_gains_fx.c
index c1654b43384778914ec6e1e71f04fbfcf5649491..a374677bc24675e69837065828182c91ff6817cb 100644
--- a/lib_com/gs_gains_fx.c
+++ b/lib_com/gs_gains_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/gs_inact_switching_fx.c b/lib_com/gs_inact_switching_fx.c
index db833220ebac37463ea5236e561ab17c4043374a..e57fca4c392d6bd34c5387af603b69ccfc73ef39 100644
--- a/lib_com/gs_inact_switching_fx.c
+++ b/lib_com/gs_inact_switching_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/gs_noisefill_fx.c b/lib_com/gs_noisefill_fx.c
index 534f9edc224ed1c82fc4ec102ad014adbcf4a589..d12290902a8471853d6fc3af57fdc768a38b74f3 100644
--- a/lib_com/gs_noisefill_fx.c
+++ b/lib_com/gs_noisefill_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/gs_preech_fx.c b/lib_com/gs_preech_fx.c
index 3f72510410c79dba6fd230d58bc99b64371a2cfb..e7f9007a061a5e83cfee153ef280fd9387806051 100644
--- a/lib_com/gs_preech_fx.c
+++ b/lib_com/gs_preech_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/guided_plc_util_fx.c b/lib_com/guided_plc_util_fx.c
index 81723b42661dfb8458e9138428fe564119d5d552..a2f02b05d283174185aaf08635a029af010f5fa7 100644
--- a/lib_com/guided_plc_util_fx.c
+++ b/lib_com/guided_plc_util_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/hp50_fx.c b/lib_com/hp50_fx.c
index 031bca0a7ff8480f2c24cd2ee5e2db4ac5a73b9b..9f2c1cfe6a0202a17c0acb90ab5c3eb124370401 100644
--- a/lib_com/hp50_fx.c
+++ b/lib_com/hp50_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/hq2_bit_alloc_fx.c b/lib_com/hq2_bit_alloc_fx.c
index 40df76cae17dd491ce44a34c6e4462d19e055368..db5397eeae951c33b80bf91052d4e56e5fa232c3 100644
--- a/lib_com/hq2_bit_alloc_fx.c
+++ b/lib_com/hq2_bit_alloc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_com/hq2_core_com_fx.c b/lib_com/hq2_core_com_fx.c
index b8ae7880de966f9c8f81877cd86ac98214a53533..80547e3cf18d2d48e0881cdeb516ce929cff20f3 100644
--- a/lib_com/hq2_core_com_fx.c
+++ b/lib_com/hq2_core_com_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
diff --git a/lib_com/hq2_noise_inject_fx.c b/lib_com/hq2_noise_inject_fx.c
index c3b373d51d2efde69fa8044f047776fdf0eea8d1..c8e59f3b4efa05bb7c1e7f29d857cb80fb4fcced 100644
--- a/lib_com/hq2_noise_inject_fx.c
+++ b/lib_com/hq2_noise_inject_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_com/hq_bit_allocation_fx.c b/lib_com/hq_bit_allocation_fx.c
index 1ba994e95563081d248f0f56dfa223a5a6a76d47..fe17d5d1b233b854722225b75adbc1243f8fce0c 100644
--- a/lib_com/hq_bit_allocation_fx.c
+++ b/lib_com/hq_bit_allocation_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/hq_conf_fx.c b/lib_com/hq_conf_fx.c
index 5583e231eff6a8e35001d342cae7391a9add8b69..cebab16b96e6efeb4766db5e112b309a922fb9b9 100644
--- a/lib_com/hq_conf_fx.c
+++ b/lib_com/hq_conf_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/hq_tools_fx.c b/lib_com/hq_tools_fx.c
index 1128ec0c67cf77be5f872d391132f8ec7e31275c..dc1ce1c2e810fea867580d7ebb1fd926828a3d7d 100644
--- a/lib_com/hq_tools_fx.c
+++ b/lib_com/hq_tools_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/hvq_pvq_bitalloc_fx.c b/lib_com/hvq_pvq_bitalloc_fx.c
index 905749d47d8ca12ecf270991ac0cab4a2082c75b..7078075033e9bd50fdff8e9b01c023916d42e209 100644
--- a/lib_com/hvq_pvq_bitalloc_fx.c
+++ b/lib_com/hvq_pvq_bitalloc_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/ifft_rel_fx.c b/lib_com/ifft_rel_fx.c
index 933925b11bfdb9619a511f76569ad3f436504639..e44bb834b242917a324806b30cbac2c94234e156 100644
--- a/lib_com/ifft_rel_fx.c
+++ b/lib_com/ifft_rel_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/igf_base_fx.c b/lib_com/igf_base_fx.c
index 7b46451c3f567d2c8151fe2bafcb5513fc780b03..8b6b2c5bb43ebfe9d299af5a80d0fb582eea4327 100644
--- a/lib_com/igf_base_fx.c
+++ b/lib_com/igf_base_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/index_pvq_opt_fx.c b/lib_com/index_pvq_opt_fx.c
index 8e22672278a721c76821f6e4439b12487384bf29..2dd63c8abcf37204fb095db6bb0b0712a624d553 100644
--- a/lib_com/index_pvq_opt_fx.c
+++ b/lib_com/index_pvq_opt_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/int_lsp_fx.c b/lib_com/int_lsp_fx.c
index ab84c76bbf51544f5b24366b9afb61c883e970c9..1dc5d82bc6ab103094bf8d420e4f1e73ac87a8a7 100644
--- a/lib_com/int_lsp_fx.c
+++ b/lib_com/int_lsp_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/interleave_spectrum_fx.c b/lib_com/interleave_spectrum_fx.c
index 0b04475d9ffbbcfe44bf1a2424764d7a563ede50..11f451bfb28af740376358ece606eb0fde803de0 100644
--- a/lib_com/interleave_spectrum_fx.c
+++ b/lib_com/interleave_spectrum_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/interpol_fx.c b/lib_com/interpol_fx.c
index 78c277a216afe4e35bfa54626d7f70a573a5174c..b274c531fcf610b004734f95dfe431e13679a77a 100644
--- a/lib_com/interpol_fx.c
+++ b/lib_com/interpol_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/isf_dec_amr_wb_fx.c b/lib_com/isf_dec_amr_wb_fx.c
index 0d623b3f636ed0c9eb52fa6a41780ddc7adee1f3..7af42c2652839730d7b77105174197a5b4e38a5a 100644
--- a/lib_com/isf_dec_amr_wb_fx.c
+++ b/lib_com/isf_dec_amr_wb_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h" /* Compilation switches */
diff --git a/lib_com/ivas_agc_com_fx.c b/lib_com/ivas_agc_com_fx.c
index 35a4f1581b85ce82e86f16747181dd57c410e9c8..63a3d5d871e4cefe2fdb734990d9390dc232d058 100644
--- a/lib_com/ivas_agc_com_fx.c
+++ b/lib_com/ivas_agc_com_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_com/ivas_arith_fx.c b/lib_com/ivas_arith_fx.c
index aa261f69daab8bf32323b2299d212927b82d3afb..64db62e668ef21c25791b1e044cbf1291290981b 100644
--- a/lib_com/ivas_arith_fx.c
+++ b/lib_com/ivas_arith_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_com/ivas_avq_pos_reorder_com_fx.c b/lib_com/ivas_avq_pos_reorder_com_fx.c
index 5d05618e1b5eaa0b2fd5469f3e5b78df1c12b240..940062aa4abbbbe2deb18793880741afcb5dbb2e 100644
--- a/lib_com/ivas_avq_pos_reorder_com_fx.c
+++ b/lib_com/ivas_avq_pos_reorder_com_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_com/ivas_cnst.h b/lib_com/ivas_cnst.h
index 9c6c825079de125bda1ee115925c8ae84d560e62..b41964b0cdf6936933782c8c78d88cc3ab276cc3 100644
--- a/lib_com/ivas_cnst.h
+++ b/lib_com/ivas_cnst.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#ifndef IVAS_CNST_H
#define IVAS_CNST_H
@@ -847,10 +819,6 @@ enum fea_names
/* MDCT stereo modes */
#define SMDCT_MS_DECISION 0
-#ifdef DEBUG_FORCE_MDCT_STEREO_MODE
-#define SMDCT_FORCE_LR 1
-#define SMDCT_FORCE_MS 2
-#endif
#define MAX_SFB 70 /* Maximum number of stereo frequency bands = 64 + 6 for TCX after ACELP */
@@ -1256,12 +1224,8 @@ typedef enum
{
MASA_STEREO_NOT_DEFINED,
MASA_STEREO_SPACED_MICS,
-#ifdef FIX_FLOAT_1578_OMASA_REND_SPIKES
MASA_STEREO_DOWNMIX,
MASA_DUAL_MONO
-#else
- MASA_STEREO_DOWNMIX
-#endif
} MASA_TRANSPORT_SIGNAL_TYPE;
typedef enum
@@ -1588,11 +1552,9 @@ typedef enum
#define RESAMPLE_FACTOR_16_48_FX ( 5461 ) // Q14
#define RESAMPLE_FACTOR_32_48_FX ( 10922 ) // Q14
-#ifdef FIX_BASOP_2023_TDREND_DISTATT_PRECISION
#define DIST_ATT_DEFAULT_MAXDIST_Q25 528482304 /* Q25 */ /* Default maxDist based on maximum radius in encoded metadata (2^ISM_RADIUS_NBITS-1)*0.25 */
#define DIST_ATT_DEFAULT_REFDIST_Q28 ONE_IN_Q28 /* Q28 */ /* Default refDist 1.0 in Q28 */
#define DIST_ATT_DEFAULT_ROLLOFF_Q28 ONE_IN_Q28 /* Q28 */ /* Default rolloffFactor 1.0 in Q28 */
-#endif
/* ----- Enums - TD Renderer ----- */
@@ -1650,7 +1612,6 @@ typedef enum
#define IVAS_REVERB_DEFAULT_M_N_BANDS 31
#define IVAS_REVERB_DEFAULT_S_N_BANDS 60
-#ifdef FIX_1452_DEFAULT_REVERB
#define IVAS_REVERB_DEFAULT_S_ACOUSTIC_PRE_DELAY_FX 2013266 /* 0.015f in Q27 */
#define IVAS_REVERB_DEFAULT_S_INPUT_PRE_DELAY_FX 2684355 /* 0.02f in Q27 */
@@ -1659,7 +1620,6 @@ typedef enum
#define IVAS_REVERB_DEFAULT_L_ACOUSTIC_PRE_DELAY_FX 2181038 /* 0.01625f in Q27 */
#define IVAS_REVERB_DEFAULT_L_INPUT_PRE_DELAY_FX 13421773 /* 0.1f in Q27 */
-#endif
#define LR_IAC_LENGTH_NR_FC ( RV_LENGTH_NR_FC )
#define LR_IAC_LENGTH_NR_FC_16KHZ ( RV_LENGTH_NR_FC_16KHZ )
@@ -1953,9 +1913,7 @@ typedef enum
#define ONE_IN_Q31 0x7fffffff
#define ONE_IN_Q45 (Word64)0x200000000000
#define ONE_IN_Q62 (Word64)0x4000000000000000
-#ifdef FIX_1548_HARMONIZE_NON_DIEGETIC_PANNING_LAW
#define MINUS_ONE_IN_Q31 ( -2147483647 - 1 ) /* same as (Word32)0x80000000 */
-#endif
#define MAX_WORD16 32767
diff --git a/lib_com/ivas_cov_smooth_fx.c b/lib_com/ivas_cov_smooth_fx.c
index c81de63477e3f2399f2ad222f2753e89d43dab1a..6ce1209634c5ffe0c48cd069f747283354d3a4dc 100644
--- a/lib_com/ivas_cov_smooth_fx.c
+++ b/lib_com/ivas_cov_smooth_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_com/ivas_dirac_com_fx.c b/lib_com/ivas_dirac_com_fx.c
index a6aa486f287121891a105174a5c341014782d452..6afaf7f1f6284c78bcd953e0da4f39716b3ee5dc 100644
--- a/lib_com/ivas_dirac_com_fx.c
+++ b/lib_com/ivas_dirac_com_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
diff --git a/lib_com/ivas_entropy_coder_common_fx.c b/lib_com/ivas_entropy_coder_common_fx.c
index fcf388b0c73fd84166c1fe0e8a12445a2ac0682f..3402bc558fab4a086962232c300e8feea575abc3 100644
--- a/lib_com/ivas_entropy_coder_common_fx.c
+++ b/lib_com/ivas_entropy_coder_common_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_com/ivas_error.h b/lib_com/ivas_error.h
index 3e965151e154406e658655cfc9494cbd62968347..45a1318a35511ab58357c78ef05ecbb68625f512 100644
--- a/lib_com/ivas_error.h
+++ b/lib_com/ivas_error.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
@@ -93,9 +65,6 @@ typedef enum
IVAS_ERR_IO_CONFIG_PAIR_NOT_SUPPORTED,
IVAS_ERR_TSM_NOT_ENABLED,
IVAS_ERR_FETCH_SIZE_NO_MULTIPLE_OF_5MS,
-#ifdef DEBUGGING
- IVAS_ERR_INVALID_FORCE_MODE,
-#endif
/*----------------------------------------*
* input data errors *
@@ -230,10 +199,6 @@ static inline const char *ivas_error_to_string( ivas_error error_code )
return "Unexpected NULL pointer";
case IVAS_ERR_METADATA_NOT_EXPECTED:
return "Metadata input not expected for current configuration";
-#ifdef DEBUGGING
- case IVAS_ERR_INVALID_FORCE_MODE:
- return "Invalid force mode";
-#endif
case IVAS_ERR_NOT_IMPLEMENTED:
return "Not implemented";
case IVAS_ERR_ISM_FILE_READER_INVALID_METADATA_FORMAT:
diff --git a/lib_com/ivas_error_utils.h b/lib_com/ivas_error_utils.h
index 791bc458dfd9dbc9fba9986bed8c8c08631f0371..2fecb2440d2f48caef8fcbc76dbfe28548756476 100644
--- a/lib_com/ivas_error_utils.h
+++ b/lib_com/ivas_error_utils.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include "options.h"
diff --git a/lib_com/ivas_fb_mixer_fx.c b/lib_com/ivas_fb_mixer_fx.c
index 3f1cb29e59419e072a55f2454f9200b21810036c..72f438001848e18642ffc3330e414aa702a8a101 100644
--- a/lib_com/ivas_fb_mixer_fx.c
+++ b/lib_com/ivas_fb_mixer_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
diff --git a/lib_com/ivas_filters_fx.c b/lib_com/ivas_filters_fx.c
index 5f1b1423b93703d585690fa03dd2bec6fb3543a0..fa45b01860fa1e1701df307f1236bb4881a85ebe 100644
--- a/lib_com/ivas_filters_fx.c
+++ b/lib_com/ivas_filters_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_com/ivas_ism_com_fx.c b/lib_com/ivas_ism_com_fx.c
index 43cdf441f8f908a61cc1a0d40d65f78be9443823..e08e42ed30daecff94a85a9e737d2ff5ab4ebc16 100644
--- a/lib_com/ivas_ism_com_fx.c
+++ b/lib_com/ivas_ism_com_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_com/ivas_lfe_com_fx.c b/lib_com/ivas_lfe_com_fx.c
index 8047af53ffdadaa5bccd8d628cafd75ee6c9c145..39b3c94284a03c49dcc47ab80ed21991c9644c82 100644
--- a/lib_com/ivas_lfe_com_fx.c
+++ b/lib_com/ivas_lfe_com_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_com/ivas_limiter_fx.c b/lib_com/ivas_limiter_fx.c
index 0ef37acdf183f0003e78b6adc89735ffbfb83ce7..4ac438aec74fe3db08faad27bd807a52a554e966 100644
--- a/lib_com/ivas_limiter_fx.c
+++ b/lib_com/ivas_limiter_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_com/ivas_masa_com_fx.c b/lib_com/ivas_masa_com_fx.c
index d83ae1d32c90c32b7484529809f6ed8f43ba58df..f982aa77ae3f2823596101561285a8208c3d0148 100644
--- a/lib_com/ivas_masa_com_fx.c
+++ b/lib_com/ivas_masa_com_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
diff --git a/lib_com/ivas_mc_com_fx.c b/lib_com/ivas_mc_com_fx.c
index 05414368407bdc39c54f8dd1a04eb458761e6b41..d7ac15bbf4e5cc8f905855ed5192ee2415dcf562 100644
--- a/lib_com/ivas_mc_com_fx.c
+++ b/lib_com/ivas_mc_com_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
diff --git a/lib_com/ivas_mc_param_com_fx.c b/lib_com/ivas_mc_param_com_fx.c
index 01f8614cdd06d0ee8694db3f10159726a6a1d528..a12b4b2549f4c5f6a1dad451e4f6b86e0c8fb99c 100644
--- a/lib_com/ivas_mc_param_com_fx.c
+++ b/lib_com/ivas_mc_param_com_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
diff --git a/lib_com/ivas_mcmasa_com_fx.c b/lib_com/ivas_mcmasa_com_fx.c
index b611b1290aa14eef36fd09e95e27a4e9ea8b3e98..25dd4500e4431a7cdddd7e323d2ee3bcfbea12d7 100644
--- a/lib_com/ivas_mcmasa_com_fx.c
+++ b/lib_com/ivas_mcmasa_com_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include "ivas_cnst.h"
#include "options.h"
diff --git a/lib_com/ivas_mct_com_fx.c b/lib_com/ivas_mct_com_fx.c
index bcfada29e48fc0ef926997cc6f40b06b6ed40ef1..4ced8ba30a2ac45cd9fbb707693a520babe0acd1 100644
--- a/lib_com/ivas_mct_com_fx.c
+++ b/lib_com/ivas_mct_com_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_com/ivas_mdct_core_com_fx.c b/lib_com/ivas_mdct_core_com_fx.c
index ec623fbf1512b3914acf31aa8606c4fa9a15c1aa..33302ffc2377a3ac31943ecf3ca7b0723deb33a4 100644
--- a/lib_com/ivas_mdct_core_com_fx.c
+++ b/lib_com/ivas_mdct_core_com_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_com/ivas_mdct_imdct_fx.c b/lib_com/ivas_mdct_imdct_fx.c
index 6e910289da76873bef63b113dda8d6e22d1e1853..12e93e43e7c30dd5902f48204bc1c0e28dc2816a 100644
--- a/lib_com/ivas_mdct_imdct_fx.c
+++ b/lib_com/ivas_mdct_imdct_fx.c
@@ -1,43 +1,12 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
#include "prot_fx.h"
#include "ivas_prot_fx.h"
#include "ivas_rom_com.h"
-#ifdef DEBUGGING
-#include "debug.h"
-#endif
#include "ivas_stat_com.h"
#include "wmc_auto.h"
diff --git a/lib_com/ivas_mdft_imdft_fx.c b/lib_com/ivas_mdft_imdft_fx.c
index ae92fddf3070adf3ef2cf446f85e2759c2456815..153da7bbc8c15129ec2582deffbe0156cf3ca0b6 100644
--- a/lib_com/ivas_mdft_imdft_fx.c
+++ b/lib_com/ivas_mdft_imdft_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
@@ -37,9 +9,6 @@
#include "ivas_rom_com.h"
#include
#include "wmc_auto.h"
-#ifdef DEBUGGING
-#include "debug.h"
-#endif
#include "ivas_prot_fx.h"
diff --git a/lib_com/ivas_omasa_com_fx.c b/lib_com/ivas_omasa_com_fx.c
index e5986879b9525a064a1fbf6225d475feaf3e7c74..fe31c7e6e9b0008324a33f898822b27b5409dddc 100644
--- a/lib_com/ivas_omasa_com_fx.c
+++ b/lib_com/ivas_omasa_com_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include "options.h"
#include
diff --git a/lib_com/ivas_osba_com_fx.c b/lib_com/ivas_osba_com_fx.c
index 5527f53898e41e5fbc4f8f70638a81df90912404..d5fea91e00ab1dfe8709bf7921cc4da07a1a6524 100644
--- a/lib_com/ivas_osba_com_fx.c
+++ b/lib_com/ivas_osba_com_fx.c
@@ -1,41 +1,10 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include "options.h"
#include "ivas_cnst.h"
#include "ivas_prot_fx.h"
-#ifdef DEBUGGING
-#include "debug.h"
-#endif
/*! r : ISM format mode */
ISM_MODE ivas_osba_ism_mode_select(
diff --git a/lib_com/ivas_pca_tools_fx.c b/lib_com/ivas_pca_tools_fx.c
index 115bf0b69e2779227cf55dd778bbf4611e09f70d..a94e5e5b8b427c9f76d14d47054a492f266e82cf 100644
--- a/lib_com/ivas_pca_tools_fx.c
+++ b/lib_com/ivas_pca_tools_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_com/ivas_prot_fx.h b/lib_com/ivas_prot_fx.h
index 910e872b250668f076aec21662bc638695d523ce..c38ad4ce6e97bf3913a7aa37df6d4cf1c575cc13 100644
--- a/lib_com/ivas_prot_fx.h
+++ b/lib_com/ivas_prot_fx.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#ifndef IVAS_PROT_FX_H
#define IVAS_PROT_FX_H
@@ -1173,12 +1145,8 @@ void stereo_dft_dec_fx(
Word32 stereo_dft_enc_synthesize_fx(
STEREO_DFT_ENC_DATA_HANDLE hStereoDft, /* i/o: encoder stereo handle */
-#ifdef NONBE_FIX_ISSUE_2206
Word32 *output_fx, /* i/o : output synthesis q_output */
Word16 *q_output, /* i/o : output synthesis Q0 */
-#else
- Word32 *output_fx, /* o : output synthesis Q16 */
-#endif
Word16 *output_start_index,
Word16 *output_end_index,
const Word16 chan, /* i : channel number */
@@ -1358,12 +1326,8 @@ void stereo_tcx_init_dec_fx(
void stereo_icBWE_enc_fx(
CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder structure */
-#ifdef NONBE_FIX_ISSUE_2206_SWB_EXPERIMENT
const Word16 shb_speech_ref_fx16[], /* i : SHB speech ref channel shb_speech_ref_q*/
const Word16 shb_speech_ref_q, /* i : SHB speech ref channel Q */
-#else
- const Word16 shb_speech_ref_fx16[], /* i : SHB speech ref channel Q0*/
-#endif
Word16 shb_speech_nonref_fx_16[], /* i/o: SHB speech non-ref channel shb_speech_nonref_e*/
Word16 shb_speech_nonref_e, /* i/o: SHB speech non-ref channel */
const Word16 *voice_factors_fx /* i : voicing factors Q15 */
@@ -1928,12 +1892,8 @@ ivas_error TDREND_MIX_LIST_SetOrient_fx(
void TDREND_MIX_LIST_SetPos_fx(
BINAURAL_TD_OBJECT_RENDERER_HANDLE hBinRendererTd, /* i/o: TD renderer handle */
-#ifdef FIX_BASOP_2023_TDREND_DISTATT_PRECISION
const Word32 *Pos_p, /* i : Listener's position */
const Word16 Pos_q /* i : Listener's position Q */
-#else
- const Word32 *Pos_p /* i : Listener's position */
-#endif
);
ivas_error TDREND_Update_listener_orientation_fx(
@@ -2066,11 +2026,7 @@ void destroy_core_dec_fx(
);
void ivas_destroy_dec_fx(
-#ifdef FIX_FMSW_DEC
Decoder_Struct **st_ivas /* i/o: IVAS decoder structure */
-#else
- Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
-#endif
);
ivas_error ivas_ism_dec_config_fx(
@@ -2681,9 +2637,7 @@ Word16 ivas_acelp_tcx20_switching_fx(
Word16 *inp_fx, /* i : new input signal */
Word16 q_inp, /* i : i/p Q */
Word16 *wsp, /* i : input weighted signal */
-#ifdef NONBE_FIX_ISSUE_2206
Word16 q_wsp, /* i : Q of input weighted signal */
-#endif
Word32 non_staX, /* i : unbound non-stationarity for sp/mu clas */
Word16 *pitch_fr, /* i : fraction pitch values */
Word16 *voicing_fr, /* i : fractional voicing values */
@@ -2782,34 +2736,23 @@ void InternalTCXDecoder_fx(
void stereo_tcx_core_enc(
Encoder_State *st, /* i/o: encoder state structure */
-#ifdef SIMPLIFY_CORE_ENC
Word16 new_samples_12k8[], /* i : buffer of input signal @12.8 kHz */
Word16 new_samples_16k[], /* i : buffer of input signal @16 kHz */
-#else
- const Word16 new_samples_12k8[], /* i : buffer of input signal @12.8 kHz */
- const Word16 new_samples_16k[], /* i : buffer of input signal @16 kHz */
-#endif
const Word16 Aw_fx[], /* i : weighted A(z) unquant. for subframes,Q12*/
Word16 lsp_new_fx[], /* i : LSPs at the end of the frame, Q15 */
Word16 lsp_mid_fx[], /* i : LSPs in the middle of the frame, Q15 */
Word16 pitch_buf_fx[NB_SUBFR16k], /* o : pitch for each subframe, Q6 */
const Word16 last_element_mode, /* i : last element mode, Q0 */
const Word16 vad_hover_flag, /* i : VAD hangover flag, Q0 */
-#ifdef SIMPLIFY_CORE_ENC
const Word16 Q_new_orig /* i : Scaling factor of new_samples_xx[] */
-#else
- Word16 Q_new
-#endif
);
-#ifdef SIMPLIFY_CORE_ENC
void stereo_tcx_enc_scale_buffers(
Encoder_State *st, /* i/o: encoder state structure */
const Word16 n_channels, /* i : number of core channels */
const Word16 Q_spec_old /* i : Q of old spectrum */
);
-#endif
Word16 transient_analysis_ivas_fx(
TRAN_DET_HANDLE hTranDet, /* i : handle transient detection */
const Word16 cor_map_LT[], /* i : LT correlation map Q_cor_map = Qx */
@@ -3746,11 +3689,6 @@ Word16 getNumChanSynthesis(
Decoder_Struct *st_ivas /* i : IVAS decoder structure */
);
-#ifndef FIX_FMSW_DEC
-void ivas_destroy_dec_fx(
- Decoder_Struct *st_ivas /* i/o: IVAS decoder structure */
-);
-#endif
ivas_error ivas_core_dec_fx(
Decoder_Struct *st_ivas, /* i/o: IVAS decoder structure */
SCE_DEC_HANDLE hSCE, /* i/o: SCE decoder structure */
@@ -5731,12 +5669,8 @@ void pre_proc_ivas_fx(
Word16 *epsP_fx_q, /* i : LP prediction errors */
Word16 lsp_new_fx[M], /* i/o: LSPs at the end of the frame Q15*/
Word16 lsp_mid_fx[M], /* i/o: LSPs in the middle of the frame Q15*/
-#ifdef NONBE_FIX_ISSUE_2206
Word16 *new_inp_resamp16k_fx, /* o : new input signal @16kHz, non pre-emphasised, used by the WB TBE/BWE q_new_inp_resamp16k_fx*/
Word16 *q_new_inp_resamp16k_fx, /* o : Q value of new input signal @16kHz, non pre-emphasised, used by the WB TBE/BWE */
-#else
- Word16 *new_inp_resamp16k_fx, /* o : new input signal @16kHz, non pre-emphasised, used by the WB TBE/BWE Q_new-1*/
-#endif
Word16 *Voicing_flag, /* o : voicing flag for HQ FEC Q0*/
Word16 old_wsp_fx[], /* i : weighted input signal buffer e_old_wsp*/
const Word16 e_old_wsp, /* i : Q value of weighted input signal buffer */
@@ -5746,11 +5680,7 @@ void pre_proc_ivas_fx(
const Word16 vad_hover_flag, /* i : VAD hangover flag Q0*/
const Word16 flag_16k_smc, /* i : flag to indicate if the OL SMC is run at 16 kHz Q0*/
Word32 enerBuffer_fx[CLDFB_NO_CHANNELS_MAX], /* i : energy buffer e_enerBuffer */
-#ifdef SIMPLIFY_CORE_ENC
Word16 e_enerBuffer, /* i : Q value of energy buffer */
-#else
- const Word16 e_enerBuffer, /* i : Q value of energy buffer */
-#endif
Word16 fft_buff_fx[2 * L_FFT], /* i : FFT buffer Qx*/
const Word16 cor_map_sum_fx, /* i : speech/music clasif. parameter Q8*/
Word16 *Q_new /* i/o: Q factor of speech buffers */
@@ -6115,12 +6045,8 @@ UWord16 get_indice_st(
void stereo_mdct_core_enc_fx(
CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder structure */
-#ifdef NONBE_FIX_ISSUE_2206_MDCT_STEREO_FIX_2549
Word16 new_samples[CPE_CHANNELS][L_INP], /* i : new samples new_samples_q*/
Word16 *new_samples_q,
-#else
- Word16 new_samples[CPE_CHANNELS][L_INP], /* i : new samples Qnew-1*/
-#endif
Word16 old_wsp[CPE_CHANNELS][L_WSP], /* i : 12.8kHz weighted speech (for LTP Qx*/
Word16 pitch_buf_fx[CPE_CHANNELS][NB_SUBFR16k] /* o : floating pitch for each subframe Q6*/
);
@@ -6167,12 +6093,8 @@ void stereo_switching_dec_fx(
void ivas_mdct_core_whitening_enc_fx(
CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder structure */
-#ifdef NONBE_FIX_ISSUE_2206_MDCT_STEREO_FIX_2549
Word16 new_samples_fx[CPE_CHANNELS][L_INP], /* i : new samples Q_new[]-1*/
Word16 *Q_new, /* i : new samples q */
-#else
- Word16 new_samples_fx[CPE_CHANNELS][L_INP], /* i : new samples */
-#endif
Word16 old_wsp_fx[CPE_CHANNELS][L_WSP], /* i : 12.8kHz weighted speech (for LTP */
Word16 pitch_buf[CPE_CHANNELS][NB_SUBFR16k], /* o : floating pitch for each subframe */
Word32 *mdst_spectrum_long[CPE_CHANNELS], /* o : buffer for MDST spectrum */
@@ -6535,10 +6457,6 @@ ivas_error ivas_osba_enc_reconfig_fx(
void ivas_set_surplus_brate_enc(
Encoder_Struct *st_ivas /* i/o: IVAS encoder structure */
-#ifdef DEBUG_MODE_INFO
- ,
- const int16_t *nb_bits_metadata /* i : number of metadata bits */
-#endif
);
void ivas_set_surplus_brate_dec(
diff --git a/lib_com/ivas_qmetadata_com_fx.c b/lib_com/ivas_qmetadata_com_fx.c
index 93c3bd806f4cb58668a58882e92fc47173745258..764a71e3470e38b34f6d45582fd3fcffb4e09ca3 100644
--- a/lib_com/ivas_qmetadata_com_fx.c
+++ b/lib_com/ivas_qmetadata_com_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
diff --git a/lib_com/ivas_qspherical_com_fx.c b/lib_com/ivas_qspherical_com_fx.c
index 2a0e7797c27c0c282680a748e86a4624ac910a38..8a1ba609e5a59808b4d6c561e6d1980e17b83848 100644
--- a/lib_com/ivas_qspherical_com_fx.c
+++ b/lib_com/ivas_qspherical_com_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
diff --git a/lib_com/ivas_rom_com.h b/lib_com/ivas_rom_com.h
index 90de10fd06119625da0dcc1ba1de10304671a74b..5e4d3f4fefee483d4dfe9bb2a2893d46f32fc11e 100644
--- a/lib_com/ivas_rom_com.h
+++ b/lib_com/ivas_rom_com.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#ifndef IVAS_ROM_COM_H
#define IVAS_ROM_COM_H
@@ -338,9 +310,6 @@ extern const Word32 ls_azimuth_CICP16_fx[9];
extern const Word32 ls_elevation_CICP16_fx[9];
extern const Word32 ls_azimuth_CICP19_fx[11];
extern const Word32 ls_elevation_CICP19_fx[11];
-#ifndef FIX_BASOP_2095_REMOVE_TABLES_PT01
-extern const Word16 pow_10_q11[128];
-#endif
extern const Word32 pow_10_q23[14];
extern const Word16 ivas_sin_az_fx[361];
extern const Word16 ivas_sine_panning_tbl_fx[601];
diff --git a/lib_com/ivas_rom_com_fx.c b/lib_com/ivas_rom_com_fx.c
index f8ef32ed0ab9216fa2cc303d9d46408682227d18..4bb05f386211725078099a9d3a366929b2bd6c8a 100644
--- a/lib_com/ivas_rom_com_fx.c
+++ b/lib_com/ivas_rom_com_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
@@ -82,173 +54,6 @@ const Word16 dft_band_res_cod[3][4] =
{0,5,6,7}
};
-#ifndef FIX_BASOP_2095_REMOVE_TABLES_PT01
-// Q31
-const Word32 dft_res_gains_q_Q31[][2] =
-{
- /* quantization points for joint quantization of prediction gain and residual energy */
-
- /* column 1 (|ILD| = 0): */
- {0, 0 },
- {0, 251216928 },
- {0, 487459456 },
- {0, 731632640 },
- {0, 997611392 },
- {0, 1299397248 },
- {0, 1666984192 },
- {0, 2147483647 },
-
- /* column 2 (|ILD| = 2): */
- {246151024, 0 },
- {249475328, 247871152 },
- {258660112, 480729248 },
- {274304544, 720918848 },
- {298427200, 981720000 },
- {334663840, 1276185088 },
- {391374592, 1632160640 },
- {485919712, 2091786496 },
-
- /* column 3 (|ILD| = 4): */
- {485919712, 0 },
- {492224736, 238188144 },
- {509610752, 461283776 },
- {539117184, 690072384 },
- {584326016, 936189056 },
- {651608832, 1210182144 },
- {755411712, 1534299776 },
- {924504576, 1938292992 },
-
- /* column 4 (|ILD| = 6): */
- {713563712, 0 },
- {722237376, 223142880 },
- {746085184, 431184640 },
- {786311872, 642617280 },
- {847364864, 866812416 },
- {936938496, 1111020032 },
- {1072199936, 1390431232 },
- {1285225984, 1720430720 },
-
- /* column 5 (|ILD| = 8): */
- {924504576, 0 },
- {934784576, 204139792 },
- {962942400, 393358880 },
- {1010083968, 583482048 },
- {1080789888, 781462848 },
- {1182728704, 991308544 },
- {1332741248, 1221608960 },
- {1559902080, 1475937536 },
-
- /* column 6 (|ILD| = 10): */
- {1115604864, 0 },
- {1126709504, 182744416 },
- {1156997632, 351025536 },
- {1207276672, 517958016 },
- {1281710592, 688294272 },
- {1387005952, 863412992 },
- {1537761536, 1046870336 },
- {1757032448, 1234717184 },
-
- /* column 7 (|ILD| = 13): */
- {1361843968, 0 },
- {1372924928, 149366080 },
- {1402942464, 285507936 },
- {1452130560, 417893888 },
- {1523515136, 548787328 },
- {1621670144, 677135936 },
- {1756740352, 802203264 },
- {1942499840, 915633344 },
-
- /* column 8 (|ILD| = 16): */
- {1559902080, 0 },
- {1569913600, 117815248 },
- {1596862336, 224162928 },
- {1640492800, 325650848 },
- {1702660352, 423060736 },
- {1785997696, 514412544 },
- {1896788608, 597466432 },
- {2042241920, 664027712 },
-
- /* column 9 (|ILD| = 19): */
- {1714196608, 0 },
- {1722634112, 90359672 },
- {1745223424, 171238192 },
- {1781415040, 247171072 },
- {1832190080, 318199104 },
- {1898830848, 382271424 },
- {1984989952, 437025792 },
- {2094086528, 475912448 },
-
- /* column 10 (|ILD| = 22): */
- {1831427712, 0 },
- {1838194432, 67828272 },
- {1856228992, 128123168 },
- {1884882944, 183977072 },
- {1924581248, 235132272 },
- {1975822336, 279821408 },
- {2040659200, 316058048 },
- {2120554240, 339023232 },
-
- /* column 11 (|ILD| = 25): */
- {1918819584, 0 },
- {1924055168, 50102940 },
- {1937964416, 94399088 },
- {1959916032, 135003712 },
- {1990038784, 171579648 },
- {2028424960, 202728896 },
- {2076217216, 226931040 },
- {2133943808, 240762976 },
-
- /* column 12 (|ILD| = 30): */
- {2015827840, 0 },
- {2019068416, 29502130 },
- {2027636864, 55420112 },
- {2041056512, 78889960 },
- {2059271424, 99626064 },
- {2082150784, 116769424 },
- {2110128128, 129415952 },
- {2143192960, 135682304 },
-
- /* column 13 (|ILD| = 35): */
- {2072441984, 0 },
- {2074364032, 17033840 },
- {2079438464, 31939524 },
- {2087347712, 45337676 },
- {2098012032, 57039312 },
- {2111296384, 66537632 },
- {2127368192, 73321536 },
- {2146126464, 76351632 },
-
- /* column 14 (|ILD| = 40): */
- {2104959232, 0 },
- {2106073728, 9723806 },
- {2109011456, 18212808 },
- {2113579136, 25810606 },
- {2119712384, 32401234 },
- {2127314432, 37692632 },
- {2136458496, 41399188 },
- {2147054208, 42945376 },
-
- /* column 15 (|ILD| = 45): */
- {2123466240, 0 },
- {2124103936, 5514738 },
- {2125783296, 10322954 },
- {2128390400, 14615774 },
- {2131882240, 18322330 },
- {2136200832, 21283710 },
- {2141376256, 23332410 },
- {2147348352, 24150602 },
-
- /* column 16 (|ILD| = 50): */
- {2133943808, 0 },
- {2134306688, 3115998 },
- {2135260160, 5830418 },
- {2136737664, 8250632 },
- {2138715520, 10335839 },
- {2141157120, 11995844 },
- {2144077696, 13136157 },
- {2147440640, 13580687 }
-};
-#endif
/* tables for adaptive Golomb-Rice coding of DFT stereo parameters */
const Word16 dft_code_itd[] =
@@ -3403,15 +3208,6 @@ const Word32 ls_azimuth_CICP19_fx[11] = { 125829120, -125829120, 0, 566231040, -
/* Q22 */
const Word32 ls_elevation_CICP19_fx[11] = { 0, 0, 0, 0, 0, 0, 0, 146800640, 146800640, 146800640, 146800640 };
-#ifndef FIX_BASOP_2095_REMOVE_TABLES_PT01
-const Word16 pow_10_q11[128] = {
- 2048, 2085, 2123, 2161, 2200, 2240, 2281, 2322, 2364, 2407, 2451, 2496, 2541, 2587, 2634, 2682, 2731, 2780, 2831, 2882, 2934, 2988, 3042, 3097, 3153, 3211, 3269,
- 3328, 3389, 3450, 3513, 3576, 3641, 3708, 3775, 3843, 3913, 3984, 4056, 4130, 4205, 4281, 4359, 4438, 4519, 4601, 4684, 4769, 4856, 4944, 5034, 5125, 5218, 5313,
- 5410, 5508, 5608, 5710, 5813, 5919, 6026, 6136, 6247, 6360, 6476, 6593, 6713, 6835, 6959, 7085, 7214, 7345, 7478, 7614, 7752, 7893, 8036, 8182, 8331, 8482, 8636,
- 8793, 8952, 9115, 9280, 9449, 9620, 9795, 9973, 10154, 10338, 10526, 10717, 10911, 11109, 11311, 11516, 11725, 11938, 12155, 12375, 12600, 12829, 13062, 13299,
- 13540, 13786, 14036, 14291, 14550, 14815, 15084, 15357, 15636, 15920, 16209, 16503, 16803, 17108, 17418, 17734, 18056, 18384, 18718, 19058, 19404, 19756, 20114
-};
-#endif
// Q12
const Word16 icbwe_gsMapping_tbl_fx[16] = {
-8192, -5527, -3935, -2907, -2289, -1824, -1404, -1035, -692, -404, -286, -204, -81, 0, 163, 327
diff --git a/lib_com/ivas_rotation_com_fx.c b/lib_com/ivas_rotation_com_fx.c
index 27fdfb5a062fcc8b10ff8e74320957a31f1969b8..da014aefc1bfab0283dc9bc5deba8f777058e928 100644
--- a/lib_com/ivas_rotation_com_fx.c
+++ b/lib_com/ivas_rotation_com_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include "ivas_cnst.h"
#include
@@ -36,9 +8,6 @@
#include "options.h"
#include "prot_fx.h"
#include "ivas_prot_fx.h"
-#ifdef DEBUGGING
-#include "debug.h"
-#endif
#include "wmc_auto.h"
#include "basop_util.h"
#include "enh64.h"
diff --git a/lib_com/ivas_sba_config_fx.c b/lib_com/ivas_sba_config_fx.c
index 57bd35f838c7a3fb44c365f6ff7b45afd5baf7de..4c6842fea23b5b838947b61d82dc718b5a2f7f8b 100644
--- a/lib_com/ivas_sba_config_fx.c
+++ b/lib_com/ivas_sba_config_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
diff --git a/lib_com/ivas_sns_com_fx.c b/lib_com/ivas_sns_com_fx.c
index 652b095c10d9b7541808914c6b338ca3b84cd1d5..6e4f803f862043c9f49eeb81270f48fa534f0c93 100644
--- a/lib_com/ivas_sns_com_fx.c
+++ b/lib_com/ivas_sns_com_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_com/ivas_spar_com_fx.c b/lib_com/ivas_spar_com_fx.c
index 4733e4fa086c6a370344255238982d9180b38088..c77832d34dd9fe4947191837491cc2f4635ad3c9 100644
--- a/lib_com/ivas_spar_com_fx.c
+++ b/lib_com/ivas_spar_com_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_com/ivas_spar_com_quant_util_fx.c b/lib_com/ivas_spar_com_quant_util_fx.c
index 50820e240f241b69348a9e1d683e943dc218b542..cd27eb6d0c0d98946ef0ca63fc7e8785efb3b0eb 100644
--- a/lib_com/ivas_spar_com_quant_util_fx.c
+++ b/lib_com/ivas_spar_com_quant_util_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_com/ivas_stat_com.h b/lib_com/ivas_stat_com.h
index d3737fa1924f76dc7eee101a09fc2c51a8fba7e7..518bfd9ca00384612e330e5c2382f3ac5204523b 100644
--- a/lib_com/ivas_stat_com.h
+++ b/lib_com/ivas_stat_com.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#ifndef IVAS_STAT_COM
#define IVAS_STAT_COM
diff --git a/lib_com/ivas_stereo_dft_com_fx.c b/lib_com/ivas_stereo_dft_com_fx.c
index c85ccf53f0b1160264330c4e42698402baa57996..a224d6cc4328850386d5094f2c857c554b737f78 100644
--- a/lib_com/ivas_stereo_dft_com_fx.c
+++ b/lib_com/ivas_stereo_dft_com_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
diff --git a/lib_com/ivas_stereo_eclvq_com_fx.c b/lib_com/ivas_stereo_eclvq_com_fx.c
index 7d528f5b92207df25c3cc90272dd68e3eca57680..ab7180e83654cc24029a02db81c5c07d690a967f 100644
--- a/lib_com/ivas_stereo_eclvq_com_fx.c
+++ b/lib_com/ivas_stereo_eclvq_com_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_com/ivas_stereo_ica_com_fx.c b/lib_com/ivas_stereo_ica_com_fx.c
index 705c1756d66f540acf9149f56233e2443dc81a47..43f1286b11f5f4d58beb0b6384394a81d3d1bb22 100644
--- a/lib_com/ivas_stereo_ica_com_fx.c
+++ b/lib_com/ivas_stereo_ica_com_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively FOR experts who have experience with such software and
- solely FOR the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness FOR a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
diff --git a/lib_com/ivas_stereo_mdct_bands_com_fx.c b/lib_com/ivas_stereo_mdct_bands_com_fx.c
index 09c9d94c2864b945083f67246737565163ffeea8..bf3bfc2b8fc85b7b05ae9accddb6d4ca149a0f8d 100644
--- a/lib_com/ivas_stereo_mdct_bands_com_fx.c
+++ b/lib_com/ivas_stereo_mdct_bands_com_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
diff --git a/lib_com/ivas_stereo_mdct_stereo_com_fx.c b/lib_com/ivas_stereo_mdct_stereo_com_fx.c
index 02d141da2a5d4230507ab7a689789e366e16e52a..df42c3495c85d43ef8f514ab3822521a2cb05093 100644
--- a/lib_com/ivas_stereo_mdct_stereo_com_fx.c
+++ b/lib_com/ivas_stereo_mdct_stereo_com_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_com/ivas_stereo_psychlpc_com_fx.c b/lib_com/ivas_stereo_psychlpc_com_fx.c
index 3a130b8cbacc3e3c2070785ccf34bde94ba4d8af..e1ee30fa0ef732dd4d8fa9e495c569b8c465fa7b 100644
--- a/lib_com/ivas_stereo_psychlpc_com_fx.c
+++ b/lib_com/ivas_stereo_psychlpc_com_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_com/ivas_stereo_td_bit_alloc_fx.c b/lib_com/ivas_stereo_td_bit_alloc_fx.c
index 45dfb3110223d8c83886c107cec362b670a38c91..b20ff71feea8a125d01a6f3db4b3d7ce68a9b9c9 100644
--- a/lib_com/ivas_stereo_td_bit_alloc_fx.c
+++ b/lib_com/ivas_stereo_td_bit_alloc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_com/ivas_tools_fx.c b/lib_com/ivas_tools_fx.c
index 753c3ae296d58ece183562f08f139bc9bd288bc3..20438df6f0726ecc27be7d94074b5b17e2d42407 100644
--- a/lib_com/ivas_tools_fx.c
+++ b/lib_com/ivas_tools_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
diff --git a/lib_com/ivas_transient_det_fx.c b/lib_com/ivas_transient_det_fx.c
index ea3acdb9e5a981e966b0a2d3f5c83948603d57ff..4d8171401b4224739e65eff68859208ceee9a9a4 100644
--- a/lib_com/ivas_transient_det_fx.c
+++ b/lib_com/ivas_transient_det_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_com/lag_wind_fx.c b/lib_com/lag_wind_fx.c
index a83b90b9be26cf4ab7fc2486e73be09a577e14de..d0b59cd0de647a86366ea56b262cc1571150fe56 100644
--- a/lib_com/lag_wind_fx.c
+++ b/lib_com/lag_wind_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/lerp_fx.c b/lib_com/lerp_fx.c
index 2015a074cb9a9f7e44701d29a8cbef995b55dd19..9edb0ca236666c1c2c7265e3abb58e437d951b7d 100644
--- a/lib_com/lerp_fx.c
+++ b/lib_com/lerp_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/limit_t0_fx.c b/lib_com/limit_t0_fx.c
index 61eea907d538b486f3adf8c3222c0a395b1f17cf..311a4eab52f0953daf8312e28a5758069f9abfed 100644
--- a/lib_com/limit_t0_fx.c
+++ b/lib_com/limit_t0_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/log2.c b/lib_com/log2.c
index 6b8b402c3455041f3d94e635e003356b3e3f7e97..34b9d1958fcb8578a7e17a4a92229d95d9f0ba2a 100644
--- a/lib_com/log2.c
+++ b/lib_com/log2.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/********************************************************************************
*
* File : log2.c
diff --git a/lib_com/log2.h b/lib_com/log2.h
index 582d4ef745ebf9f853d1dce0a46c9d7794f01a89..5aeec7d91d96f72a124522d5304f2480bba8d010 100644
--- a/lib_com/log2.h
+++ b/lib_com/log2.h
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/********************************************************************************
*
* File : log2.h
diff --git a/lib_com/logqnorm_fx.c b/lib_com/logqnorm_fx.c
index 20e76f4974a5a3310bc888e83d7b860ae54cafa5..2f972e29db397a8015e4a905922a7fd8c368381c 100644
--- a/lib_com/logqnorm_fx.c
+++ b/lib_com/logqnorm_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h" /* Compilation switches */
diff --git a/lib_com/longarith.c b/lib_com/longarith.c
index ccef603198f13707ae254e060fd9183b1dbe31c2..309bda6aec31d3d7bbc1f823ed548f21e7e44b47 100644
--- a/lib_com/longarith.c
+++ b/lib_com/longarith.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/low_rate_band_att_fx.c b/lib_com/low_rate_band_att_fx.c
index ecb48c49ef75f952318cd966941d91bfccc4390e..2eb2b7105a42ca37c94ce66938313496b5a21c02 100644
--- a/lib_com/low_rate_band_att_fx.c
+++ b/lib_com/low_rate_band_att_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/lpc_tools_fx.c b/lib_com/lpc_tools_fx.c
index a2de22ab87a92ce5184a691f124544200c564a5d..ac91f6078c4aec48b97f3a45ab7a2ff0fc0eb1a4 100644
--- a/lib_com/lpc_tools_fx.c
+++ b/lib_com/lpc_tools_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/lsf_dec_bfi_fx.c b/lib_com/lsf_dec_bfi_fx.c
index 41db2c647d5d73b15d06785fa99053a4bcfd83f9..9a6ecbc4e32939d031231fcf0a0cdb42c661ad23 100644
--- a/lib_com/lsf_dec_bfi_fx.c
+++ b/lib_com/lsf_dec_bfi_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/lsf_msvq_ma_fx.c b/lib_com/lsf_msvq_ma_fx.c
index a4db7906834ba7abe6372df5e22f10d6c254b4ed..8b6d6f26cd3057c2f02513f8b7375ed18a8e2c0d 100644
--- a/lib_com/lsf_msvq_ma_fx.c
+++ b/lib_com/lsf_msvq_ma_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/lsf_tools_fx.c b/lib_com/lsf_tools_fx.c
index c69503350f8320bcd8cde9f92f1f44a16dd62e1c..a7dcce8da330f9ee7c1ca3a7d345569b1c4dc5ae 100644
--- a/lib_com/lsf_tools_fx.c
+++ b/lib_com/lsf_tools_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
@@ -2071,12 +2043,6 @@ ivas_error lsf_allocate_fx(
move16();
}
}
-#ifdef DEBUGGING
- ELSE
- {
- return IVAS_ERROR( IVAS_ERR_INTERNAL_FATAL, "lsf_allocate(): invalid number of bits in used predictive mode\n" );
- }
-#endif
}
return error;
@@ -2160,12 +2126,6 @@ ivas_error find_pred_mode(
}
}
}
-#ifdef DEBUGGING
- if ( *predmode == -1 )
- {
- return IVAS_ERROR( IVAS_ERR_INTERNAL_FATAL, "\nfind_pred_mode(): incorrect coder_type specification: %d\n", coder_type );
- }
-#endif
return error;
diff --git a/lib_com/lsp_conv_poly_fx.c b/lib_com/lsp_conv_poly_fx.c
index 3bbf811379afff77e0a7c3fc3516344d4be3111a..b86422c0bcfa18d1bb4b5c41e97c106e39d826ee 100644
--- a/lib_com/lsp_conv_poly_fx.c
+++ b/lib_com/lsp_conv_poly_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/math_32.h b/lib_com/math_32.h
index aa3bc1f2713e0cfdb86137287ad380c3a15ca327..9c49ad7a55e37a0504d95aacab7e87721cb2851b 100644
--- a/lib_com/math_32.h
+++ b/lib_com/math_32.h
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#ifndef _MATH_32_H_
#define _MATH_32_H_
diff --git a/lib_com/math_op.c b/lib_com/math_op.c
index 12d14ca6a0d1fe86141d377ef7907d0150aa6f4e..b2e5ffcb8c0076e494e13afd6d49209d79df4239 100644
--- a/lib_com/math_op.c
+++ b/lib_com/math_op.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*___________________________________________________________________________
| |
| This file contains mathematic operations in fixed point. |
diff --git a/lib_com/math_op.h b/lib_com/math_op.h
index d4eca9f2bad2b0664c9fec0e26f7896c22a887e2..e649f20593dad926ca488146355b1d81632accd3 100644
--- a/lib_com/math_op.h
+++ b/lib_com/math_op.h
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*--------------------------------------------------------------------------*
* MATH_OP.H *
*--------------------------------------------------------------------------*
diff --git a/lib_com/mime.h b/lib_com/mime.h
index 803e54cb0f96738d813f1e5975b4a28a43bbe5ba..f9424195d884e01723660c7a41e16fdc65794de4 100644
--- a/lib_com/mime.h
+++ b/lib_com/mime.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/modif_fs_fx.c b/lib_com/modif_fs_fx.c
index 08cd1322bca725b5b72d016bdbc59ed5cc576703..d509a53698ae951741e8a7a50893befddc316f1f 100644
--- a/lib_com/modif_fs_fx.c
+++ b/lib_com/modif_fs_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/mslvq_com_fx.c b/lib_com/mslvq_com_fx.c
index 76a6395393560b5cd50ad4acb74f35deb72def1e..c5e411cf873d4f6247717c2aef627d6d4c30815b 100644
--- a/lib_com/mslvq_com_fx.c
+++ b/lib_com/mslvq_com_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_com/nelp_fx.c b/lib_com/nelp_fx.c
index 4a4cb66b121dec3ac1fdc6054836618411a69c2d..aa1b690419f4e5cc7132f97381a44d031dbc544f 100644
--- a/lib_com/nelp_fx.c
+++ b/lib_com/nelp_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_com/oper_32b.c b/lib_com/oper_32b.c
index 47b39ee4854712e800151af630d68b2abf9dd600..c52624e188c20ec736da87c13d307f96d15869a8 100644
--- a/lib_com/oper_32b.c
+++ b/lib_com/oper_32b.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*****************************************************************************
* $Id: oper_32b.c 1094 2014-02-10 17:12:11Z jdr $
*
diff --git a/lib_com/oper_32b.h b/lib_com/oper_32b.h
index d68fb5d6836bcfd8106384bd837ba67c8d866956..6982660b79e399dee6967a608673467d6d274c37 100644
--- a/lib_com/oper_32b.h
+++ b/lib_com/oper_32b.h
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/* Double precision operations */
/* $Id: oper_32b.h 1094 2014-02-10 17:12:11Z jdr $ */
#ifndef _OPER_32b_H
diff --git a/lib_com/options.h b/lib_com/options.h
index c357e4d4dd2e9b3c620b3af24d3826d88fc7f4ac..d8ec09eb00f6892278a43d9956ff9c95a2f74c43 100644
--- a/lib_com/options.h
+++ b/lib_com/options.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
@@ -47,96 +19,16 @@
/* ################### Start DEBUGGING switches ######################## */
-#ifndef RELEASE
-/*#define DEBUGGING*/ /* Activate debugging part of the code */
-#endif
/*#define WMOPS*/ /* Activate complexity and memory counters */
/*#define WMOPS_PER_FRAME*/ /* Output per-frame complexity (writes one float value per frame to the file "wmops_analysis") */
/*#define WMOPS_DETAIL*/ /* Output detailed complexity printout for every function. Increases runtime overhead */
/*#define WMOPS_WC_FRAME_ANALYSIS*/ /* Output detailed complexity analysis for the worst-case frame */
/*#define MEM_COUNT_DETAILS*/ /* Output detailed memory analysis for the worst-case frame (writes to the file "mem_analysis.csv") */
-#ifdef DEBUGGING
-/*#define DBG_BITSTREAM_ANALYSIS*/ /* Write bitstream with annotations to a text file */
-#define DEBUG_MODE_INFO /* Define to output most important parameters to the subdirectory "res/" */
-#define DEBUG_MODE_INFO_TWEAK /* Enable command line switch to specify subdirectory for debug info output inside "./res/" */
-#define DEBUG_FORCE_MDCT_STEREO_MODE /* Force stereo mode decision for MDCT stereo: -stereo 3 1 forces L/R coding and -stereo 3 2 forces full M/S coding */
-/*#define DEBUG_FORCE_DIR*/ /* Force modes/parameters by reading from external binary files */
-/*#define DBG_WAV_WRITER*/ /* Enable dbgwrite_wav() function for generating ".wav" files */
-#define SUPPORT_FORCE_TCX10_TCX20 /* VA: Enable -force tcx10|tcx20 command-line option */
-/*#define DEBUG_MODE_JBM */ /* define to output JBM relevant parameters */
-#define ENABLE_BITRATE_VERIFICATION /* Enable bitrate verification - use when playing with bit budget */
-/*#define DEBUG_APA_SILENCE_NON_SCALED*/ /* Switch APA into mode that replaces contents of non-scaled frames with silence. Useful for identifying scaled regions in the audio output of the decoder */
-
-#endif /* DEBUGGING */
/* #################### End DEBUGGING switches ############################ */
-/* keep as part of options.h */
-/*#define DISABLE_LIMITER*/
-
-/* ################### Start MAINTENANCE switches ########################### */
-
-/* ################### Start BE switches ################################# */
-/* only BE switches wrt wrt. TS 26.251 V3.0 */
-
-/*#define FIX_I4_OL_PITCH*/ /* fix open-loop pitch used for EVS core switching */
-#define FIX_1990_SANITIZER_IN_REVERB_LOAD /* Nokia: Fix issue part of issue 1990 by introducing missing free of structure - keep until #2059 is addressed */
-#define TMP_1342_WORKAROUND_DEC_FLUSH_BROKEN_IN_SR /* FhG: Temporary workaround for incorrect implementation of decoder flush with split rendering */
-#define NONBE_1122_KEEP_EVS_MODE_UNCHANGED /* FhG: Disables fix for issue 1122 in EVS mode to keep BE tests green. This switch should be removed once the 1122 fix is added to EVS via a CR. */
-#define NONBE_FIX_ISSUE_2206 /* FhG: Calculate st->q_inp and Q_new dynamically for all data paths instead of assuming constant values */
-#define NONBE_FIX_ISSUE_2206_TV1 /* VA/FhG: Calculate st->q_inp also considering st->mem_q decimation memory to avoid saturation */
-#define NONBE_FIX_ISSUE_2206_SWB_EXPERIMENT /* FhG: Dynamic scale of shb_speech buffers */
-#define NONBE_FIX_ISSUE_2206_TD_CHANNEL_EXTRAPOLATION /* FhG: Use different scale to avoid saturation of LPC coefficient in TD Stereo signal extrapolation. */
-#define NONBE_FIX_ISSUE_2206_AVOID_OVERFLOW_SWB_fenv_fx2 /* FhG: Avoid overflow of SWB_fenv_fx in SWB_BWE_encoding_fx because of very small energies. */
-#define NONBE_FIX_ISSUE_2206_AVOID_OVERFLOW_MSVQ_Interpol_Tran_fx /* FhG: Fix saturation crash in MSVQ_Interpol_Tran_fx() */
-#define NONBE_FIX_ISSUE_2206_SWB_EXPERIMENT_FIX_2527 /* Fix crash from issue #2527 */
-#define FIX_FLOAT_1539_G192_FORMAT_SWITCH /* VA/Nokia: reintroduce format switching for g192 bitstreams */
-#define SIMPLIFY_CORE_ENC /* VA: basop issue 2430: Simplify ivas_core_enc_fx() */
-#define FIX_2402_SIMPLIFY_ARI_CODEC /* FhG: basop issue 2402: simplified arithmetic in TCX arithmetic coder */
-#define FIX_2402_REPL_EVS_ARI_CODEC_ENC /* FhG: basop issue 2402: replace EVS arith encoder with IVAS arith encoder */
-#define FIX_BASOP_2551_HARM_SCALAR_QUAN /* FhG: issue 2551: Harmonize function pair tcx_scalar_quantization_fx*/
-#define HARMONIZE_2564_GetEnergyCldfb /* FhG: harmonize GetEnergyCldfb derivates for evs/ivas */
-#define FIX_BASOP_2555_FRAMELEN_CALC /* FhG: BASOP issue 2555: Simplify (sub-)framelength calculation in ivas_mdct_core_tns_ns_fx() */
-#define FIX_BASOP_2095_REMOVE_TABLES_PT01 /* FhG: BASOP issue 2095: remove unused tables, part 01 */
-#define FIX_2346_DUPLICATED_IGF_FUNCTIONS_2 /* FhG: part 2 of basop issue 2346: Review potentially duplicated IGF functions */
-#define FIX_BASOP_2563_CRASH_HQ_GENERIC_DEC /* Eri: BASOP issue 2563: Crash in hq_generic decoding. EVS code --> solve with _sat operator */
-#define FIX_2095_REMOVE_UNUSED_ISAR_TABLES /* Dolby: remove unused ISAR */
-#define FIX_BASOP_2560_STEREO_DFT_DEC_RESET /* FhG: BASOP issue 2560: align reset of hStereoDft->res_gains_ind_fx[][] between BASOP and float */
-#define HARMONIZE_2539_cng_energy /* FhG: basop issue 2539: harmonize cng_energy with its ivas derivate */
-#define FIX_1585_ASAN_FORMAT_SW_ALT /* VA,FhG: float issues 1585,1593: alternative fix memory leaks with format switching */
-#define FIX_BASOP_2573_RF_MODE_UPDATE /* FhG: BASOP issue 2573: remove duplicated update of rf_mode parameters from evs_enc_fx(); was already done in updt_enc_common_fx() */
-#define FIX_2570_BUF_OVFL /* Orange: basop issue 2570: global-buffer-overflow in lib_rend/ivas_objectRenderer_sources_fx.c */
-
-/* #################### End BE switches ################################## */
-
-/* #################### Start NON-BE switches ############################ */
-/* any switch which is non-be wrt. TS 26.251 V3.0 */
-
-#define FIX_2500_RENDCONF_REFACTOR /* Eri: Basop issue #2500: Renderer configuration range check before conversion to fixed point. Harmonize between BASOP/float */
-#define FIX_BASOP_2023_TDREND_DISTATT_PRECISION /* Eri: Basop issue 2023: Distance attenuation scaling, adding clamping of distance att input and listener position */
-#define FIX_BASOP_2023_TDREND_DISTATT_PRECISION_BUGFIX /* Eri: Bug discovered in cleanup of basop issue 2023 */
-#define FIX_1576_LCLD_CRASH_DIFFERENT_CODEC_ISAR_FRAME_SIZE /* Dolby: float issue 1576: fix for crash in LCLD mode when codec frame size is less than isar frame size */
-#define FIX_1548_HARMONIZE_NON_DIEGETIC_PANNING_LAW /* Orange: float issue 1548: Harmonize non diegetic panning law in ISM and renderers */
-#define FIX_1452_DEFAULT_REVERB /* Nokia/Philips/FhG: Fix default room presets and their usage in renderer */
-#define NONBE_FIX_ISSUE_2206_MDCT_STEREO_FIX_2549 /* FhG: Correct scale inconsistency of old_inp_16k_fx buffer scale. */
-#define FIX_BASOP_2548_ProcessIGF_fx_PREDICTIONGAIN /* FhG: fixes obvious bug for IVAS path. For EVS path, issue is still not resolved */
-#define FIX_FMSW_DEC /* float issue 1542: fix JBM issue in format switching */
-#define FIX_FMSW_DEC_2 /* float issue 1575: fix crash for format switching when bitsream starts with EVS */
-#define FIX_BASOP_2562_HQ_PREECHO_SAT /* Eri/Orange: Basop issue 2562: Add saturation to L_add in preecho calculations */
-#define FIX_BASOP_2561_STEREO_DFT_ENC_COMPUTE_ITD /* BASOP issue 2561: fix diffs in stereo_dft_enc_compute_itd() between float and BASOP */
-#define FIX_BASOP_2517_CLICK_IN_OMASA_LTV /* FhG: BASOP #2517: preserve precision by removing one-bit headroom from Q_min and allowing saturation during buffer scaling */
-#define NONBE_FIX_ISSUE_2518 /* FhG: Fix issue 2518, noise during ACELP switching from 16KHz to 12k8Hz by improving Q_new calculation. */
-#define NONBE_FIX_ISSUE_2518_TRANSENC_SAT_FIX /* FhG: Fix issue 2518, fix wrong amplitude because of saturation of x_tran in transf_cdbk_enc_fx() for transient signals. */
-#define NONBE_FIX_ISSUE_2569 /* FhG: Fix issue 2569, overflow of mem_preemph16k_fx in LTV test. */
-#define FIX_BASOP_2559_Q_SYNTH_HISTORY_RESET /* FhG: BASOP issue 2559: reset hTcxDec->q_synth_history_fx in allocate_CoreCoder_TCX_fx() */
-#define FIX_FLOAT_1578_OMASA_REND_SPIKES /* Nokia: Float issue 1578: Fix spikes and collapsed perception in OMASA/MASA rendering to FOA/HOA */
-#define FIX_1521_SBA_LOUDNESS_STEREO /* FhG: issue 1521: Fix loudness for SBA to stereo rendering */
-#define FIX_1559 /* Eri/FhG: fix for Issue 1559 in FD CNG with bitrate/bw switching */
-
-/* ##################### End NON-BE switches ########################### */
-/* ################## End MAINTENANCE switches ######################### */
/* clang-format on */
#endif
diff --git a/lib_com/parameter_bitmaping_fx.c b/lib_com/parameter_bitmaping_fx.c
index 02ab3ee9a5736b3358bd52829a6e86c4dd4a99f2..99664965a6ce05834b9bd812b168038735b3d8e3 100644
--- a/lib_com/parameter_bitmaping_fx.c
+++ b/lib_com/parameter_bitmaping_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
#include "options.h"
diff --git a/lib_com/phase_dispersion_fx.c b/lib_com/phase_dispersion_fx.c
index 5269a2ca36e4defac60158d95054df3ebe361e7b..06418d2779166b1816cf976fd741536b051d5d90 100644
--- a/lib_com/phase_dispersion_fx.c
+++ b/lib_com/phase_dispersion_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/ppp_fx.c b/lib_com/ppp_fx.c
index 12a35b39371dd7e1eb8a155d802b21215ef544ab..09dd763a3dcc9b218267b1d7fa8374009d990550 100644
--- a/lib_com/ppp_fx.c
+++ b/lib_com/ppp_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_com/pred_lt4_fx.c b/lib_com/pred_lt4_fx.c
index f4f68f58ad74765c49c99791613e772db871df47..17499ef75328f611310153648f104df52a2bbeee 100644
--- a/lib_com/pred_lt4_fx.c
+++ b/lib_com/pred_lt4_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/preemph_fx.c b/lib_com/preemph_fx.c
index 46c8ccc36b531cab8b599c1b576afde3c3b97a33..da5027c87556bf1b41d0ba210b5123887c5898d5 100644
--- a/lib_com/preemph_fx.c
+++ b/lib_com/preemph_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/prot_fx.h b/lib_com/prot_fx.h
index 7d541d076f4dd6b8b77823483077bf91514954b8..c81bc903e43ec81caaa91fce58033a166ed67495 100644
--- a/lib_com/prot_fx.h
+++ b/lib_com/prot_fx.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#ifndef PROT_FX2_H
#define PROT_FX2_H
@@ -3989,11 +3961,7 @@ Word16 find_guarded_bits_fx( const Word32 n );
Word16 L_norm_arr( const Word32 *arr, Word16 size );
Word16 L_norm_arr_cmplx( const cmplx *arr, Word16 size );
-#ifdef NONBE_FIX_ISSUE_2206
Word16 norm_arr( const Word16 *arr, Word16 size );
-#else
-Word16 norm_arr( Word16 *arr, Word16 size );
-#endif
Word16 W_norm_arr( Word64 *arr, Word16 size );
Word16 get_min_scalefactor( Word32 x, Word32 y );
@@ -4104,12 +4072,8 @@ void analysisCldfbEncoder_fx(
Word16 *enerBuffSum_exp,
CLDFB_SCALE_FACTOR *scale );
-#ifdef HARMONIZE_2564_GetEnergyCldfb
-void GetEnergyCldfb(
- Word16 element_mode, /*!< i: | Is IVAS or EVS? */
-#else
void GetEnergyCldfb(
-#endif
+ Word16 element_mode, /*!< i: | Is IVAS or EVS? */
Word32 *energyLookahead, /*!< o: Q31 | pointer to the result in the core look-ahead slot */
Word16 *sf_energyLookahead, /*!< o: pointer to the scalefactor of the result in the core look-ahead slot - apply as negative exponent*/
const Word16 numLookahead, /*!< i: Q0 the number of look-ahead time-slots */
@@ -5050,12 +5014,6 @@ Word16 IGFCommonFuncsIGFGetCFTables_fx(
const Word16 **cf_off_se11 /* o : offsets for CF tables above */
);
-#ifndef FIX_2402_SIMPLIFY_ARI_CODEC
-Word32 L_multi31x16_X2(
- Word16 xh,
- Word16 xl,
- Word16 y );
-#endif
#ifndef FIX_2402_INLINE_FCT_ARI_CODEC
Word32 mul_sbc_14bits(
@@ -8470,24 +8428,8 @@ void con_tcx_fx(
const Word16 *A_cng /* i : CNG LP filter coefficients */
);
-#ifdef FIX_2402_REPL_EVS_ARI_CODEC_ENC
void ari_start_encoding_14bits_fx(
-#else
-void ari_start_encoding_14bits_ivas_fx(
-#endif
Tastat *s );
-#ifndef FIX_BASOP_2551_HARM_SCALAR_QUAN
-void tcx_scalar_quantization_ivas_fx(
- Word32 *x, /* i: input coefficients */
- Word16 x_e, /* i: exponent */
- Word16 *xq, /* o: quantized coefficients */
- Word16 L_frame, /* i: frame length */
- Word16 gain, /* i: quantization gain */
- Word16 gain_e, /* i: quantization gain exponent */
- Word16 offset, /* i: rounding offset (deadzone) */
- Word8 const *memQuantZeros_fx, /* i: coefficients to be set to 0 */
- const Word16 alfe_flag );
-#else
void tcx_scalar_quantization_fx(
Word32 *x, /* i: input coefficients */
Word16 x_e, /* i: exponent */
@@ -8499,7 +8441,6 @@ void tcx_scalar_quantization_fx(
Word8 const *memQuantZeros_fx, /* i: coefficients to be set to 0 */
const Word16 alfe_flag,
const Word16 element_mode );
-#endif // !FIX_BASOP_2551_HARM_SCALAR_QUAN
Word16 RCcontextMapping_encode2_estimate_no_mem_s17_LCS_fx(
@@ -8564,14 +8505,12 @@ void Copy_Scale_sig(
const Word16 exp0 /* i : exponent: x = round(x << exp) Qx ?exp */
);
-#ifdef NONBE_FIX_ISSUE_2206
void Copy_Scale_sig_nosat(
const Word16 x[], /* i : signal to scale i Qx */
Word16 y[], /* o : scaled signal output Qx */
const Word16 lg, /* i : size of x[] Q0 */
const Word16 exp0 /* i : exponent: x = round(x << exp) Qx ?exp */
);
-#endif
void Scale_sig32(
Word32 x[], /* i/o: signal to scale Qx */
@@ -8607,14 +8546,12 @@ void Copy_Scale_sig_32_16(
const Word16 exp0 /* i : exponent: x = round(x << exp) Qx ?exp */
);
-#ifdef NONBE_FIX_ISSUE_2206
void Copy_Scale_sig_32_16_nosat(
const Word32 x[], /* i : signal to scale input Qx */
Word16 y[], /* o : scaled signal output Qx */
const Word16 lg, /* i : size of x[] Q0 */
const Word16 exp0 /* i : exponent: x = round(x << exp) Qx ?exp */
);
-#endif
void Random_Fill(
Word16 *seed, /* i/o: random seed */
@@ -9465,11 +9402,7 @@ void IGFSaveSpectrumForITF_ivas_fx(
const Word32 *pITFSpectrum, /* i : MDCT spectrum */
Word16 exp_pITFSpectrum );
-#ifdef FIX_2402_REPL_EVS_ARI_CODEC_ENC
Word16 ari_encode_14bits_ext_fx(
-#else
-Word16 ari_encode_14bits_ext_ivas_fx(
-#endif
Word16 *ptr, /* Q0 */
Word16 bp, /* Q0 */
Tastat *s,
@@ -9477,11 +9410,7 @@ Word16 ari_encode_14bits_ext_ivas_fx(
UWord16 const *cum_freq /* Q0 */
);
-#ifdef FIX_2402_REPL_EVS_ARI_CODEC_ENC
Word16 ari_encode_14bits_sign_fx(
-#else
-Word16 ari_encode_14bits_sign_ivas_fx(
-#endif
Word16 *ptr, /* Q0 */
Word16 bp, /* Q0 */
Word32 bits, /* Q0 */
@@ -9489,11 +9418,7 @@ Word16 ari_encode_14bits_sign_ivas_fx(
Word16 sign /* Q0 */
);
-#ifdef FIX_2402_REPL_EVS_ARI_CODEC_ENC
Word16 ari_done_encoding_14bits_fx(
-#else
-Word16 ari_done_encoding_14bits_ivas_fx(
-#endif
Word16 *ptr, /* Q0 */
Word16 bp, /* Q0 */
Tastat *s );
@@ -9770,28 +9695,14 @@ ivas_error push_indice(
Word16 nb_bits /* i : number of bits used to quantize the indice */
);
-#if defined( DEBUGGING ) && defined( DBG_BITSTREAM_ANALYSIS )
-#define push_next_indice( ... ) push_next_indice_( __func__, __VA_ARGS__ )
-#define push_next_bits( ... ) push_next_bits_( __func__, __VA_ARGS__ );
-#endif
-#if defined( DEBUGGING ) && defined( DBG_BITSTREAM_ANALYSIS )
-ivas_error push_next_indice_(
- const char *caller,
-#else
ivas_error push_next_indice(
-#endif
BSTR_ENC_HANDLE hBstr,
UWord16 value, /* i : value of the quantized indice */
Word16 nb_bits /* i : number of bits used to quantize the indice */
);
-#if defined( DEBUGGING ) && defined( DBG_BITSTREAM_ANALYSIS )
-ivas_error push_next_bits_(
- const char *caller,
-#else
ivas_error push_next_bits(
-#endif
BSTR_ENC_HANDLE hBstr, /* i/o: encoder bitstream handle */
const UWord16 bits[], /* i : bit buffer to pack, sequence of single bits */
const Word16 nb_bits /* i : number of bits to pack */
@@ -9914,13 +9825,6 @@ Word32 ar_div_ivas(
Word32 num,
Word32 denum );
-#ifdef DEBUGGING
-void read_next_force(
- int16_t *force, /* i/o: force value (0/1, 0 = speech, 1 = music)*/
- FILE *f_force, /* i : force switching profile (0 if N/A) */
- int32_t *force_profile_cnt /* i/o: counter of frames for force switching profile file */
-);
-#endif
ivas_error init_encoder_fx(
Encoder_State *st, /* i/o: state structure */
diff --git a/lib_com/pvq_com_fx.c b/lib_com/pvq_com_fx.c
index f86e66f60a549202713cca61951766ab3244ec92..41e60c6feef56b3140bf270eb9b4f2a5f536e600 100644
--- a/lib_com/pvq_com_fx.c
+++ b/lib_com/pvq_com_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/range_com_fx.c b/lib_com/range_com_fx.c
index d437494f73e7b490acb832827f5fb83a81ed8991..dff07345edc620408f29f0b5e8475357b91b308d 100644
--- a/lib_com/range_com_fx.c
+++ b/lib_com/range_com_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/re8_ppv_fx.c b/lib_com/re8_ppv_fx.c
index 5398214b4cf4422896c1115aba2ef213df2d3429..090868caf741c24853a4a692bbe2cce77d41d841 100644
--- a/lib_com/re8_ppv_fx.c
+++ b/lib_com/re8_ppv_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/re8_util_fx.c b/lib_com/re8_util_fx.c
index cf5db258d50df53908dd11a947df4b39f5d9c30a..978db15d8d981bc59918c5b8eec770f76a7e41e8 100644
--- a/lib_com/re8_util_fx.c
+++ b/lib_com/re8_util_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/recovernorm_fx.c b/lib_com/recovernorm_fx.c
index 83167ea621c6341b39e3b88100d41ec3882180f6..168d1945ba1f7f2ab542490224b703d4bb5ad24c 100644
--- a/lib_com/recovernorm_fx.c
+++ b/lib_com/recovernorm_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/reordvct_fx.c b/lib_com/reordvct_fx.c
index e89e9ed3817916883af0f99172debd4d115959e3..ea7d0ed49f2e86836de2454356785fcc2103d9a0 100644
--- a/lib_com/reordvct_fx.c
+++ b/lib_com/reordvct_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h" /* Compilation switches */
diff --git a/lib_com/residu_fx.c b/lib_com/residu_fx.c
index d4de347d5435d76ba0adc6225b003957f9147305..3a041a58e628fe9546cf81a123a53cf4ca902231 100644
--- a/lib_com/residu_fx.c
+++ b/lib_com/residu_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/rom_basic_math.c b/lib_com/rom_basic_math.c
index 5899352544450ff5fbe73354ca6a3af250d8eb34..446b9da036b791ca52b8fb397f4bafcdcba93c51 100644
--- a/lib_com/rom_basic_math.c
+++ b/lib_com/rom_basic_math.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include "options.h" /* Compilation switches */
#include "cnst.h" /* Decoder static structure */
#include "stl.h"
diff --git a/lib_com/rom_basic_math.h b/lib_com/rom_basic_math.h
index 0f4826d0c5178e73d4642d00ad93e2a0d81d3f8e..498213f4c4d3691d712662a11b2dcc96a5ca9079 100644
--- a/lib_com/rom_basic_math.h
+++ b/lib_com/rom_basic_math.h
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include "options.h" /* Compilation switches */
#include "cnst.h" /* Decoder static structure */
#include "stl.h"
diff --git a/lib_com/rom_basop_util.c b/lib_com/rom_basop_util.c
index 321658f7a927a8edbf7f58dbb894dad0f9a5269f..d0d7a50ff39ed9aab9e87c2dc374f0a56a75ce81 100644
--- a/lib_com/rom_basop_util.c
+++ b/lib_com/rom_basop_util.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include "rom_basop_util.h"
#include "stl.h"
diff --git a/lib_com/rom_basop_util.h b/lib_com/rom_basop_util.h
index ffbc7292acd5ff5038e8cd5cecc199274cb7e9d8..751d95e79c61d4f8889bbce9544af0e1961b9f07 100644
--- a/lib_com/rom_basop_util.h
+++ b/lib_com/rom_basop_util.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/rom_com.h b/lib_com/rom_com.h
index 9a2caa064f9cb9df9437f8b6944e336475e46830..9f344502a861e109177b215b69da10fe12764786 100644
--- a/lib_com/rom_com.h
+++ b/lib_com/rom_com.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
@@ -1135,10 +1107,7 @@ extern const Word32 rot_vec_syn_im_L40_fx[20]; // Q31
extern const Word32 rot_vec_syn_re_L60_fx[30]; // Q31
extern const Word32 rot_vec_syn_im_L60_fx[30]; // Q31
-extern const Word16 bpf_weights_16_Fx[16]; // Q15
-#ifndef FIX_BASOP_2095_REMOVE_TABLES_PT01
-extern const Word16 bpf_weights_16_ivas_fx[16]; // Q15
-#endif
+extern const Word16 bpf_weights_16_Fx[16]; // Q15
extern const Word32 bpf_weights_16_ivas_fx_32[16]; // Q30
extern const Word16 CNG_details_codebook_fx[64][NUM_ENV_CNG]; // Q6
@@ -1606,8 +1575,5 @@ extern const Word32 rot_vec_ana_re_L60_fx[30]; // Q29
extern const Word32 rot_vec_ana_im_L60_fx[30]; // Q29
extern const Word16 LP_assym_window_fx[]; /* Assymetric window for LP analysis @12.8kHz (Q15) */
-#ifndef FIX_BASOP_2095_REMOVE_TABLES_PT01
-extern const Word16 LP_assym_window_16k_fx[]; /* Assymetric window for LP analysis @16kHz (Q15) */
-#endif
#endif
diff --git a/lib_com/rom_com_fx.c b/lib_com/rom_com_fx.c
index d2f077a3e6dd87475ea2743aa88f7dbe4bfa128e..227e9f7a02ed3c7f723ff031939d457bc0190032 100644
--- a/lib_com/rom_com_fx.c
+++ b/lib_com/rom_com_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
@@ -6822,15 +6794,6 @@ const Word16 bpf_weights_16_Fx[16] =
3/*0.000081f Q15*/, 2/*0.000052f Q15*/, 1/*0.000017f Q15*/, 1/*0.000016f Q15*/
};
-#ifndef FIX_BASOP_2095_REMOVE_TABLES_PT01
-const Word16 bpf_weights_16_ivas_fx[16] =
-{
- 32767/*0.999969f Q15*/, 23022/*0.702561f Q15*/, 6843/*0.208838f Q15*/, 51/*0.001553f Q15*/,
- 58/*0.001777f Q15*/, 45/*0.001370f Q15*/, 30/*0.000926f Q15*/, 18/*0.000554f Q15*/,
- 9/*0.000270f Q15*/, 3/*0.000080f Q15*/, 1/*0.000030f Q15*/, 3/*0.000082f Q15*/,
- 3/*0.000081f Q15*/, 2/*0.000052f Q15*/, 1/*0.000017f Q15*/, 1/*0.000016f Q15*/
-};
-#endif
const Word32 bpf_weights_16_ivas_fx_32[16] =
{
1073784774/*1.000040f Q30*/, 754369130/*0.702561f Q30*/, 224238095/*0.208838f Q30*/, 1667521/*0.001553f Q30*/,
@@ -36533,411 +36496,6 @@ const Word16 LP_assym_window_fx[L_LP] = {
0x0b0f, 0x0ad8, 0x0aa8, 0x0a82, 0x0a64, 0x0a4e, 0x0a41, 0x0a3d
};
-#ifndef FIX_BASOP_2095_REMOVE_TABLES_PT01
-/* LP analysis window (length of the window is 25ms which is 400 samples at 16kHz (Q15) */
-const Word16 LP_assym_window_16k_fx[L_LP_16k] = {
- 0x0a3d,
- 0x0a3e,
- 0x0a42,
- 0x0a49,
- 0x0a53,
- 0x0a5f,
- 0x0a6e,
- 0x0a7f,
- 0x0a93,
- 0x0aaa,
- 0x0ac4,
- 0x0ae0,
- 0x0aff,
- 0x0b21,
- 0x0b45,
- 0x0b6c,
- 0x0b96,
- 0x0bc2,
- 0x0bf1,
- 0x0c23,
- 0x0c57,
- 0x0c8e,
- 0x0cc7,
- 0x0d03,
- 0x0d41,
- 0x0d82,
- 0x0dc6,
- 0x0e0c,
- 0x0e55,
- 0x0ea0,
- 0x0eee,
- 0x0f3e,
- 0x0f91,
- 0x0fe6,
- 0x103e,
- 0x1098,
- 0x10f4,
- 0x1153,
- 0x11b4,
- 0x1218,
- 0x127e,
- 0x12e6,
- 0x1351,
- 0x13be,
- 0x142d,
- 0x149e,
- 0x1512,
- 0x1588,
- 0x1600,
- 0x167a,
- 0x16f6,
- 0x1774,
- 0x17f5,
- 0x1878,
- 0x18fc,
- 0x1983,
- 0x1a0c,
- 0x1a96,
- 0x1b23,
- 0x1bb1,
- 0x1c42,
- 0x1cd4,
- 0x1d68,
- 0x1dfe,
- 0x1e96,
- 0x1f30,
- 0x1fcb,
- 0x2068,
- 0x2107,
- 0x21a7,
- 0x2249,
- 0x22ed,
- 0x2392,
- 0x2439,
- 0x24e1,
- 0x258b,
- 0x2636,
- 0x26e2,
- 0x2790,
- 0x2840,
- 0x28f0,
- 0x29a2,
- 0x2a56,
- 0x2b0a,
- 0x2bc0,
- 0x2c77,
- 0x2d2e,
- 0x2de7,
- 0x2ea2,
- 0x2f5d,
- 0x3019,
- 0x30d6,
- 0x3194,
- 0x3253,
- 0x3313,
- 0x33d3,
- 0x3495,
- 0x3557,
- 0x361a,
- 0x36dd,
- 0x37a2,
- 0x3867,
- 0x392c,
- 0x39f2,
- 0x3ab9,
- 0x3b80,
- 0x3c47,
- 0x3d0f,
- 0x3dd7,
- 0x3ea0,
- 0x3f68,
- 0x4032,
- 0x40fb,
- 0x41c4,
- 0x428e,
- 0x4358,
- 0x4422,
- 0x44ec,
- 0x45b6,
- 0x4680,
- 0x4749,
- 0x4813,
- 0x48dd,
- 0x49a6,
- 0x4a6f,
- 0x4b38,
- 0x4c01,
- 0x4cca,
- 0x4d92,
- 0x4e59,
- 0x4f20,
- 0x4fe7,
- 0x50ad,
- 0x5173,
- 0x5238,
- 0x52fd,
- 0x53c1,
- 0x5484,
- 0x5547,
- 0x5608,
- 0x56c9,
- 0x578a,
- 0x5849,
- 0x5908,
- 0x59c5,
- 0x5a82,
- 0x5b3d,
- 0x5bf8,
- 0x5cb2,
- 0x5d6a,
- 0x5e21,
- 0x5ed8,
- 0x5f8d,
- 0x6041,
- 0x60f3,
- 0x61a5,
- 0x6255,
- 0x6303,
- 0x63b0,
- 0x645c,
- 0x6507,
- 0x65b0,
- 0x6657,
- 0x66fd,
- 0x67a2,
- 0x6844,
- 0x68e6,
- 0x6985,
- 0x6a23,
- 0x6abf,
- 0x6b5a,
- 0x6bf2,
- 0x6c89,
- 0x6d1e,
- 0x6db2,
- 0x6e43,
- 0x6ed2,
- 0x6f60,
- 0x6fec,
- 0x7075,
- 0x70fd,
- 0x7183,
- 0x7206,
- 0x7288,
- 0x7307,
- 0x7385,
- 0x7400,
- 0x7479,
- 0x74f0,
- 0x7565,
- 0x75d7,
- 0x7648,
- 0x76b6,
- 0x7721,
- 0x778b,
- 0x77f2,
- 0x7857,
- 0x78b9,
- 0x7919,
- 0x7977,
- 0x79d2,
- 0x7a2b,
- 0x7a81,
- 0x7ad5,
- 0x7b27,
- 0x7b76,
- 0x7bc2,
- 0x7c0c,
- 0x7c54,
- 0x7c98,
- 0x7cdb,
- 0x7d1b,
- 0x7d58,
- 0x7d93,
- 0x7dcb,
- 0x7e00,
- 0x7e33,
- 0x7e63,
- 0x7e91,
- 0x7ebc,
- 0x7ee4,
- 0x7f0a,
- 0x7f2d,
- 0x7f4d,
- 0x7f6b,
- 0x7f86,
- 0x7f9e,
- 0x7fb3,
- 0x7fc6,
- 0x7fd7,
- 0x7fe4,
- 0x7fef,
- 0x7ff7,
- 0x7ffc,
- 0x7fff,
- 0x7fff,
- 0x7ff9,
- 0x7fee,
- 0x7fde,
- 0x7fc8,
- 0x7fac,
- 0x7f8c,
- 0x7f65,
- 0x7f39,
- 0x7f08,
- 0x7ed1,
- 0x7e95,
- 0x7e54,
- 0x7e0d,
- 0x7dc1,
- 0x7d70,
- 0x7d19,
- 0x7cbd,
- 0x7c5c,
- 0x7bf6,
- 0x7b8b,
- 0x7b1b,
- 0x7aa5,
- 0x7a2b,
- 0x79ab,
- 0x7927,
- 0x789e,
- 0x7810,
- 0x777d,
- 0x76e6,
- 0x764a,
- 0x75a9,
- 0x7504,
- 0x745a,
- 0x73ac,
- 0x72fa,
- 0x7243,
- 0x7188,
- 0x70c9,
- 0x7006,
- 0x6f3f,
- 0x6e74,
- 0x6da5,
- 0x6cd2,
- 0x6bfc,
- 0x6b22,
- 0x6a44,
- 0x6963,
- 0x687f,
- 0x6797,
- 0x66ac,
- 0x65be,
- 0x64cd,
- 0x63d9,
- 0x62e2,
- 0x61e8,
- 0x60ec,
- 0x5fed,
- 0x5eeb,
- 0x5de7,
- 0x5ce1,
- 0x5bd8,
- 0x5ace,
- 0x59c1,
- 0x58b3,
- 0x57a2,
- 0x5690,
- 0x557c,
- 0x5467,
- 0x5350,
- 0x5238,
- 0x511f,
- 0x5005,
- 0x4ee9,
- 0x4dcd,
- 0x4cb0,
- 0x4b92,
- 0x4a74,
- 0x4955,
- 0x4836,
- 0x4716,
- 0x45f6,
- 0x44d6,
- 0x43b6,
- 0x4297,
- 0x4177,
- 0x4058,
- 0x3f39,
- 0x3e1b,
- 0x3cfe,
- 0x3be1,
- 0x3ac5,
- 0x39aa,
- 0x3891,
- 0x3778,
- 0x3661,
- 0x354b,
- 0x3436,
- 0x3323,
- 0x3212,
- 0x3102,
- 0x2ff5,
- 0x2ee9,
- 0x2de0,
- 0x2cd8,
- 0x2bd3,
- 0x2ad0,
- 0x29d0,
- 0x28d2,
- 0x27d7,
- 0x26df,
- 0x25e9,
- 0x24f7,
- 0x2407,
- 0x231a,
- 0x2231,
- 0x214b,
- 0x2068,
- 0x1f89,
- 0x1ead,
- 0x1dd5,
- 0x1d00,
- 0x1c2f,
- 0x1b62,
- 0x1a99,
- 0x19d4,
- 0x1913,
- 0x1856,
- 0x179d,
- 0x16e9,
- 0x1638,
- 0x158d,
- 0x14e5,
- 0x1442,
- 0x13a4,
- 0x130a,
- 0x1275,
- 0x11e5,
- 0x1159,
- 0x10d3,
- 0x1051,
- 0x0fd4,
- 0x0f5c,
- 0x0ee9,
- 0x0e7b,
- 0x0e12,
- 0x0daf,
- 0x0d50,
- 0x0cf7,
- 0x0ca3,
- 0x0c55,
- 0x0c0b,
- 0x0bc7,
- 0x0b88,
- 0x0b4f,
- 0x0b1b,
- 0x0aed,
- 0x0ac3,
- 0x0aa0,
- 0x0a82,
- 0x0a69,
- 0x0a56,
- 0x0a48,
- 0x0a40,
- 0x0a3d,
-};
-#endif
/* 4-bit/3-bit TD SWB BWE differential LSF scalar quantizer tables */
/*Q15*/
diff --git a/lib_com/scale_mem_fx.c b/lib_com/scale_mem_fx.c
index 1bb6fbe3cae6d4805f2cf403bbf1fde9cbfe92c0..bcf62f827f43fc243ae8fae956ff8daefffb3f88 100644
--- a/lib_com/scale_mem_fx.c
+++ b/lib_com/scale_mem_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/stab_est_fx.c b/lib_com/stab_est_fx.c
index 4b553eb5457a243400180d8cfa78b0b02dfe4e1e..3befc3da0a7c3d6765a2fb04396b7f23be058357 100644
--- a/lib_com/stab_est_fx.c
+++ b/lib_com/stab_est_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/stat_com.h b/lib_com/stat_com.h
index b9f0119ceacc38de2fdfbeb954105b694bf83e2b..b93ee9c17a87b58be5f3cc73318ac0d2af41fa41 100644
--- a/lib_com/stat_com.h
+++ b/lib_com/stat_com.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/stat_noise_uv_mod_fx.c b/lib_com/stat_noise_uv_mod_fx.c
index 301fb108b9b5ddbe22be3c79c90cc0ff6bb25c27..49a08bde1688b8dce78c47aae3aa7021640fbf32 100644
--- a/lib_com/stat_noise_uv_mod_fx.c
+++ b/lib_com/stat_noise_uv_mod_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/swb_bwe_com_fx.c b/lib_com/swb_bwe_com_fx.c
index 434dd6a800d96c0398b76f1d17f2939971135382..4ebc05ae938dcfbff39cbff0a14209af5677e443 100644
--- a/lib_com/swb_bwe_com_fx.c
+++ b/lib_com/swb_bwe_com_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
@@ -2747,12 +2719,8 @@ void hq_generic_decoding_fx(
exp2 = sub( norm_l( L_tmp2 ), 1 );
tmp1_fx = extract_h( L_shl( L_tmp1, exp1 ) );
tmp2_fx = extract_h( L_shl( L_tmp2, exp2 ) );
- tmp3_fx = div_s( tmp2_fx, tmp1_fx ); /*15 + exp2 + 15 - (exp1 + 15) */
-#ifdef FIX_BASOP_2563_CRASH_HQ_GENERIC_DEC
+ tmp3_fx = div_s( tmp2_fx, tmp1_fx ); /*15 + exp2 + 15 - (exp1 + 15) */
tmp3_fx = shr_sat( tmp3_fx, add( 5, sub( exp2, exp1 ) ) ); /*10 */
-#else
- tmp3_fx = shr( tmp3_fx, add( 5, sub( exp2, exp1 ) ) ); /*10 */
-#endif
if ( LT_16( tmp3_fx, 307 /*0.3 in Q10 */ ) )
{
diff --git a/lib_com/swb_bwe_com_hr_fx.c b/lib_com/swb_bwe_com_hr_fx.c
index a1d6fe2a0fe474393cc863b5a7206d9dc7a3b4c5..12c29c6c6823408501862f9cd17bfd866195a84a 100644
--- a/lib_com/swb_bwe_com_hr_fx.c
+++ b/lib_com/swb_bwe_com_hr_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/swb_bwe_com_lr_fx.c b/lib_com/swb_bwe_com_lr_fx.c
index 9b6c6cd8e021ac2dff10fb1a42a1d353fba12f79..8fa1c137eff3267153ae435ca5702669b22a5c5c 100644
--- a/lib_com/swb_bwe_com_lr_fx.c
+++ b/lib_com/swb_bwe_com_lr_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_com/swb_tbe_com_fx.c b/lib_com/swb_tbe_com_fx.c
index 70684ccd5050dc0aeb077d7ae52e2d54db6cac76..ba5c0870e6bbd91bae71922b92f030ec67d13d3a 100644
--- a/lib_com/swb_tbe_com_fx.c
+++ b/lib_com/swb_tbe_com_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
@@ -5281,11 +5284,7 @@ static void Estimate_mix_factors_fx(
pow3 = Dot_product( shb_res_local, shb_res_local, L_FRAME16k ); /* (2*Q_shb+1) */
-#ifdef NONBE_FIX_ISSUE_2206_SWB_EXPERIMENT
pow3 = L_add_sat( pow3, L_shl( 21475l /*0.00001f in Q31*/, 2 * Q_shb + 1 - 31 ) ); /* (2*Q_shb+1) */
-#else
- pow3 = L_add( pow3, L_shl( 21475l /*0.00001f in Q31*/, 2 * Q_shb + 1 - 31 ) ); /* (2*Q_shb+1) */
-#endif
if ( pow3 == 0 )
{
pow3 = 1;
diff --git a/lib_com/syn_12k8_fx.c b/lib_com/syn_12k8_fx.c
index 7edf3a44b7378c4f9aef61fe7d534ad5b7432013..815b84fb1a7f358d4d84101e0ae0aeb8804b8735 100644
--- a/lib_com/syn_12k8_fx.c
+++ b/lib_com/syn_12k8_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/syn_filt_fx.c b/lib_com/syn_filt_fx.c
index 58592f6177f17c555400fac2795a0f8987bcea27..575015321ecd0ea904437e9c4512f7b1875927b6 100644
--- a/lib_com/syn_filt_fx.c
+++ b/lib_com/syn_filt_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/tcq_position_arith_fx.c b/lib_com/tcq_position_arith_fx.c
index 431a509b1807a5a7375a1a58ab5c9f4e56b012f8..bf031c349ed6fac8d209d7a733b015c1287668da 100644
--- a/lib_com/tcq_position_arith_fx.c
+++ b/lib_com/tcq_position_arith_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/tcx_ltp_fx.c b/lib_com/tcx_ltp_fx.c
index ebe14f5f301477cc427861d83cbcf19de5052d6a..e5543107525a5e058a8e32414fe8f24559a1a372 100644
--- a/lib_com/tcx_ltp_fx.c
+++ b/lib_com/tcx_ltp_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/tcx_mdct_fx.c b/lib_com/tcx_mdct_fx.c
index 5903bc31c2f120b1bf61b62b7e3fc3dc9cb0dd2d..cfe2423f9711ad169d51dfb9bc0180478ff01200 100644
--- a/lib_com/tcx_mdct_fx.c
+++ b/lib_com/tcx_mdct_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/tcx_mdct_window_fx.c b/lib_com/tcx_mdct_window_fx.c
index dd3ad48feedb75dd5440e59510b8e76c4966b882..c0d5d997c2a431dcd75b7d2bca890313e3db7d18 100644
--- a/lib_com/tcx_mdct_window_fx.c
+++ b/lib_com/tcx_mdct_window_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_com/tcx_utils_fx.c b/lib_com/tcx_utils_fx.c
index 6ebd1dbf5b02b650624a82e4c978d605c4fc4a80..b0e76f2233b3e82777145e5891857f7b98f37592 100644
--- a/lib_com/tcx_utils_fx.c
+++ b/lib_com/tcx_utils_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/tec_com_fx.c b/lib_com/tec_com_fx.c
index 5760b56b38cc56e06b8560d15f9e24ca0d47cb52..9d94da55eb4fd0bab588264a76a57f3528dedfea 100644
--- a/lib_com/tec_com_fx.c
+++ b/lib_com/tec_com_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/tns_base.c b/lib_com/tns_base.c
index fe6f5d8ef55c8711bd30b0e721127a7c8f8bc36b..192cf8490c54cf38acedb6f2b90c5166aacf5f69 100644
--- a/lib_com/tns_base.c
+++ b/lib_com/tns_base.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/tools_fx.c b/lib_com/tools_fx.c
index e15184cbaa4b89174dc1a79a7e576cddfefe1541..3ff3ef38d7b39a80f637adcd3b066a8a08233012 100644
--- a/lib_com/tools_fx.c
+++ b/lib_com/tools_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
@@ -1249,7 +1221,6 @@ void Copy_Scale_sig(
return;
}
-#ifdef NONBE_FIX_ISSUE_2206
/*-------------------------------------------------------------------*
* Copy_Scale_sig
*
@@ -1302,7 +1273,6 @@ void Copy_Scale_sig_nosat(
return;
}
-#endif
/*-------------------------------------------------------------------*
* Copy_Scale_sig
@@ -1339,14 +1309,7 @@ void Copy_Scale_sig_16_32_DEPREC(
}
return;
}
-#ifdef DEBUGGING
- if ( exp0 >= 16 )
- {
- printf( "Issue in Copy_Scale_sig_16_32_DEPREC\n" );
- }
-#else
assert( exp0 < 16 );
-#endif
tmp = shl_sat( 1, exp0 );
FOR( i = 0; i < lg; i++ )
{
@@ -1461,7 +1424,6 @@ void Copy_Scale_sig_32_16(
return;
}
-#ifdef NONBE_FIX_ISSUE_2206
void Copy_Scale_sig_32_16_nosat(
const Word32 x[], /* i : signal to scale input Qx */
Word16 y[], /* o : scaled signal output Qx */
@@ -1493,7 +1455,6 @@ void Copy_Scale_sig_32_16_nosat(
return;
}
-#endif
/*-------------------------------------------------------------------*
* Scale_sig32
@@ -5443,15 +5404,9 @@ Word16 L_norm_arr_cmplx(
return q;
}
-#ifdef NONBE_FIX_ISSUE_2206
Word16 norm_arr(
const Word16 *arr,
Word16 size )
-#else
-Word16 norm_arr(
- Word16 *arr,
- Word16 size )
-#endif
{
Word16 q = 15;
Word16 exp = 0;
diff --git a/lib_com/trans_direct_fx.c b/lib_com/trans_direct_fx.c
index 0f07d349924b95d684a70e1a634a7a14149c9b08..0fe298a2b0d3dfef5b00932c928f06b8a74f1af5 100644
--- a/lib_com/trans_direct_fx.c
+++ b/lib_com/trans_direct_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/trans_inv_fx.c b/lib_com/trans_inv_fx.c
index 405dd1914827ae67e5dd99b8bc6be8d88d632609..c441cf0a5ea7dbac77210062d51a8e46f99b8737 100644
--- a/lib_com/trans_inv_fx.c
+++ b/lib_com/trans_inv_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
@@ -746,12 +749,8 @@ void preecho_sb_fx(
}
}
-#ifdef FIX_BASOP_2562_HQ_PREECHO_SAT
tmp_fxL1 = L_add_sat( eshbmean2_fx, es_mdct_hb_fx[ind3] ); /*2*(q_sig16)*/
-#else
- tmp_fxL1 = L_add( eshbmean2_fx, es_mdct_hb_fx[ind3] ); /*2*(q_sig16)*/
-#endif
- Mpy_32_16_ss( tmp_fxL1, 4369, &eshbmean3_fx, &tmp_u16 ); /*10922 : 1/3*/
+ Mpy_32_16_ss( tmp_fxL1, 4369, &eshbmean3_fx, &tmp_u16 ); /*10922 : 1/3*/
tmp_fxL1 = L_sub( es_mdct_hb_fx[ind3], es_mdct_hb_fx[ind5] ); /*2*(q_sig16)*/
IF( LT_32( tmp_fxL1, eshbmean3_fx ) )
diff --git a/lib_com/vlpc_2st_com_fx.c b/lib_com/vlpc_2st_com_fx.c
index 6f930f08f8aeeb7a8a7937360d1b32022f9969e4..608be8cc914284beb6fe6ca5d121ccec49a21eb2 100644
--- a/lib_com/vlpc_2st_com_fx.c
+++ b/lib_com/vlpc_2st_com_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/weight_a_fx.c b/lib_com/weight_a_fx.c
index eac5ee6b39ff2fb93cd2a932c46c77a9260d9581..3c170e7d113e67f2096cb6bf326f234ad904f9af 100644
--- a/lib_com/weight_a_fx.c
+++ b/lib_com/weight_a_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/weight_fx.c b/lib_com/weight_fx.c
index 87335d88d2b397603cca51110d616bd485c08f04..0a1f36aea7f2e1b6caa07adbc32cc225db53f52c 100644
--- a/lib_com/weight_fx.c
+++ b/lib_com/weight_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/wi_fx.c b/lib_com/wi_fx.c
index ce5a0e7f0c25ff1615f973f2b5c6bab746b2e940..8ec964aceba6876aabe61a870c4a2af37e879b5a 100644
--- a/lib_com/wi_fx.c
+++ b/lib_com/wi_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/window_fx.c b/lib_com/window_fx.c
index 74582520e396aaf38f5eca09e3a1efb3d8ab5157..0165d84c3e238ff60c27d987265c708a5665c839 100644
--- a/lib_com/window_fx.c
+++ b/lib_com/window_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/window_ola_fx.c b/lib_com/window_ola_fx.c
index 6b41dcd04618af4d6e87b26266715956479ed544..8db960a073bfa0c2b4171d7ff65f7590ceeb7016 100644
--- a/lib_com/window_ola_fx.c
+++ b/lib_com/window_ola_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_com/wtda_fx.c b/lib_com/wtda_fx.c
index ddbd244a78fe788f8b68378409b893200a341017..adb3a72143133d14e0e1f03faa35fe0312140d84 100644
--- a/lib_com/wtda_fx.c
+++ b/lib_com/wtda_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_debug/debug.c b/lib_debug/debug.c
deleted file mode 100644
index 59ca6252eee2afbbfdd03ee7c96f23e10d99f7b4..0000000000000000000000000000000000000000
--- a/lib_debug/debug.c
+++ /dev/null
@@ -1,997 +0,0 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
-
-#include
-#include
-#include
-#include
-#include
-#include
-#include "options.h"
-#ifdef DEBUGGING
-#include "debug.h"
-#include
-#ifdef DEBUG_MODE_INFO
-#ifdef DEBUG_MODE_INFO_TWEAK
-#include
-#include
-#endif
-#endif
-#endif
-#include "cnst.h"
-#include
-#include
-#include
-#ifdef _WIN32
-#include
-#else
-#endif
-#ifdef DBG_WAV_WRITER
-#include "tinywaveout_c.h"
-#endif
-#include "wmc_auto.h"
-
-
-/*-------------------------------------------------------------------*
- * Global variables used for debugging but not under DEBUGGING flag
- *--------------------------------------------------------------------*/
-
-#ifdef DEBUGGING
-uint16_t g_nPrintedLines = 0;
-
-int16_t g_verbose = 0; /* global variable for debugging */
-#ifdef DEBUG_MODE_INFO
-#ifdef DEBUG_MODE_INFO_TWEAK
-char infoFolder[FILENAME_MAX];
-#endif
-#endif
-#endif
-
-FILE *DJB_delay = NULL; /* per-frame de-jitter buffer delay dump out file */
-
-#ifdef DEBUGGING
-int16_t debug_level = 0;
-#endif
-
-/*-------------------------------------------------------------------*
- * Read/write I/O tool
- *--------------------------------------------------------------------*/
-
-#ifdef DEBUGGING
-#define N_FILEPTR 500
-#define N_DBGFLAG 100
-#define N_DBGVAL 100
-#define N_TYPES 6
-
-static FILE *in_fileptr[N_FILEPTR];
-static FILE *out_fileptr[N_FILEPTR];
-#ifdef DBG_WAV_WRITER
-static WAVEFILEOUT *out_wavfileptr[N_FILEPTR];
-#endif
-static char *in_filename[N_FILEPTR];
-static char *out_filename[N_FILEPTR];
-#ifdef DBG_WAV_WRITER
-static char *out_wavfilename[N_FILEPTR];
-#endif
-static int16_t in_count = 0;
-static int16_t out_count = 0;
-#ifdef DBG_WAV_WRITER
-static int16_t out_wav_count = 0;
-#endif
-
-static int16_t flag_count = 0;
-static char *flag_name[N_DBGFLAG];
-static int16_t val_count = 0;
-static char *val_name[N_DBGVAL];
-static char *val[N_DBGVAL];
-
-static char *type_list[N_TYPES] = { "char", "short", "int", "long", "float", "double" };
-
-static void setvalue(
- const char *value_name, /* i : Value name */
- const char *value /* i : Value as string */
-);
-
-static int16_t make_dirs( const char *const pathname );
-
-/*-------------------------------------------------------------------*
- * dbgwrite()
- *
- * Writes the buffer content to the specified file. If the file is not in the
- * debug file list, it is opened before write.
- *--------------------------------------------------------------------*/
-
-int16_t dbgwrite(
- const void *const buffer, /* i : Write buffer */
- const int16_t size, /* i : Element size */
- const int16_t count, /* i : Number of elements */
- const int16_t repeat, /* i : Number of times the elements are repeated */
-#ifdef DEBUG_MODE_INFO_TWEAK
- const char *filename /* i : Output file name */
-#else
- const char *const filename
-#endif
-)
-{
- int16_t index, i;
- void *tmp_buf;
-
-#ifdef DEBUG_MODE_INFO
-#ifdef DEBUG_MODE_INFO_TWEAK
- char filename_mod[FILENAME_MAX];
- int16_t textmode = 0;
- int16_t x = *(const int16_t *const) buffer; /* currently the textmode is only defined with "short" as input */
- memset( filename_mod, 0, FILENAME_MAX );
- tweakdbgfolder( filename, filename_mod, &textmode );
- if ( filename_mod[0] != 0 )
- {
- filename = filename_mod;
- }
-#endif
-#endif
-
- index = lookup( filename, (const char *const *) out_filename, out_count );
-
- if ( index == -1 )
- {
- if ( make_dirs( filename ) != 0 )
- {
- fprintf( stderr, "dbgwrite: Could not create directory structure for %s. Exiting..\n", filename );
- exit( -1 );
- }
-
- index = out_count;
- out_fileptr[index] = fopen( filename, "wb" );
- out_filename[index] = malloc( sizeof( char ) * ( strlen( filename ) + 1 ) );
- strcpy( out_filename[index], filename );
- out_count++;
- }
-
- if ( out_fileptr[index] != NULL )
- {
- tmp_buf = calloc( count * repeat, size );
- if ( buffer != NULL )
- {
- for ( i = 0; i < repeat; i++ )
- {
- memcpy( (char *) tmp_buf + i * size * count, buffer, size * count );
- }
- }
-#ifdef DEBUG_MODE_INFO
-#ifdef DEBUG_MODE_INFO_TWEAK
- if ( 1 == textmode && 2 == size )
- { /* currently the textmode is only defined with "short" as input */
- fprintf( out_fileptr[index], "%d\n", x );
- }
- else
- {
-#endif
-#endif
- fwrite( tmp_buf, size * count * repeat, 1, out_fileptr[index] );
-#ifdef DEBUG_MODE_INFO
-#ifdef DEBUG_MODE_INFO_TWEAK
- }
-#endif
-#endif
- free( tmp_buf );
- }
- else
- {
- fprintf( stderr, "dbgwrite: Could not write to file: %s. Exiting..\n", filename );
- exit( -1 );
- }
-
- return 0;
-}
-
-
-/*-------------------------------------------------------------------*
- * dbgwrite_mat_repeat()
- *
- * Writes buffer a buffer containing a column-wise ordered matrix
- * to the specified file. If the file is not in the
- * debug file list, it is opened before write.
- *--------------------------------------------------------------------*/
-
-void dbgwrite_mat_repeat( float *buffer, /* i : write buffer */
- int16_t nRow, /* i : matrix size (rows) */
- int16_t mCol, /* i : matrix size (columns) */
- int16_t row_repeat, /* i : number of times rows are repeated */
- int16_t col_repeat, /* i : number of times columns are repeated */
-#ifdef DEBUG_MODE_INFO_TWEAK
- const char *filename /* i : Output file name */
-#else
- const char *const filename
-#endif
-)
-{
- float *copy_buffer = calloc( nRow * row_repeat * mCol * col_repeat, sizeof( float ) );
- int16_t r, c, rr, cc;
- float *cp = ©_buffer[0];
- float *colp;
- for ( c = 0; c < mCol; c++ )
- {
- for ( cc = 0; cc < col_repeat; cc++ )
- {
- colp = buffer + c * nRow;
- for ( r = 0; r < nRow; r++ )
- {
- for ( rr = 0; rr < row_repeat; rr++ )
- {
- *( cp++ ) = *colp;
- }
- colp++;
- }
- }
- }
-
- dbgwrite( copy_buffer, sizeof( float ), nRow * row_repeat * mCol * col_repeat, 1, filename );
- free( copy_buffer );
-}
-
-
-/*-------------------------------------------------------------------*
- * dbgappend()
- *
- * Appends the buffer content to the specified file. If the file is not in the
- * debug file list, it is opened before first write.
- *--------------------------------------------------------------------*/
-
-int16_t dbgappend(
- const void *const buffer, /* i : Append buffer */
- const int16_t size, /* i : Element size */
- const int16_t count, /* i : Number of elements */
- const int16_t repeat, /* i : Number of times the elements are repeated */
-#ifdef DEBUG_MODE_INFO_TWEAK
- const char *filename /* i : Output file name */
-#else
- const char *const filename
-#endif
-)
-{
- int16_t index, i;
-
-#ifdef DEBUG_MODE_INFO
-#ifdef DEBUG_MODE_INFO_TWEAK
- char filename_mod[FILENAME_MAX];
- int16_t textmode = 0; /* textmode is only implemented in dbgwrite() currently */
- memset( filename_mod, 0, FILENAME_MAX );
- tweakdbgfolder( filename, filename_mod, &textmode );
- if ( filename_mod[0] != 0 )
- {
- filename = filename_mod;
- }
-#endif
-#endif
- index = lookup( filename, (const char *const *) out_filename, out_count );
-
- if ( index == -1 )
- {
- if ( make_dirs( filename ) != 0 )
- {
- fprintf( stderr, "dbgwrite: Could not create directory structure for %s. Exiting..\n", filename );
- exit( -1 );
- }
-
- index = out_count;
- out_fileptr[index] = fopen( filename, "ab" );
- out_filename[index] = malloc( sizeof( char ) * ( strlen( filename ) + 1 ) );
- strcpy( out_filename[index], filename );
- out_count++;
- }
-
- if ( out_fileptr[index] != NULL )
- {
- for ( i = 0; i < repeat; i++ )
- {
- fwrite( buffer, size, count, out_fileptr[index] );
- }
- }
- else
- {
- fprintf( stderr, "dbgappend: Could not write to file: %s. Exiting..\n", filename );
- exit( -1 );
- }
-
- return 0;
-}
-
-/*-------------------------------------------------------------------*
- * dbgread()
- *
- * Reads data from the specified file. If the file is not open, it will be
- * opened.
- *--------------------------------------------------------------------*/
-
-int16_t dbgread(
- void *const buffer, /* o : Read buffer */
- const int16_t size, /* i : Element size */
- const int16_t count, /* i : Number of elements */
-#ifdef DEBUG_MODE_INFO_TWEAK
- const char *filename /* i : Input file name */
-#else
- const char *const filename
-#endif
-)
-{
- int16_t index;
-
-#ifdef DEBUG_MODE_INFO
-#ifdef DEBUG_MODE_INFO_TWEAK
- char filename_mod[FILENAME_MAX];
- int16_t textmode = 0; /* textmode is only implemented in dbgwrite() currently */
- memset( filename_mod, 0, FILENAME_MAX );
- tweakdbgfolder( filename, filename_mod, &textmode );
- if ( filename_mod[0] != 0 )
- {
- filename = filename_mod;
- }
-#endif
-#endif
-
- index = lookup( filename, (const char *const *) in_filename, in_count );
-
- if ( index == -1 )
- {
- index = in_count;
- in_fileptr[index] = fopen( filename, "rb" );
-#ifdef DEBUG_FORCE_DIR
- if ( in_fileptr[index] == NULL )
- {
- /* file does not exist or could not be opened -> just return */
- return -1;
- }
-#endif
- in_filename[index] = malloc( sizeof( char ) * ( strlen( filename ) + 1 ) );
- strcpy( in_filename[index], filename );
- in_count++;
- }
-
- if ( in_fileptr[index] != NULL )
- {
- fread( buffer, size, count, in_fileptr[index] );
- }
- else
- {
- fprintf( stderr, "dbgread: Could not read from file: %s. Exiting..\n", filename );
- exit( -1 );
- }
-
- return 0;
-}
-
-/*-------------------------------------------------------------------*
- * dbgclose()
- *
- * Closes opened files and frees allocated memory
- *--------------------------------------------------------------------*/
-
-void dbgclose( void )
-{
- int16_t i;
-
- for ( i = 0; i < in_count; i++ )
- {
- fclose( in_fileptr[i] );
- free( in_filename[i] );
- }
-
- for ( i = 0; i < out_count; i++ )
- {
- fclose( out_fileptr[i] );
- free( out_filename[i] );
- }
-
-#ifdef DBG_WAV_WRITER
- for ( i = 0; i < out_wav_count; i++ )
- {
- CloseWav( out_wavfileptr[i] );
- free( out_wavfilename[i] );
- }
-#endif
- for ( i = 0; i < snr_count; i++ )
- {
- free( snr_name[i] );
- }
-
- for ( i = 0; i < flag_count; i++ )
- {
- free( flag_name[i] );
- }
-
- for ( i = 0; i < val_count; i++ )
- {
- free( val_name[i] );
- free( val[i] );
- }
-
- return;
-}
-
-
-/*-------------------------------------------------------------------*
- * dbgflag()
- *
- * Checks if a debug flag is set. The flag is identified with a string.
- *--------------------------------------------------------------------*/
-
-int16_t dbgflag(
- const char *flagname /* i : Flag name */
-)
-{
- int16_t result;
-
- result = lookup( flagname, (const char *const *) flag_name, flag_count );
-
- return ( result != -1 );
-}
-
-/*-------------------------------------------------------------------*
- * setflag()
- *
- * Sets the flag with the specified string
- *--------------------------------------------------------------------*/
-
-void setflag(
- const char *flagname /* i : Flag name */
-)
-{
- int16_t result;
-
- result = lookup( flagname, (const char *const *) flag_name, flag_count );
-
- if ( result == -1 )
- {
- flag_name[flag_count] = malloc( sizeof( char ) * ( strlen( flagname ) + 1 ) );
- strcpy( flag_name[flag_count], flagname );
- flag_count++;
- }
-
- return;
-}
-
-/*----------------------------------------------------------------------------*
- * dbgargs()
- *
- * N.B. Should be run before existing command line interpretation
- *
- * Command line interpreter for debug arguments. Removes the debug
- * arguments after interpretation so that existing command line interpretation
- * may be run afterwards.
- *
- * Arguments:
- * -D flag_name Sets the debug flag labelled flag_name.
- * The function dbgflag("flag_name") will return 1.
- *
- * -V val_name val Sets the debug value labelled val_name to val.
- * dbgvalue("type","val_name",&value) will retrieve the value
- *
- *-----------------------------------------------------------------------------*/
-
-/*! r: No. debug arguments */
-int16_t dbgargs(
- int32_t *argc, /* i/o: No. input arguments / No. arguments without dbg arguments */
- char *argv[] /* i/o: Input arguments / Input arguments without dbg arguments */
-)
-{
- int16_t i, j, dbgargs;
-
- i = 0;
- dbgargs = 0;
- while ( i < *argc )
- {
- if ( strcmp( argv[i], "-D" ) == 0 )
- {
- j = i;
- dbgargs++;
- i++;
- setflag( argv[i] );
- for ( ; j < *argc - 2; j++ )
- {
- argv[j] = argv[j + 2];
- }
- *argc -= 2;
- i -= 2;
- }
-
- if ( strcmp( argv[i], "-V" ) == 0 )
- {
- j = i;
- dbgargs++;
- i++;
- setvalue( argv[i], argv[i + 1] );
- for ( ; j < *argc - 3; j++ )
- {
- argv[j] = argv[j + 3];
- }
- *argc -= 3;
- i -= 3;
- }
- i++;
- }
-
- return dbgargs;
-}
-
-/*-------------------------------------------------------------------*
- * dbgvalue()
- *
- * Lookup a debug value
- *
- * Allowed typestr values:
- * "char","short","int","long","float","double"
- *
- * If the value is not set, the output value is not assigned
- *
- *-------------------------------------------------------------------*/
-
-/*! r: Returns 1 if value is assigned, otherwise 0 */
-int16_t dbgvalue(
- const char *typestr, /* i : Type as string:"int","char",... */
- const char *value_name, /* i : Value tag name given on command line */
- ... /* o : Output variable, type: pointer to "typestr" */
-)
-{
- int16_t index;
- char *value;
- int16_t assigned;
- char *c;
- int16_t *sh;
- int *i;
- int32_t *l;
- float *f;
- double *d;
- va_list ap;
- va_start( ap, value_name );
-
- index = lookup( value_name, (const char *const *) val_name, val_count );
-
- if ( index != -1 )
- {
- value = val[index];
- index = lookup( typestr, (const char *const *) type_list, N_TYPES );
- switch ( index )
- {
- case 0:
- c = va_arg( ap, char * );
- sscanf( value, "%c", c );
- break;
- case 1:
- sh = va_arg( ap, int16_t * );
- sscanf( value, "%hi", sh );
- break;
- case 2:
- i = va_arg( ap, int * );
- sscanf( value, "%i", i );
- break;
- case 3:
- l = va_arg( ap, int32_t * );
- sscanf( value, "%i", l );
- break;
- case 4:
- f = va_arg( ap, float * );
- sscanf( value, "%f", f );
- break;
- case 5:
- d = va_arg( ap, double * );
- sscanf( value, "%lf", d );
- break;
- default:
- fprintf( stderr, "dbgvalue::Unsupported type string %s. Exiting...\n", typestr );
- exit( -1 );
- }
- assigned = 1;
- }
- else
- {
- assigned = 0;
- }
-
- va_end( ap );
-
- return assigned;
-}
-
-/*-------------------------------------------------------------------*
- * lookup()
- *
- * Returns the index of the given string, or -1 if not found
- *--------------------------------------------------------------------*/
-
-/*! r: Index of string, -1 if not found */
-int16_t lookup(
- const char *const str, /* i : String to lookup */
- const char *const *const list, /* i : List of strings */
- const int16_t n_elem /* i : Number of elements */
-)
-{
- int16_t i, result;
-
- result = -1;
- i = 0;
- while ( i < n_elem && result == -1 )
- {
- if ( strcmp( str, list[i] ) == 0 )
- {
- result = i;
- }
- i++;
- }
-
- return result;
-}
-
-/*-------------------------------------------------------------------*
- * setvalue()
- *
- * Sets the debug name value pair
- *--------------------------------------------------------------------*/
-
-static void setvalue(
- const char *value_name, /* i : Value name */
- const char *value ) /* i : Value as string */
-
-{
- int16_t result;
-
- result = lookup( value_name, (const char *const *) val_name, val_count );
-
- if ( result == -1 )
- {
- val_name[val_count] = malloc( sizeof( char ) * ( strlen( value_name ) + 1 ) );
- strcpy( val_name[val_count], value_name );
- val[val_count] = malloc( sizeof( char ) * ( strlen( value ) + 1 ) );
- strcpy( val[val_count], value );
- val_count++;
- fprintf( stdout, "\nDebug value set: %s = %s\n", value_name, value );
- }
- else
- {
- fprintf( stdout, "\n*** Value %s already set: %s\n", value_name, val[result] );
- }
-
- return;
-}
-
-#ifdef DEBUG_MODE_INFO
-#ifdef DEBUG_MODE_INFO_TWEAK
-/*-------------------------------------------------------------------*
- * tweakdbgfolder()
- *
- * in: filename
- * out: filename_mod
- *
- * returns modified path to debug files for reading and writing functions.
- * creates in "./res" if given on command line
- * with switch -info .
- *
- *--------------------------------------------------------------------*/
-
-int16_t tweakdbgfolder( const char *filename, char *filename_mod, int16_t *textmode )
-{
- int16_t i, j;
- char *p_infoFolder = infoFolder;
- char *p_filename_mod = filename_mod;
- int16_t n_prefix = 0;
- char *suffix;
-
- /* if debug folder name given on command line, write debug info to sub folder */
- if ( infoFolder[0] != 0 )
- {
- if ( filename[0] == '.' )
- {
- n_prefix = 5;
- }
- else if ( filename[0] == 'r' )
- {
- n_prefix = 3;
- }
- else
- {
- fprintf( stderr, "tweakdbgfolder: Unexpected debug folder. Exiting..\n" );
- exit( -1 );
- }
- for ( i = 0; i <= n_prefix; i++ )
- {
- p_filename_mod[i] = filename[i];
- }
- j = i;
- while ( *p_infoFolder != 0 )
- {
- p_filename_mod[i] = *p_infoFolder;
- i++;
- p_infoFolder++;
- }
- p_filename_mod[i] = '/';
- i++;
-
- while ( filename[j] != 0 )
- {
- p_filename_mod[i] = filename[j];
- i++;
- j++;
- }
- /* detect textmode, only working with given debug folder name, otherwise no counter available for length of filename */
- suffix = &p_filename_mod[i - 4];
- if ( strncmp( suffix, ".txt", 4 ) == 0 )
- {
- *textmode = 1;
- }
- else
- {
- *textmode = 0;
- }
- }
-
-
- return 0;
-}
-#endif
-#endif
-
-
-#ifdef DEBUGGING
-/*-------------------------------------------------------------------*
- * fname()
- *
- * returns file name (string) that identifies - parameter/signal to be outputted
- - channel ID (0 or 1)
- - element ID (0, 1, etc.)
- *--------------------------------------------------------------------*/
-
-char debug_dir[6] = "res/";
-
-char tmp_fname[FILENAME_MAX];
-
-char *fname(
- char *dir,
- char *file,
- const int16_t n,
- const int16_t id,
- const int16_t enc_dec )
-{
- char idd[6];
-
- assert( id < 100 );
- sprintf( idd, ".id%d", id );
-
- strcpy( tmp_fname, dir );
-#ifdef DEBUG_FORCE_DIR
- size_t len;
- len = strlen( tmp_fname );
- if ( tmp_fname[len - 1] != '/' && tmp_fname[len - 1] != '\\' )
- {
- /* add trailing '/' slash */
- strcat( tmp_fname, "/" );
- }
-#endif
- strcat( tmp_fname, file );
-
- if ( enc_dec == DEC )
- strcat( tmp_fname, ".dec" );
- if ( id > 0 )
- strcat( tmp_fname, idd );
- if ( n > 0 )
- strcat( tmp_fname, ".ch2" );
-
- return tmp_fname;
-}
-#endif
-
-
-/*-------------------------------------------------------------------*
- * make_dirs()
- *
- * extract path(s) form the pathname and create them if not existing
- *--------------------------------------------------------------------*/
-
-int16_t make_dirs( const char *const pathname )
-{
- const char *p;
- char *temp;
- char sep = 0;
-#ifdef _WIN32
- struct _stat s = { 0 };
-#else
- struct stat s = { 0 };
-#endif
- /* find path separator */
- if ( strchr( pathname, '\\' ) != NULL )
- {
- sep = '\\';
- }
- else if ( strchr( pathname, '/' ) != NULL )
- {
- sep = '/';
- }
-
- if ( sep != 0 )
- {
- temp = calloc( strlen( pathname ) + 1, sizeof( char ) );
- p = pathname;
- while ( ( p = strchr( p, sep ) ) != NULL )
- {
- /* skip consecutive separators and '.', '..' symbols */
- if ( p != pathname && ( *( p - 1 ) == sep || *( p - 1 ) == '.' ) )
- {
- p++;
- continue;
- }
-
- /* put the path up to this point into a temp dir */
- memcpy( temp, pathname, p - pathname );
- temp[p - pathname] = '\0';
- p++;
-
- /* check if path exists and create it with mkdir() if not */
-#ifdef _WIN32
- if ( _stat( temp, &s ) == -1 )
- {
- if ( _mkdir( temp ) != 0 )
- {
- if ( errno != 0 )
- {
- return 1;
- }
- }
- }
-#else
- if ( stat( temp, &s ) == -1 )
- {
- if ( mkdir( temp, 0755 ) != 0 )
- {
- if ( errno != 0 )
- {
- return 1;
- }
- }
- }
-#endif
- }
-
- free( temp );
- }
-
- return 0;
-}
-
-#ifdef DBG_WAV_WRITER
-int16_t dbgwrite_wav(
- const float *buffer[], /* i : Write buffer */
- const int16_t count_per_ch, /* i : Number of elements */
- const char *const filename,
- int32_t fs,
- int16_t num_chs )
-{
- int16_t index, i;
- int16_t *tmp_buf;
-
- index = lookup( filename, (const char *const *) out_wavfilename, out_wav_count );
-
- if ( index == -1 )
- {
- if ( make_dirs( filename ) != 0 )
- {
- fprintf( stderr, "dbgwrite: Could not create directory structure for %s. Exiting..\n", filename );
- exit( -1 );
- }
-
- index = out_wav_count;
- out_wavfileptr[index] = CreateWav( (const char *) filename, fs, num_chs, 16 /* const uint32_t writeWaveExt */ );
- out_wavfilename[index] = malloc( sizeof( char ) * ( strlen( filename ) + 1 ) );
- strcpy( out_wavfilename[index], filename );
- out_wav_count++;
- }
-
- if ( out_wavfileptr[index] != NULL )
- {
- int16_t j, k;
- float tmp;
- tmp_buf = (int16_t *) calloc( count_per_ch * num_chs, sizeof( int16_t ) );
- k = 0;
- for ( j = 0; j < count_per_ch; j++ )
- {
- for ( i = 0; i < num_chs; i++, k++ )
- {
- tmp = roundf( buffer[i][j] );
- tmp_buf[k] = ( tmp > MAX16B_FLT ) ? MAX16B : ( tmp < MIN16B_FLT ) ? MIN16B
- : (short) tmp;
- }
- }
- WriteWavShort( out_wavfileptr[index], tmp_buf, count_per_ch * num_chs );
- free( tmp_buf );
- }
- else
- {
- fprintf( stderr, "dbgwrite_wav: Could not write to file: %s. Exiting..\n", filename );
- exit( -1 );
- }
-
- return 0;
-}
-#endif
-
-
-int16_t dbgwrite_txt(
- const float *buffer, /* i : Write buffer */
- const int16_t count, /* i : Number of elements */
- const char *const filename,
- const char *const msg_opt )
-{
- int16_t index, i;
-
- index = lookup( filename, (const char *const *) out_filename, out_count );
-
- if ( index == -1 )
- {
- if ( make_dirs( filename ) != 0 )
- {
- fprintf( stderr, "dbgwrite: Could not create directory structure for %s. Exiting..\n", filename );
- exit( -1 );
- }
-
- index = out_count;
- out_fileptr[index] = fopen( filename, "w" );
- out_filename[index] = malloc( sizeof( char ) * ( strlen( filename ) + 1 ) );
- strcpy( out_filename[index], filename );
- out_count++;
- }
-
- if ( out_fileptr[index] != NULL )
- {
- if ( buffer != NULL )
- {
- if ( msg_opt == NULL )
- {
- for ( i = 0; i < count; i++ )
- {
- fprintf( out_fileptr[index], "%f\n", buffer[i] );
- }
- }
- else
- {
- for ( i = 0; i < count; i++ )
- {
- fprintf( out_fileptr[index], "%s %f\n", msg_opt, buffer[i] );
- }
- }
- }
- }
- else
- {
- fprintf( stderr, "dbgwrite_txt: Could not write to file: %s. Exiting..\n", filename );
- exit( -1 );
- }
-
- return 0;
-}
-#endif /* DEBUGGING */
diff --git a/lib_debug/debug.h b/lib_debug/debug.h
deleted file mode 100644
index 5d905d0e467e61ac787397982da38c6a3a0e9880..0000000000000000000000000000000000000000
--- a/lib_debug/debug.h
+++ /dev/null
@@ -1,266 +0,0 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
-
-#ifndef DEBUG_H
-#define DEBUG_H
-
-#include "options.h"
-#include
-#include
-#ifdef DEBUG_SBA
-#include "sba_debug.h"
-#endif
-
-/*------------------------------------------------------------------------------------------*
- * Global variables used for debugging
- *------------------------------------------------------------------------------------------*/
-
-#ifdef DEBUGGING
-extern int32_t frame;
-#endif
-
-#ifdef DEBUGGING
-extern uint16_t g_nPrintedLines;
-extern int16_t g_verbose;
-#endif
-
-#ifdef DEBUGGING
-extern int16_t debug_level;
-#define DEBUG_LINE( level ) if ( ( level ) <= debug_level )
-#else
-#define DEBUG_LINE( level ) if ( 0 )
-#endif
-
-#ifdef DEBUGGING
-extern char tmp_fname[];
-extern char debug_dir[6];
-char *fname( char *dir, char *file, const int16_t n, const int16_t id, const int16_t enc_dec );
-#endif
-
-#ifdef DEBUG_FORCE_DIR
-#define FORCE_DIR_MAX_LENGTH 255 /* maximum length of the directory for modes/parameters enforcement */
-#endif
-
-#define MAX16B_FLT 32767.0f
-#define MIN16B_FLT ( -32768.0f )
-
-/*------------------------------------------------------------------------------------------*
- * Read/write I/O tool
- *------------------------------------------------------------------------------------------*/
-
-#ifdef DEBUGGING
-
-int16_t lookup(
- const char *const str,
- const char *const *const list,
- const int16_t n_elem );
-
-#ifdef DEBUG_MODE_INFO
-#ifdef DEBUG_MODE_INFO_TWEAK
-int16_t tweakdbgfolder(
- const char *filename,
- char *filename_mod,
- int16_t *textmode );
-#endif
-#endif
-
-int16_t dbgwrite(
- const void *const buffer,
- const int16_t size,
- const int16_t count,
- const int16_t repeat,
-#ifdef DEBUG_MODE_INFO_TWEAK
- const char *filename
-#else
- const char *const filename
-#endif
-);
-
-#ifdef DBG_WAV_WRITER
-int16_t dbgwrite_wav(
- const float *buffer[], /* i : Write buffer */
- const int16_t count_per_ch, /* i : Number of elements */
- const char *const filename,
- int32_t fs,
- int16_t num_chs );
-#endif
-
-int16_t dbgwrite_txt(
- const float *buffer, /* i : Write buffer */
- const int16_t count, /* i : Number of elements */
- const char *const filename,
- const char *const msg_opt );
-
-void dbgwrite_mat_repeat(
- float *buffer, /* i : write buffer */
- int16_t nRow, /* i : matrix size (rows) */
- int16_t mCol, /* i : matrix size (columns) */
- int16_t row_repeat, /* i : number of times rows are repeated */
- int16_t col_repeat, /* i : number of times columns are repeated */
-#ifdef DEBUG_MODE_INFO_TWEAK
- const char *filename /* i : Output file name */
-#else
- const char *const filename
-#endif
-);
-
-int16_t dbgappend(
- const void *const buffer,
- const int16_t size,
- const int16_t count,
- const int16_t repeat,
-#ifdef DEBUG_MODE_INFO_TWEAK
- const char *filename
-#else
- const char *const filename
-#endif
-);
-
-int16_t dbgread(
- void *const buffer,
- const int16_t size,
- const int16_t count,
-#ifdef DEBUG_MODE_INFO_TWEAK
- const char *filename
-#else
- const char *const filename
-#endif
-);
-
-void dbgclose( void );
-
-int16_t dbgflag(
- const char *flagname );
-
-void setflag(
- const char *flagname );
-
-int16_t dbgargs(
- int32_t *argc,
- char *argv[] );
-
-int16_t dbgvalue(
- const char *typestr,
- const char *value_name,
- ... );
-
-extern FILE *DJB_delay;
-
-extern FILE *FEC_pattern;
-
-#endif /* DEBUGGING */
-
-/*------------------------------------------------------------------------------------------*
- * SNR measurement tool
- *------------------------------------------------------------------------------------------*/
-
-#ifdef DEBUGGING
-
-extern int16_t snr_count;
-extern char *snr_name[];
-
-void snr(
- const float *const signal,
- const float *const noise,
- const int16_t length,
- const char *const name );
-
-void snr_diff(
- const float *const clean,
- const float *const degraded,
- const int16_t length,
- const int16_t delay,
- const char *const name );
-
-void snr_celp(
- const int16_t L_frame,
- const int16_t L_subfr,
- const float gamma,
- const float tilt_fac,
- const int16_t vad_flag,
- const int16_t coder_type,
- const float *input,
- const float *output,
- const float *A,
- const int16_t idchan,
- const char *name );
-
-void print_snr( void );
-
-#else
-
-#define print_snr( void )
-
-#endif
-
-/*------------------------------------------------------------------------------------------*
- * SD analysis tool
- *------------------------------------------------------------------------------------------*/
-
-#ifdef DEBUGGING
-
-/*! r: SD in a given frequency range */
-float sd_range(
- const float lsf[], /* i : vector of unquantized LSF values */
- const float lsf_q[], /* i : vector of quantized LSF values */
- const int16_t order, /* i : dimension of the vectors */
- const int32_t fs, /* i : sampling frequency */
- const float min_freq, /* i : minimum frequency of interest */
- const float max_freq, /* i : maximum frequency of interest */
- const char *const name, /* i : string for SD entry in the global table */
- const int16_t Opt_AMR_WB /* i : flag indicating AMR-WB IO mode */
-);
-
-/*! r: SD respecting critical bands */
-float sd_crit(
- const float lsf[], /* i : vector of unquantized LSF values */
- const float lsf_q[], /* i : vector of quantized LSF values */
- const int16_t order, /* i : dimension of the vectors */
- const int32_t fs, /* i : sampling frequency */
- const float min_freq, /* i : minimal frequency */
- const float max_freq, /* i : maximal frequency */
- int16_t *min_band, /* o : minimal critical band */
- int16_t *max_band, /* o : maximal critical band */
- float sd_bands[], /* i/o: SD in critical bands */
- const char *const name, /* i : string for SD entry in the global table */
- const int16_t Opt_AMR_WB /* i : flag indicating AMR-WB IO mode */
-);
-
-void print_sd( void );
-
-#else
-
-#define print_sd( void )
-
-#endif
-
-#endif /* DEBUG_H */
diff --git a/lib_debug/sba_debug.c b/lib_debug/sba_debug.c
deleted file mode 100644
index 5f7e846ae1bd166a5354b72507356e9a570f0bb2..0000000000000000000000000000000000000000
--- a/lib_debug/sba_debug.c
+++ /dev/null
@@ -1,432 +0,0 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
-
-#include
-#include
-#include
-#include
-#include
-#include "options.h"
-#include "ivas_cnst.h"
-#include "sba_debug.h"
-#include "debug.h"
-#include
-#include "wmc_auto.h"
-#ifdef DEBUG_SBA
-#include
-#include "tinywaveout_c.h"
-
-/*-------------------------------------------------------------------*
- * Global variables used for debugging but not under DEBUGGING flag
- *--------------------------------------------------------------------*/
-
-#define MAX_IN_FILE_LEN ( 1000 )
-#define MAX_PLUG_IN_FILE_LEN ( MAX_IN_FILE_LEN )
-#define MAX_DEBUG_TAG_LEN ( 50 )
-#define NUM_DEBUG_FILES ( 5 )
-#define MAX_TAG_LEN ( 200 )
-
-WAVEFILEOUT *spar_foa_enc_wav[3];
-WAVEFILEOUT *spar_foa_dec_wav[NUM_DEBUG_FILES];
-float max_diff = 0;
-int32_t dbg_frm_num;
-int32_t dbg_band;
-int32_t dbg_type;
-int32_t iter_max = 0;
-FILE *fFb_pcm = NULL;
-int8_t file_names[NUM_DEBUG_FILES][MAX_TAG_LEN + MAX_DEBUG_TAG_LEN];
-
-
-#ifdef DEBUG_AGC
-FILE *agcOut = NULL; /* temporary AGC bitstream */
-#endif
-
-/*-----------------------------------------------------------------------------------------*
- * Function description
- * cstrcpy() - Custom implementation of strcpy
- *
- * Inputs:
- * const char* _Source -> Source buffer
- * _SizeInBytes -> Destination buffer size in bytes
- *
- * Outputs:
- * char* _Destination -> Destination buffer
- *-----------------------------------------------------------------------------------------*/
-
-static void cstrcpy( char *_Destination, size_t _SizeInBytes, const char *_Source )
-{
- size_t SourceSizeInBytes = strlen( _Source );
- if ( _SizeInBytes > SourceSizeInBytes )
- {
- strcpy( _Destination, _Source );
- }
- else
- {
- assert( 0 );
- }
-
- return;
-}
-
-
-/*-----------------------------------------------------------------------------------------*
- * Function description
- * cstrcat() - Custom implementation of strcat
- *
- * Inputs:
- * const char* _Source -> Source buffer
- * _SizeInBytes -> Destination buffer size in bytes
- *
- * Outputs:
- * char* _Destination -> Destination buffer
- *-----------------------------------------------------------------------------------------*/
-
-static void cstrcat( char *_Destination, size_t _SizeInBytes, const char *_Source )
-{
- size_t SourceSizeInBytes = strlen( _Source );
- size_t DestSizeInBytes = _SizeInBytes - strlen( _Destination );
- if ( DestSizeInBytes > SourceSizeInBytes )
- {
- strcat( _Destination, _Source );
- }
- else
- {
- assert( 0 );
- }
-
- return;
-}
-
-
-#ifdef DEBUG_AGC
-void ivas_close_agc_debug_files( void )
-{
- if ( agcOut != NULL )
- {
- fclose( agcOut );
- agcOut = NULL;
- }
-
- return;
-}
-
-void ivas_open_agc_debug_files( int16_t agc )
-{
- /* Temporary AGC file */
- if ( agc > 0 )
- {
- char agcFilename[50] = "agcBitstream.bin";
- if ( ( agcOut = fopen( agcFilename, "wb" ) ) == NULL )
- {
- fprintf( stderr, "Error: Gain Control bitstream file %s could not be opened\n\n", agcFilename );
- exit( -1 );
- }
- fprintf( stdout, "Temporary gain control bitstream file %s is opened\n", agcFilename );
- }
-
- return;
-}
-#endif
-
-static void UpdateWave(
- const uint32_t sampleRate,
- const uint32_t numChannels,
- const uint32_t bps,
- WAVEFILEOUT *spar_wav )
-{
- uint32_t blockAlignment = 0;
- uint16_t writeValue16;
- uint32_t writeValue32;
-
- writeValue16 = LittleEndian16( (int16_t) numChannels );
- /*Fseek to number of channel writing position*/
- fseek( spar_wav->theFile, 22, SEEK_SET );
- fwrite( &writeValue16, sizeof( writeValue16 ), 1, spar_wav->theFile );
- blockAlignment = numChannels * ( bps >> 3 );
- writeValue16 = LittleEndian16( (int16_t) blockAlignment );
- fseek( spar_wav->theFile, 4, SEEK_CUR );
- writeValue32 = LittleEndian32( sampleRate * blockAlignment );
- fwrite( &writeValue32, sizeof( writeValue32 ), 1, spar_wav->theFile );
- fwrite( &writeValue16, sizeof( writeValue16 ), 1, spar_wav->theFile );
-
- return;
-}
-
-
-void ivas_spar_dump_signal_wav(
- const int16_t input_frame,
- float **ppPcm,
- float pcm_array[IVAS_SPAR_MAX_CH][L_FRAME48k],
- const int16_t no_channel,
- WAVEFILEOUT *wave_file,
- char *location )
-{
- float tmp_value;
- int16_t pcm_value, i, j, k;
- int16_t debug_tmp[IVAS_SPAR_MAX_CH * L_FRAME48k * 2];
-
- k = 0;
- int16_t Clipping = 0;
- float largest_value = 0;
- float db_value = 0;
-
- for ( j = 0; j < input_frame; j++ )
- {
- for ( i = 0; i < no_channel; i++, k++ )
- {
- if ( ppPcm )
- {
- tmp_value = roundf( ppPcm[i][j] );
- }
- else
- {
- tmp_value = roundf( pcm_array[i][j] );
- }
-
- if ( tmp_value > MAX16B_FLT )
- {
- largest_value = (float) fabs( tmp_value ) > largest_value ? (float) fabs( tmp_value ) : largest_value;
- tmp_value = MAX16B;
- Clipping++;
- }
- else if ( tmp_value < MIN16B_FLT )
- {
- largest_value = (float) fabs( tmp_value ) > largest_value ? (float) fabs( tmp_value ) : largest_value;
- tmp_value = MIN16B;
- Clipping++;
- }
- pcm_value = (int16_t) tmp_value;
- /*pcm_value = (tmp_value > MAX16B_FLT) ? MAX16B : (tmp_value < MIN16B_FLT) ? MIN16B
- : (short)tmp_value;*/
- debug_tmp[k] = pcm_value;
- }
- }
- if ( Clipping )
- {
- db_value = 20.f * (float) log( largest_value );
- fprintf( stderr, "%d\t Clipping detected ", Clipping );
- }
-
- WriteWavShort( wave_file, debug_tmp, ( no_channel * input_frame ) );
-
- if ( db_value )
- {
- fprintf( stderr, "\t In %s largest clipped sample in dB %f \n", location, db_value );
- }
-
- return;
-}
-
-
-void ivas_close_sba_decoder_debug_files(
- const int32_t fs,
- const int16_t n_ch,
- const int16_t n_transport,
- const int16_t pca_ingest_channels )
-{
- if ( spar_foa_dec_wav[0] != NULL )
- {
- UpdateWave( fs, n_transport, 32, spar_foa_dec_wav[0] );
- CloseWav( spar_foa_dec_wav[0] );
- }
- if ( spar_foa_dec_wav[1] != NULL )
- {
- UpdateWave( fs, n_transport, 16, spar_foa_dec_wav[1] );
- CloseWav( spar_foa_dec_wav[1] );
- }
- if ( spar_foa_dec_wav[2] != NULL )
- {
- UpdateWave( fs, pca_ingest_channels, 16, spar_foa_dec_wav[2] );
- CloseWav( spar_foa_dec_wav[2] );
- }
- if ( spar_foa_dec_wav[3] != NULL )
- {
- UpdateWave( fs, n_ch, 16, spar_foa_dec_wav[3] );
- CloseWav( spar_foa_dec_wav[3] );
- }
-
- if ( spar_foa_dec_wav[4] != NULL )
- {
- UpdateWave( fs, n_ch, 16, spar_foa_dec_wav[4] );
- CloseWav( spar_foa_dec_wav[4] );
- }
-
- return;
-}
-
-
-void ivas_close_sba_encoder_debug_files( void )
-{
-
- if ( spar_foa_enc_wav[0] != NULL )
- {
- CloseWav( spar_foa_enc_wav[0] );
- }
- if ( spar_foa_enc_wav[1] != NULL )
- {
- CloseWav( spar_foa_enc_wav[1] );
- }
- if ( spar_foa_enc_wav[2] != NULL )
- {
- CloseWav( spar_foa_enc_wav[2] );
- }
-
- /* Enable print max diff to a file */
-
- /* FILE *fp = fopen("max_diff.txt", "a");
- fprintf(fp, "%s\n", file_names[0]);
- fprintf(fp, "max diff = %0.15f\n frame_no = %d\n band num = %d\n coeff type %d\n", max_diff, dbg_frm_num, dbg_band, dbg_type);
- fclose(fp); */
-
- /* Enable print max eig iters to a file */
-
- /*FILE *fp = fopen("max_iters.txt", "a");
- fprintf(fp, "%s\n", file_names[0]);
- fprintf(fp, "%d\n", iter_max);
- fclose(fp); */
-
- return;
-}
-
-
-void ivas_open_sba_decoder_debug_files(
- const int32_t fs,
- const int16_t n_ch,
- const int16_t n_transport )
-{
- int8_t fb_wav_dump_path[NUM_DEBUG_FILES][MAX_PLUG_IN_FILE_LEN] = { "", "", "", "", "" };
-
- cstrcat( (char *) fb_wav_dump_path[0], sizeof( fb_wav_dump_path[0] ), "dec_out.wav" );
- spar_foa_dec_wav[0] = CreateWav( (const char *) fb_wav_dump_path[0], fs, n_ch, 32 /* const uint32_t writeWaveExt */ );
-
- cstrcat( (char *) fb_wav_dump_path[1], sizeof( fb_wav_dump_path[1] ), "agc_dec_out.wav" );
- spar_foa_dec_wav[1] = CreateWav( (const char *) fb_wav_dump_path[1], fs, n_transport, 16 /* const uint32_t writeWaveExt */ );
-
- cstrcat( (char *) fb_wav_dump_path[2], sizeof( fb_wav_dump_path[2] ), "pca_dec.wav" );
- spar_foa_dec_wav[2] = CreateWav( (const char *) fb_wav_dump_path[2], fs, n_transport, 16 /* const uint32_t writeWaveExt */ );
-
- cstrcat( (char *) fb_wav_dump_path[3], sizeof( fb_wav_dump_path[3] ), "cldfbSynthesis_ivas.wav" );
- spar_foa_dec_wav[3] = CreateWav( (const char *) fb_wav_dump_path[3], fs, n_transport, 16 /* const uint32_t writeWaveExt */ );
-
- cstrcat( (char *) fb_wav_dump_path[4], sizeof( fb_wav_dump_path[4] ), "cldfbAnalysis_ivas.wav" );
- spar_foa_dec_wav[4] = CreateWav( (const char *) fb_wav_dump_path[4], fs, n_transport, 16 /* const uint32_t writeWaveExt */ );
-
- return;
-}
-
-
-void ivas_open_sba_encoder_debug_files(
- const int32_t fs,
- const int16_t n_transport,
- const char *file_tag,
- const int32_t ivas_total_brate,
- const int16_t dtx_on )
-{
- int8_t fb_wav_dump_path[3][MAX_PLUG_IN_FILE_LEN] = { "spar_foa_enc", "spar_foa_enc", "spar_foa_enc" };
-
- if ( file_tag != NULL )
- {
- cstrcpy( (char *) file_names[0], sizeof( file_names[0] ), (const char *) file_tag );
- }
-
- /* ivas_total_brate */
- switch ( ivas_total_brate )
- {
- case IVAS_24k4:
- cstrcat( (char *) file_names[0], sizeof( file_names[0] ), "_ivasbr24k" );
- break;
- case IVAS_32k:
- cstrcat( (char *) file_names[0], sizeof( file_names[0] ), "_ivasbr32k" );
- break;
- case IVAS_48k:
- cstrcat( (char *) file_names[0], sizeof( file_names[0] ), "_ivasbr48k" );
- break;
- case IVAS_64k:
- cstrcat( (char *) file_names[0], sizeof( file_names[0] ), "_ivasbr64k" );
- break;
- case IVAS_80k:
- cstrcat( (char *) file_names[0], sizeof( file_names[0] ), "_ivasbr80k" );
- break;
- case IVAS_96k:
- cstrcat( (char *) file_names[0], sizeof( file_names[0] ), "_ivasbr96k" );
- break;
- case IVAS_128k:
- cstrcat( (char *) file_names[0], sizeof( file_names[0] ), "_ivasbr128k" );
- break;
- case IVAS_160k:
- cstrcat( (char *) file_names[0], sizeof( file_names[0] ), "_ivasbr160k" );
- break;
- case IVAS_192k:
- cstrcat( (char *) file_names[0], sizeof( file_names[0] ), "_ivasbr192k" );
- break;
- case IVAS_256k:
- cstrcat( (char *) file_names[0], sizeof( file_names[0] ), "_ivasbr256k" );
- break;
- case IVAS_384k:
- cstrcat( (char *) file_names[0], sizeof( file_names[0] ), "_ivasbr384k" );
- break;
- case IVAS_512k:
- cstrcat( (char *) file_names[0], sizeof( file_names[0] ), "_ivasbr512k" );
- break;
- }
-
- /* DTX */
- if ( dtx_on )
- {
- cstrcat( (char *) file_names[0], sizeof( file_names[0] ), "_DTX1" );
- }
- else
- {
- cstrcat( (char *) file_names[0], sizeof( file_names[0] ), "_DTX0" );
- }
-
- cstrcpy( (char *) file_names[1], sizeof( file_names[1] ), (const char *) file_names[0] );
- cstrcpy( (char *) file_names[2], sizeof( file_names[2] ), (const char *) file_names[0] );
- cstrcpy( (char *) file_names[3], sizeof( file_names[3] ), (const char *) file_names[0] );
- cstrcat( (char *) file_names[0], sizeof( file_names[0] ), "_pcm.txt" );
-
- cstrcat( (char *) fb_wav_dump_path[0], sizeof( fb_wav_dump_path[0] ), (const char *) file_names[2] );
- cstrcat( (char *) fb_wav_dump_path[0], sizeof( fb_wav_dump_path[0] ), "_pca_enc.wav" );
- spar_foa_enc_wav[0] = CreateWav( (const char *) fb_wav_dump_path[0], fs, n_transport, 16 /* const uint32_t writeWaveExt */ );
-
- cstrcat( (char *) fb_wav_dump_path[1], sizeof( fb_wav_dump_path[1] ), (const char *) file_names[2] );
- cstrcat( (char *) fb_wav_dump_path[1], sizeof( fb_wav_dump_path[1] ), "_fb_mixer_enc.wav" );
- spar_foa_enc_wav[1] = CreateWav( (const char *) fb_wav_dump_path[1], fs, n_transport, 16 /* const uint32_t writeWaveExt */ );
-
- cstrcat( (char *) fb_wav_dump_path[2], sizeof( fb_wav_dump_path[2] ), (const char *) file_names[2] );
- cstrcat( (char *) fb_wav_dump_path[2], sizeof( fb_wav_dump_path[2] ), "_agc_enc.wav" );
- spar_foa_enc_wav[2] = CreateWav( (const char *) fb_wav_dump_path[2], fs, n_transport, 16 /* const uint32_t writeWaveExt */ );
-
- return;
-}
-
-#endif /* DEBUG_SBA */
diff --git a/lib_debug/sba_debug.h b/lib_debug/sba_debug.h
deleted file mode 100644
index 850e7ab67460da4f0aace38de4956e4772be23ff..0000000000000000000000000000000000000000
--- a/lib_debug/sba_debug.h
+++ /dev/null
@@ -1,61 +0,0 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
-
-#ifndef SBA_DEBUG_H
-#define SBA_DEBUG_H
-
-#include "options.h"
-#include
-#include
-#ifdef DEBUG_SBA
-#include "cnst.h"
-#include "ivas_cnst.h"
-#include "tinywaveout_c.h"
-
-
-#ifdef DEBUG_SBA_AUDIO_DUMP
-extern WAVEFILEOUT *spar_foa_enc_wav[3];
-extern WAVEFILEOUT *spar_foa_dec_wav[5];
-#endif
-
-#ifdef DEBUG_AGC
-void ivas_close_agc_debug_files( void );
-void ivas_open_agc_debug_files( int16_t agc );
-#endif
-void ivas_spar_dump_signal_wav( const int16_t input_frame, float **ppPcm, float pcm_array[IVAS_SPAR_MAX_CH][L_FRAME48k], const int16_t no_channel, WAVEFILEOUT *wave_file, char *location );
-void ivas_close_sba_encoder_debug_files( void );
-void ivas_open_sba_encoder_debug_files( const int32_t fs, const int16_t n_transport, const char *file_tag, const int32_t ivas_total_brate, const int16_t dtx_on );
-void ivas_close_sba_decoder_debug_files( const int32_t fs, const int16_t n_ch, const int16_t n_transport, const int16_t pca_ingest_channels );
-void ivas_open_sba_decoder_debug_files( const int32_t fs, const int16_t n_ch, const int16_t n_transport );
-#endif
-
-#endif /* SBA_DEBUG_H */
diff --git a/lib_debug/snr.c b/lib_debug/snr.c
deleted file mode 100644
index 743a632a609ae7e4b3170cd43e0dec193aa6e207..0000000000000000000000000000000000000000
--- a/lib_debug/snr.c
+++ /dev/null
@@ -1,465 +0,0 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
-
-#include
-#include "options.h"
-#ifdef DEBUGGING
-#include "debug.h"
-#endif
-#include
-#include
-#include
-#include "wmc_auto.h"
-#include "cnst.h"
-#include "ivas_cnst.h"
-
-#ifdef DEBUGGING
-
-/*-------------------------------------------------------------------*
- * Local constants
- *--------------------------------------------------------------------*/
-
-#define N_SNRPTR 100
-#define MAX_SIGNAL_LENGTH 1024
-#define MAX_DELAY 320
-
-/*-------------------------------------------------------------------*
- * Global variables
- *--------------------------------------------------------------------*/
-
-int16_t snr_count = 0;
-char *snr_name[N_SNRPTR] = { 0 };
-
-#ifdef DEBUG_MODE_INFO
-float snr_[2][320];
-#endif
-
-/*-------------------------------------------------------------------*
- * Local variables
- *--------------------------------------------------------------------*/
-
-static double signal_energy[N_SNRPTR];
-static double noise_energy[N_SNRPTR];
-static double acc_seg_snr[N_SNRPTR];
-static int32_t seg_count[N_SNRPTR];
-static double acc_wseg_snr[N_SNRPTR];
-static double wseg_count[N_SNRPTR];
-static float *mem_delay_comp[N_SNRPTR] = { 0 };
-static float mem_deemph_x[MAX_INPUT_CHANNELS] = { 0 };
-static float mem_deemph_y[MAX_INPUT_CHANNELS] = { 0 };
-static float mem_synth_snr[MAX_INPUT_CHANNELS][M];
-
-
-/*-------------------------------------------------------------------*
- * Local functions - they are copies of functions declared in prot.h but
- here we do not want to include prot.h due to its dependencies
- *--------------------------------------------------------------------*/
-
-#ifdef DEBUG_MODE_INFO
-static void set_f(
- float y[], /* i/o: Vector to set */
- const float a, /* i : Value to set the vector to */
- const int16_t N /* i : Lenght of the vector */
-)
-{
- int16_t i;
-
- for ( i = 0; i < N; i++ )
- {
- y[i] = a;
- }
-
- return;
-}
-#endif
-
-static float sum2_f(
- const float *vec, /* i : input vector */
- const int16_t lvec /* i : length of input vector */
-)
-{
- int16_t i;
- float tmp;
-
- tmp = 0.0f;
- for ( i = 0; i < lvec; i++ )
- {
- tmp += vec[i] * vec[i];
- }
-
- return tmp;
-}
-
-
-static void mvr2r(
- const float x[], /* i : input vector */
- float y[], /* o : output vector */
- const int16_t n /* i : vector size */
-)
-{
- int16_t i;
-
- if ( n <= 0 )
- {
- /* cannot transfer vectors with size 0 */
- return;
- }
-
- if ( y < x )
- {
- for ( i = 0; i < n; i++ )
- {
- y[i] = x[i];
- }
- }
- else
- {
- for ( i = n - 1; i >= 0; i-- )
- {
- y[i] = x[i];
- }
- }
-
- return;
-}
-
-static void residu(
- const float *a, /* i : LP filter coefficients */
- const int16_t m, /* i : order of LP filter */
- const float *x, /* i : input signal (usually speech) */
- float *y, /* o : output signal (usually residual) */
- const int16_t l /* i : size of filtering */
-)
-{
- float s;
- int16_t i, j;
-
- for ( i = 0; i < l; i++ )
- {
- s = x[i];
- for ( j = 1; j <= m; j++ )
- {
- s += a[j] * x[i - j];
- }
- y[i] = s;
- }
-
- return;
-}
-
-static void deemph(
- float *signal, /* i/o: signal */
- const float mu, /* i : deemphasis factor */
- const int16_t L, /* i : vector size */
- float *mem /* i/o: memory (y[-1]) */
-)
-{
- int16_t i;
-
- signal[0] = signal[0] + mu * ( *mem );
- for ( i = 1; i < L; i++ )
- {
- signal[i] = signal[i] + mu * signal[i - 1];
- }
-
- *mem = signal[L - 1];
-
- if ( ( *mem < 1e-10 ) & ( *mem > -1e-10 ) )
- {
- *mem = 0;
- }
-
- return;
-}
-
-static void weight_a(
- const float *a, /* i : LP filter coefficients */
- float *ap, /* o : weighted LP filter coefficients */
- const float gamma, /* i : weighting factor */
- const int16_t m /* i : order of LP filter */
-)
-{
- float f;
- int16_t i;
-
- ap[0] = a[0];
- f = gamma;
-
- for ( i = 1; i <= m; i++ )
- {
- ap[i] = f * a[i];
- f *= gamma;
- }
-
- return;
-}
-
-
-/*-------------------------------------------------------------------*
- * snr()
- *
- * Calculates and accumulates SNR values for a signal specified with a
- * certain string. The signal is input in segments having certain length,
- * for which a global SNR, segmental SNR and weighted segmental SNR is computed.
- *--------------------------------------------------------------------*/
-
-void snr(
- const float *const signal,
- const float *const noise,
- const int16_t length,
- const char *const name )
-{
- int16_t index;
- double signal_sumsq, noise_sumsq, frame_snr, seg_en;
-
- index = lookup( name, (const char *const *) snr_name, snr_count );
- if ( index == -1 )
- {
- index = snr_count;
- signal_energy[index] = 0;
- noise_energy[index] = 0;
- acc_seg_snr[index] = 0;
- seg_count[index] = 0;
- acc_wseg_snr[index] = 0;
- wseg_count[index] = 0;
- snr_name[index] = malloc( sizeof( char ) * ( strlen( name ) + 1 ) );
- strcpy( snr_name[index], name );
- snr_count++;
- }
-
- signal_sumsq = sum2_f( signal, length ) + 0.001f;
- noise_sumsq = sum2_f( noise, length ) + 0.001f;
- if ( signal_sumsq < noise_sumsq )
- signal_sumsq = noise_sumsq;
- frame_snr = 10 * log10( signal_sumsq / noise_sumsq );
- seg_en = 10 * log10( signal_sumsq / length );
- if ( seg_en < 0.0 )
- seg_en = 0.0;
-
- signal_energy[index] += signal_sumsq;
- noise_energy[index] += noise_sumsq;
- acc_seg_snr[index] += frame_snr;
- seg_count[index]++;
- acc_wseg_snr[index] += frame_snr * seg_en;
- wseg_count[index] += seg_en;
-
- return;
-}
-
-
-/*-------------------------------------------------------------------*
- * snr_diff()
- *
- * Calculates and accumulates SNR values for a signal specified with a
- * certain string. The signal is input in segments having certain length,
- * for which a global SNR, segmental SNR and weighted segmental SNR is computed.
- * A delay between both signals is taken into account
- * and compensated for (positive value means degraded signal is delayed).
- *--------------------------------------------------------------------*/
-
-void snr_diff(
- const float *const clean,
- const float *const degraded,
- const int16_t length,
- const int16_t delay,
- const char *const name )
-{
- int16_t i, index;
- float noise[MAX_SIGNAL_LENGTH], comp_buf[MAX_SIGNAL_LENGTH + MAX_DELAY];
-
- if ( length > MAX_SIGNAL_LENGTH )
- {
- fprintf( stdout, "snr_diff::Input segment too long. Exiting...\n" );
- exit( -1 );
- }
-
- if ( delay < 0 )
- {
- fprintf( stdout, "snr_diff::Degraded signal cannot have negative delay. Exiting...\n" );
- exit( -1 );
- }
-
- /* search for the name in the database */
- index = (int16_t) lookup( name, (const char *const *) snr_name, snr_count );
- if ( index == -1 )
- {
- index = (int16_t) snr_count;
- signal_energy[index] = 0.0f;
- noise_energy[index] = 0.0f;
- acc_seg_snr[index] = 0.0f;
- seg_count[index] = 0;
- acc_wseg_snr[index] = 0.001f;
- wseg_count[index] = 0.001f;
- snr_name[index] = malloc( sizeof( char ) * ( strlen( name ) + 1 ) );
- mem_delay_comp[index] = calloc( delay, sizeof( float ) );
- strcpy( snr_name[index], name );
- snr_count++;
- }
-
- /* delay compensation - introduction of delay to the clean signal */
- mvr2r( mem_delay_comp[index], comp_buf, delay );
- mvr2r( clean, comp_buf + delay, length );
- mvr2r( comp_buf + length, mem_delay_comp[index], delay );
-
- for ( i = 0; i < length; i++ )
- {
- noise[i] = comp_buf[i] - degraded[i];
- }
-
- snr( comp_buf, noise, length, name );
-
- return;
-}
-
-
-/*-------------------------------------------------------------------*
- * snr_celp()
- *
- * Calculates SNR, segmental SNR and weighted segmental SNR values for active
- * frames (GENERIC, VOICED, TRANSITION and AUDIO) of CELP-coded signals. Both, the input and output
- * signals are first converted to the perceptually weighted domain, subtracted to
- * obtain the noise signal and de-emphasized.
- *--------------------------------------------------------------------*/
-
-void snr_celp(
- const int16_t L_frame,
- const int16_t L_subfr,
- const float gamma,
- const float tilt_fac,
- const int16_t vad_flag,
- const int16_t coder_type,
- const float *input,
- const float *output,
- const float *A,
- const int16_t idchan,
- const char *name )
-{
- int16_t i;
- float noise[L_FRAME16k], Ap[M + 1], x[L_FRAME16k], y[L_FRAME16k], synth_buf[M + L_FRAME16k], *synth;
- const float *p_A;
- int16_t j;
-#ifdef DEBUG_MODE_INFO
- float signal2, noise2, subframe_snr;
-#endif
-
- synth = synth_buf + M;
- mvr2r( mem_synth_snr[idchan], synth_buf, M );
- mvr2r( output, synth, L_frame );
- mvr2r( synth_buf + L_frame, mem_synth_snr[idchan], M );
-
- p_A = A;
- for ( i = 0; i < L_frame; i += L_subfr )
- {
- weight_a( p_A, Ap, gamma, M );
- residu( Ap, M, &input[i], &x[i], L_subfr );
- residu( Ap, M, &synth[i], &y[i], L_subfr );
- p_A += ( M + 1 );
-
- deemph( &x[i], tilt_fac, L_subfr, &mem_deemph_x[idchan] );
- deemph( &y[i], tilt_fac, L_subfr, &mem_deemph_y[idchan] );
-
- for ( j = 0; j < L_subfr; j++ )
- {
- noise[i + j] = x[i + j] - y[i + j];
- }
-
-#ifdef DEBUG_MODE_INFO
- signal2 = sum2_f( &x[i], L_subfr ) + 0.001f;
- noise2 = sum2_f( &noise[i], L_subfr ) + 0.001f;
- if ( signal2 < noise2 )
- signal2 = noise2;
- subframe_snr = 10.0f * log10f( signal2 / noise2 );
-
- if ( L_frame == L_FRAME )
- {
- set_f( snr_[idchan] + i * 5 / 4, subframe_snr, L_subfr * 5 / 4 );
- }
- else
- {
- set_f( snr_[idchan] + i, subframe_snr, L_subfr );
- }
-#endif
- }
-
- if ( vad_flag == 1 && ( coder_type == GENERIC || coder_type == VOICED || coder_type == TRANSITION || coder_type == AUDIO ) )
- {
- snr( x, noise, L_frame, name );
- }
-
- return;
-}
-
-/*-------------------------------------------------------------------*
- * print_snr()
- *
- * Finalizes and presents accumulated SNR data
- *--------------------------------------------------------------------*/
-
-void print_snr( void )
-{
- int16_t i;
- double snr, segsnr, wsegsnr;
-
- if ( snr_count > 0 )
- {
- fprintf( stdout, "\n --- SNR report --- \n" );
-
- for ( i = 0; i < snr_count; i++ )
- {
- snr = 10 * log10( signal_energy[i] / ( noise_energy[i] + 0.0001f ) );
- segsnr = acc_seg_snr[i] / ( seg_count[i] + 0.0001f );
- wsegsnr = acc_wseg_snr[i] / ( wseg_count[i] + 0.0001f );
- fprintf( stdout, "%-22s %6.3f dB SNR %6.3f dB SegSNR %6.3f dB WSegSNR\n", snr_name[i], snr, segsnr, wsegsnr );
- }
- fprintf( stdout, "\n" );
- }
-
- /* free allocated memory */
- for ( i = 0; i < N_SNRPTR; i++ )
- {
- if ( snr_name[i] )
- {
- free( snr_name[i] );
- snr_name[i] = NULL;
- }
-
- if ( mem_delay_comp[i] )
- {
- free( mem_delay_comp[i] );
- mem_delay_comp[i] = NULL;
- }
- }
-
- return;
-}
-
-#endif
diff --git a/lib_debug/wmc_auto.c b/lib_debug/wmc_auto.c
index 5a14edc319a07ee916125b725776c9d9ad8bb65a..8bba7ee2fd0badc5973c927be581bba9a485515a 100644
--- a/lib_debug/wmc_auto.c
+++ b/lib_debug/wmc_auto.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*
* (C) 2024 copyright VoiceAge Corporation. All Rights Reserved.
*
diff --git a/lib_debug/wmc_auto.h b/lib_debug/wmc_auto.h
index 64e2c751a9261c0e8e02c147f194047f61b83786..e0c1c170f581b4d61c626acfdf86dd0f6bd5b706 100644
--- a/lib_debug/wmc_auto.h
+++ b/lib_debug/wmc_auto.h
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*
* (C) 2024 copyright VoiceAge Corporation. All Rights Reserved.
*
diff --git a/lib_dec/ACcontextMapping_dec_fx.c b/lib_dec/ACcontextMapping_dec_fx.c
index a483972ff03667aecefb49b507754601b6314db9..361ad2bf011a7b052797d6ecc04930c841be8dfc 100644
--- a/lib_dec/ACcontextMapping_dec_fx.c
+++ b/lib_dec/ACcontextMapping_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
@@ -524,9 +527,6 @@ Word16 RCcontextMapping_decode2_no_mem_s17_LCS_fx(
move16();
/* Confirm that there is no overflow */
-#ifdef DEBUGGING
- assert( st->next_bit_pos - start_bit_pos + rest_bits <= 0 );
-#endif
/* Store decoded data */
x[a1_i] = a;
@@ -578,9 +578,6 @@ Word16 RCcontextMapping_decode2_no_mem_s17_LCS_fx(
assert( rc_st_dec.bit_error_detected == 0 );
/* Cross-check: No overflow */
-#ifdef DEBUGGING
- assert( k == lastnz );
-#endif
/* Decode signs */
n = nt;
@@ -684,9 +681,6 @@ Word16 RCcontextMapping_decode2_no_mem_s17_LCS_fx(
move16();
/* Confirm that there is no overflow */
-#ifdef DEBUGGING
- assert( st->next_bit_pos - start_bit_pos + rest_bits <= 0 );
-#endif
/* Store decoded data */
x[k + 0] = a;
diff --git a/lib_dec/FEC_HQ_core_fx.c b/lib_dec/FEC_HQ_core_fx.c
index 641f6005913ec14383212465558f765c5cd7975c..830be54350974d88c0122f8f0d5e6c5ff5a0d62e 100644
--- a/lib_dec/FEC_HQ_core_fx.c
+++ b/lib_dec/FEC_HQ_core_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/FEC_HQ_phase_ecu_fx.c b/lib_dec/FEC_HQ_phase_ecu_fx.c
index 1a8361ecfd2bc278442faa59984ed12a3e8cbf9b..658af8f1332914fa8ff0ae7284b901086e7e86e6 100644
--- a/lib_dec/FEC_HQ_phase_ecu_fx.c
+++ b/lib_dec/FEC_HQ_phase_ecu_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/FEC_adapt_codebook_fx.c b/lib_dec/FEC_adapt_codebook_fx.c
index 5428d057beff1ae7925cc2b19b65b12d76be8500..591250bb4a1bfb637fecf4379904b1598ff29fa5 100644
--- a/lib_dec/FEC_adapt_codebook_fx.c
+++ b/lib_dec/FEC_adapt_codebook_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/FEC_clas_estim_fx.c b/lib_dec/FEC_clas_estim_fx.c
index 946f770e8f47dec5f09ef005179bd0e5f831e321..bc9108ad395f748474b83dc65a6d9d0631409e09 100644
--- a/lib_dec/FEC_clas_estim_fx.c
+++ b/lib_dec/FEC_clas_estim_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/FEC_fx.c b/lib_dec/FEC_fx.c
index 9e164827cdc12fc697304df3e62a8b35b91714b2..5c615ea44291f18d86a140e735c42c889f1c41b4 100644
--- a/lib_dec/FEC_fx.c
+++ b/lib_dec/FEC_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/FEC_lsf_estim_fx.c b/lib_dec/FEC_lsf_estim_fx.c
index ddf1f7df6fcde1af14d40dcb7448aba17bab9272..18a50658d7c29d2eb0cb6b05c12d0f516e8c0666 100644
--- a/lib_dec/FEC_lsf_estim_fx.c
+++ b/lib_dec/FEC_lsf_estim_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/FEC_pitch_estim_fx.c b/lib_dec/FEC_pitch_estim_fx.c
index 066afccf9d46d7c2f8cd86f0febf8bd626e80c58..9cd56db9e759673ed4c570aafb2a4e1e6b3081bd 100644
--- a/lib_dec/FEC_pitch_estim_fx.c
+++ b/lib_dec/FEC_pitch_estim_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/FEC_scale_syn_fx.c b/lib_dec/FEC_scale_syn_fx.c
index 32d7b569ab3b063edc3e827a3b4b9e1b5930ad9f..e57de13a9d5de97c8d2d6f81ec1a23389f839aeb 100644
--- a/lib_dec/FEC_scale_syn_fx.c
+++ b/lib_dec/FEC_scale_syn_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/LD_music_post_filter_fx.c b/lib_dec/LD_music_post_filter_fx.c
index 1fd33d11c2813f86c7214faff949bcb3c45f51ee..f5d49ee206601f84a97045c993789f32dbafd59a 100644
--- a/lib_dec/LD_music_post_filter_fx.c
+++ b/lib_dec/LD_music_post_filter_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/TonalComponentDetection_fx.c b/lib_dec/TonalComponentDetection_fx.c
index 2223bfa9cf5be67544a660dd0d6034e3a6b41576..836b803b9442ae14352ae59d6413a6c0bd0d8231 100644
--- a/lib_dec/TonalComponentDetection_fx.c
+++ b/lib_dec/TonalComponentDetection_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/acelp_core_dec_fx.c b/lib_dec/acelp_core_dec_fx.c
index 4ca6b2e8c395a6ca9ddca2dfcd3a596e1fa2ce5c..23eb7f80415ee828ce95080dcf5292ad6879e028 100644
--- a/lib_dec/acelp_core_dec_fx.c
+++ b/lib_dec/acelp_core_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_dec/acelp_core_switch_dec_fx.c b/lib_dec/acelp_core_switch_dec_fx.c
index 20343394b3addb3659657bddf57124656d621ec8..88553c232a12c50edb74b7c5088e89e9a5cda191 100644
--- a/lib_dec/acelp_core_switch_dec_fx.c
+++ b/lib_dec/acelp_core_switch_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/amr_wb_dec_fx.c b/lib_dec/amr_wb_dec_fx.c
index 1fdfe44a4d749b9fcab176963c3860d83364668f..26ba521aa40f10e31c94355046079bd016ffc6e2 100644
--- a/lib_dec/amr_wb_dec_fx.c
+++ b/lib_dec/amr_wb_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/ari_dec_fx.c b/lib_dec/ari_dec_fx.c
index 99d33cc5992403f56c750c58acec1cabc395018a..c4539370b831b8ccebe4cb8dbecc28c203c4a8ce 100644
--- a/lib_dec/ari_dec_fx.c
+++ b/lib_dec/ari_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
@@ -13,7 +16,6 @@
* Ari decode 14 bits routines
-------------------------------------------------------------*/
-#ifdef FIX_2402_SIMPLIFY_ARI_CODEC
static Word32 L_msui_32_16( Word32 cum, Word32 range, Word16 cum_freq )
{
/* WMOPS counting is done using L_sub, similar to other MSU operations */
@@ -21,15 +23,10 @@ static Word32 L_msui_32_16( Word32 cum, Word32 range, Word16 cum_freq )
/* Note: No overflow or saturation feature required. */
return L_sub( cum, range * cum_freq );
}
-#endif
Word32 ari_decode_overflow_fx( Tastat *s )
{
-#ifdef FIX_2402_SIMPLIFY_ARI_CODEC
return ( L_sub( s->high, s->low ) <= 0 );
-#else
- return ( L_sub( L_sub( s->high, 1 ), s->low ) <= 0 );
-#endif
}
/**
@@ -92,10 +89,6 @@ static Word16 ari_lookup_s17_fx(
)
{
const UWord16 *p;
-#ifndef FIX_2402_SIMPLIFY_ARI_CODEC
- Word32 tmp;
- Word16 range_l, range_h;
-#endif
p = cum_freq;
@@ -104,42 +97,6 @@ static Word16 ari_lookup_s17_fx(
/* tmp_p = p+8; if (tmp_p[0]*range>cum) p = tmp_p; */
/* max value in p[x] is 16384 => 14 bits */
-#ifndef FIX_2402_SIMPLIFY_ARI_CODEC
- range_l = extract_l( L_and( range, 0x7FFF ) );
- range_h = extract_l( L_shr( range, 15 ) );
-
- tmp = L_multi31x16_X2( range_h, range_l, p[8] );
- IF( GT_32( tmp, cum ) )
- {
- p = p + 8;
- }
-
- tmp = L_multi31x16_X2( range_h, range_l, p[4] );
- IF( GT_32( tmp, cum ) )
- {
- p = p + 4;
- }
-
-
- tmp = L_multi31x16_X2( range_h, range_l, p[2] );
- IF( GT_32( tmp, cum ) )
- {
- p = p + 2;
- }
-
- tmp = L_multi31x16_X2( range_h, range_l, p[1] );
- IF( GT_32( tmp, cum ) )
- {
- p = p + 1;
-
- tmp = L_multi31x16_X2( range_h, range_l, p[1] );
- test();
- IF( EQ_32( (Word32) ( &cum_freq[15] - p ), 0 ) && ( GT_32( tmp, cum ) ) )
- {
- p = p + 1;
- }
- }
-#else
if ( L_msui_32_16( cum, range, p[8] ) < 0 )
{
p = p + 8;
@@ -165,7 +122,6 @@ static Word16 ari_lookup_s17_fx(
move16();
}
}
-#endif
/* return extract_l(L_shr(L_sub((Word32)p,(Word32)cum_freq),1)); */
L_sub( 0, 0 );
@@ -179,99 +135,6 @@ static Word16 ari_lookup_s27_fx(
UWord16 const *cum_freq /* Q0 */
)
{
-#ifndef FIX_2402_SIMPLIFY_ARI_CODEC
- Word32 tmp;
- Word16 range_l, range_h;
- Word16 il, ih, im;
-
- /* Note: For each indirect addressing p[i], we assume a tmp pointer init followed by a costfree reading the value */
- /* If the value multiplied by range is greater than cum, the pointer p is set to the tmp pointer */
- /* tmp_p = p+8; if (tmp_p[0]*range>cum) p = tmp_p; */
-
- /* max value in p[x] is 16384 => 14 bits */
- range_l = extract_l( L_and( range, 0x7FFF ) );
- range_h = extract_l( L_shr( range, 15 ) );
-
- /* begin change when compared with ari_decode_14bits_s17_ext_fx,
- starting with line: tmp = L_multi31x16_X2(range_h, range_l, p[8]); */
- il = 0;
- move16();
- ih = 27;
- move16();
-
- /* do a five step binary search, using the interval [il, ih) */
- im = 13;
- move16(); /* (il + ih) >> 1 */
- tmp = L_multi31x16_X2( range_h, range_l, cum_freq[im] );
- tmp = L_sub( tmp, cum );
- if ( ( tmp > 0 ) )
- {
- il = im;
- move16();
- }
- if ( ( tmp <= 0 ) )
- {
- ih = im;
- move16();
- }
-
- im = shr( add( il, ih ), 1 );
- tmp = L_multi31x16_X2( range_h, range_l, cum_freq[im] );
- tmp = L_sub( tmp, cum );
- if ( tmp > 0 )
- {
- il = im;
- move16();
- }
- if ( tmp <= 0 )
- {
- ih = im;
- move16();
- }
-
- im = shr( add( il, ih ), 1 );
- tmp = L_multi31x16_X2( range_h, range_l, cum_freq[im] );
- tmp = L_sub( tmp, cum );
- if ( tmp > 0 )
- {
- il = im;
- move16();
- }
- if ( tmp <= 0 )
- {
- ih = im;
- move16();
- }
-
- im = shr( add( il, ih ), 1 );
- tmp = L_multi31x16_X2( range_h, range_l, cum_freq[im] );
- tmp = L_sub( tmp, cum );
- if ( tmp > 0 )
- {
- il = im;
- move16();
- }
- if ( tmp <= 0 )
- {
- ih = im;
- move16();
- }
-
- IF( GT_16( sub( ih, il ), 1 ) ) /* if the interval has more than one symbol */
- {
- /* here, only ih == il + 2 is possible, which means two symbols in the interval */
- im = add( il, 1 ); /* (il + ih) >> 1 */
- tmp = L_multi31x16_X2( range_h, range_l, cum_freq[im] );
- tmp = L_sub( tmp, cum );
- if ( tmp > 0 )
- {
- il = im;
- move16();
- }
- }
-
- return il;
-#else
const UWord16 *p = cum_freq;
@@ -305,7 +168,6 @@ static Word16 ari_lookup_s27_fx(
L_sub( 0, 0 );
L_shr( 0, 0 ); /* pointer subtraction */
return extract_l( p - cum_freq );
-#endif
}
static Word16 ari_lookup_bit_fx(
@@ -319,26 +181,10 @@ static Word16 ari_lookup_bit_fx(
(void) cum_freq;
-#ifndef FIX_2402_SIMPLIFY_ARI_CODEC
- range = L_shl( range, 13 ); /* L_multi31x16_X2(range_h, range_l, 8192) */
- cum = L_sub( range, cum );
-
- if ( cum > 0 )
- {
- symbol = 1;
- move16();
- }
- if ( cum <= 0 )
- {
- symbol = 0;
- move16();
- }
-#else
if ( L_msui_32_16( cum, range, 8192 ) < 0 )
{
symbol = add( symbol, 1 ); /* symbol = 1 */
}
-#endif
return symbol;
}
@@ -366,15 +212,7 @@ static Word16 ari_decode_14bits_ext_fx(
range = L_sub( high, low );
cum = L_add( L_shl( L_sub( value, low ), stat_bitsnew ), sub( shl( 1, stat_bitsnew ), 1 ) );
-#ifndef FIX_2402_SIMPLIFY_ARI_CODEC
- if ( cum < 0 )
- {
- cum = 0x7fffffff;
- move32();
- }
-#else
assert( cum >= 0 );
-#endif
symbol = lookup_fn( cum, range, cum_freq );
@@ -446,9 +284,6 @@ static Word16 ari_lookup_pow_fx( Tastat *s, Word16 base )
{
Word32 cum, range;
Word16 symbol;
-#ifndef FIX_2402_SIMPLIFY_ARI_CODEC
- Word16 range_h, range_l;
-#endif
Word16 pows[12]; /* "base" to the power of 2, 4, 8,... 2^12 */
Word16 lowlim, highlim, testval;
Word16 k;
@@ -456,10 +291,6 @@ static Word16 ari_lookup_pow_fx( Tastat *s, Word16 base )
range = L_sub( s->high, s->low );
cum = L_add( L_shl( L_sub( s->value, s->low ), stat_bitsnew ), ( ( 1 << stat_bitsnew ) - 1 ) );
-#ifndef FIX_2402_SIMPLIFY_ARI_CODEC
- range_h = extract_l( L_shr( range, 15 ) );
- range_l = extract_l( L_and( range, 0x7FFF ) );
-#endif
symbol = 0;
move16();
@@ -468,11 +299,7 @@ static Word16 ari_lookup_pow_fx( Tastat *s, Word16 base )
move16();
/* search for the interval where "cum" fits */
-#ifdef FIX_2402_SIMPLIFY_ARI_CODEC
IF( L_msui_32_16( cum, range, lowlim ) < 0 ) /* below pow-1 */
-#else
- IF( GT_32( L_multi31x16_X2( range_h, range_l, lowlim ), cum ) ) /* below pow-1 */
-#endif
{
pows[0] = base;
move16();
@@ -487,11 +314,7 @@ static Word16 ari_lookup_pow_fx( Tastat *s, Word16 base )
move16();
testval = mult_r( pows[k], base );
-#ifdef FIX_2402_SIMPLIFY_ARI_CODEC
IF( L_msui_32_16( cum, range, shr( testval, 1 ) ) >= 0 )
-#else
- IF( LE_32( L_multi31x16_X2( range_h, range_l, shr( testval, 1 ) ), cum ) ) /* found! big range is [lowlim,testval], (now narrow it down) */
-#endif
{
lowlim = testval;
move16();
@@ -507,11 +330,7 @@ static Word16 ari_lookup_pow_fx( Tastat *s, Word16 base )
{
testval = mult_r( highlim, pows[k + 1] );
-#ifdef FIX_2402_SIMPLIFY_ARI_CODEC
IF( L_msui_32_16( cum, range, shr( testval, 1 ) ) >= 0 )
-#else
- IF( LE_32( L_multi31x16_X2( range_h, range_l, shr( testval, 1 ) ), cum ) )
-#endif
{
lowlim = testval;
move16();
diff --git a/lib_dec/ari_hm_dec_fx.c b/lib_dec/ari_hm_dec_fx.c
index 2d02da71a8655d9ed77242dcf112ac90968bf1b9..9ceb813ceb6db3b25078bf9e20cb3803c559c6f9 100644
--- a/lib_dec/ari_hm_dec_fx.c
+++ b/lib_dec/ari_hm_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_dec/arith_coder_dec_fx.c b/lib_dec/arith_coder_dec_fx.c
index 3ac4963c0e31df182d139bf30e31e674e24d990c..c2faea368bf16bada83bf7ed9dade695c1552cd6 100644
--- a/lib_dec/arith_coder_dec_fx.c
+++ b/lib_dec/arith_coder_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/avq_dec_fx.c b/lib_dec/avq_dec_fx.c
index 4e4735b8336dfb321e7cfa1345ac72ed332711d8..6899171154e1b9a45d9afdadfed32a5f22edec66 100644
--- a/lib_dec/avq_dec_fx.c
+++ b/lib_dec/avq_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/bass_psfilter_fx.c b/lib_dec/bass_psfilter_fx.c
index d2558f47c1f1bc9a5ff1b5dca78acb5763eeff17..cbfd28f979924cebaef89138450ff437927f4082 100644
--- a/lib_dec/bass_psfilter_fx.c
+++ b/lib_dec/bass_psfilter_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/cng_dec_fx.c b/lib_dec/cng_dec_fx.c
index 56d2bd29c3e33ac9724922d7936ab0c301c0c909..d49b4270d85a558feab0580cd89ee0ac8217288f 100644
--- a/lib_dec/cng_dec_fx.c
+++ b/lib_dec/cng_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/core_dec_init_fx.c b/lib_dec/core_dec_init_fx.c
index dbffbcc02e8d2f4e0eea3c4a974039ceba8118e7..652fcc4f72c3220b7b79f136e5fb8cd8faa088d0 100644
--- a/lib_dec/core_dec_init_fx.c
+++ b/lib_dec/core_dec_init_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/core_dec_reconf_fx.c b/lib_dec/core_dec_reconf_fx.c
index d844e666b1b6bcec91a7bc17b6496825a0867360..7ba900c3f8ce92d0be08712898232b84d81c0c9e 100644
--- a/lib_dec/core_dec_reconf_fx.c
+++ b/lib_dec/core_dec_reconf_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/core_dec_switch_fx.c b/lib_dec/core_dec_switch_fx.c
index a9d9d24d7d8eee81332d99d00a8bd2e558b173f8..c8d1aed1fbbcef0b2acc68d9b98e7bc0a035f8c9 100644
--- a/lib_dec/core_dec_switch_fx.c
+++ b/lib_dec/core_dec_switch_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/core_switching_dec_fx.c b/lib_dec/core_switching_dec_fx.c
index 7fa00ef857eb960f517cdd8cd95bfb837266b9ed..0e1b9bf87187c98296a4ed260480d60818fede2e 100644
--- a/lib_dec/core_switching_dec_fx.c
+++ b/lib_dec/core_switching_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/d_gain2p_fx.c b/lib_dec/d_gain2p_fx.c
index c9a35c181692332fca1e9078f4f584dc7a0a28d4..8da61e847a5a892f653279b4528bd24c84dd78bb 100644
--- a/lib_dec/d_gain2p_fx.c
+++ b/lib_dec/d_gain2p_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/dec2t32_fx.c b/lib_dec/dec2t32_fx.c
index 77ded3a34da5976e506f7e771c248f70def3edf2..266ff67ca888abd8f9a913034e9496ced9ca2745 100644
--- a/lib_dec/dec2t32_fx.c
+++ b/lib_dec/dec2t32_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/dec4t64_fx.c b/lib_dec/dec4t64_fx.c
index 062157dca37009729e075ec50cb67c91981b56f3..6b422500ffa7ba1f0cb337c7bc398589fda0918e 100644
--- a/lib_dec/dec4t64_fx.c
+++ b/lib_dec/dec4t64_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/dec_LPD_fx.c b/lib_dec/dec_LPD_fx.c
index 5b1a13023474d2137853e702cef1b38354a3027f..68cc47a47c3940290000fedcf38f7f29f2101dce 100644
--- a/lib_dec/dec_LPD_fx.c
+++ b/lib_dec/dec_LPD_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/dec_ace_fx.c b/lib_dec/dec_ace_fx.c
index 515251e7f4a90320f99b445b525afa91016f8e75..9ed0dbc07bc3d83beb8912b092ab55f31c3a313b 100644
--- a/lib_dec/dec_ace_fx.c
+++ b/lib_dec/dec_ace_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/dec_acelp_fx.c b/lib_dec/dec_acelp_fx.c
index c07ba25a64db73f54e71cdf00458f31cd56c889e..d2515933d5df8a23f0a9affb833e09000f3837e9 100644
--- a/lib_dec/dec_acelp_fx.c
+++ b/lib_dec/dec_acelp_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/dec_acelp_tcx_main_fx.c b/lib_dec/dec_acelp_tcx_main_fx.c
index dfeb3773a8eef8779e63d256e0c3cc9ff4b66416..771ea3d2856a2acc65332140627b042b90bcd939 100644
--- a/lib_dec/dec_acelp_tcx_main_fx.c
+++ b/lib_dec/dec_acelp_tcx_main_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/dec_amr_wb_fx.c b/lib_dec/dec_amr_wb_fx.c
index af6c706f707b26fa9080b21007ba168478c7c1cc..1c680876f88c8432471ced231c8bbf714d50a12a 100644
--- a/lib_dec/dec_amr_wb_fx.c
+++ b/lib_dec/dec_amr_wb_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/dec_gen_voic_fx.c b/lib_dec/dec_gen_voic_fx.c
index e1a3917df5d5f1e1885f1db2cc5c36e825e02ab5..f16bb972078c994789b0dcfc29c116dbec97bd8a 100644
--- a/lib_dec/dec_gen_voic_fx.c
+++ b/lib_dec/dec_gen_voic_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/dec_higher_acelp_fx.c b/lib_dec/dec_higher_acelp_fx.c
index 842749fa411665f0da5ffffda9c534e278ce87cf..1597276aa1b0c909ddea0cf72364d4aafeba1986 100644
--- a/lib_dec/dec_higher_acelp_fx.c
+++ b/lib_dec/dec_higher_acelp_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/dec_nelp_fx.c b/lib_dec/dec_nelp_fx.c
index 130b486ac70addbec3b8f18b9c6d35b67791e210..4ef7b301d00d51d6584688e9e660774bfee4f93b 100644
--- a/lib_dec/dec_nelp_fx.c
+++ b/lib_dec/dec_nelp_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/dec_pit_exc_fx.c b/lib_dec/dec_pit_exc_fx.c
index 83818d1c9aae785f8534622fa770f1b6dc283cc1..9e9d10bd6acc94beadd4ffda9d09787fd91748a5 100644
--- a/lib_dec/dec_pit_exc_fx.c
+++ b/lib_dec/dec_pit_exc_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/dec_post_fx.c b/lib_dec/dec_post_fx.c
index 829005b0a27e59cc76ade322fde9f508af3909cc..f79507ba2ff917b6e72e70b9af59893375a4723c 100644
--- a/lib_dec/dec_post_fx.c
+++ b/lib_dec/dec_post_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/dec_ppp_fx.c b/lib_dec/dec_ppp_fx.c
index 37277b06fce12d2060d84f1abbe99342cdb8e94b..09705a94355cc988ed8c3842920e256c09c8ab2f 100644
--- a/lib_dec/dec_ppp_fx.c
+++ b/lib_dec/dec_ppp_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/dec_prm_fx.c b/lib_dec/dec_prm_fx.c
index 5da9b6f1a91cc8f5aa2c84684bf2271f2ff1bb70..f24c16a64144530f71b2889cd2afa4aee2e752fc 100644
--- a/lib_dec/dec_prm_fx.c
+++ b/lib_dec/dec_prm_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/dec_tcx_fx.c b/lib_dec/dec_tcx_fx.c
index f48ae67d8fb56077e52e7746db9bc90b1e64b5a0..7a38c24f74ffefe30ada4c689efaf62ba21a576d 100644
--- a/lib_dec/dec_tcx_fx.c
+++ b/lib_dec/dec_tcx_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/dec_tran_fx.c b/lib_dec/dec_tran_fx.c
index 20d5f4b22bfec94ffa76a46023927e9d4511f8bc..4d718a94a9f048c53bf81294f5444ffb4234c9e7 100644
--- a/lib_dec/dec_tran_fx.c
+++ b/lib_dec/dec_tran_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/dec_uv_fx.c b/lib_dec/dec_uv_fx.c
index a2d59c08ab6f35b3d19e10ae8c85e6d38d278040..28aa92c4b93f2112ff6aac18e4c7a31e012597d7 100644
--- a/lib_dec/dec_uv_fx.c
+++ b/lib_dec/dec_uv_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/decision_matrix_dec_fx.c b/lib_dec/decision_matrix_dec_fx.c
index 055f1325f884406f175cbf35e8ecc5d54ef82375..433ddb9f9877fc37059ec17d49bab30c5e2d7ec3 100644
--- a/lib_dec/decision_matrix_dec_fx.c
+++ b/lib_dec/decision_matrix_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/dlpc_avq_fx.c b/lib_dec/dlpc_avq_fx.c
index 9080fd5aa2693b1a960bedf79275a55cd42b6be2..1e19a63c2f48043463159a35e876586f346e6af5 100644
--- a/lib_dec/dlpc_avq_fx.c
+++ b/lib_dec/dlpc_avq_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/dlpc_stoch_fx.c b/lib_dec/dlpc_stoch_fx.c
index 7a5175fb857c49f66b166f2a4c6d1e3f567fd65e..a45da9e1ed3a85bc9c3d7aa2f2dda0fabc6f3eea 100644
--- a/lib_dec/dlpc_stoch_fx.c
+++ b/lib_dec/dlpc_stoch_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/er_dec_acelp_fx.c b/lib_dec/er_dec_acelp_fx.c
index 06e14650431b03a5e7fbc3e133b918e4a3119d9b..e9eace92a0c6180e929ab6da0f9f76ce6355a74a 100644
--- a/lib_dec/er_dec_acelp_fx.c
+++ b/lib_dec/er_dec_acelp_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/er_dec_tcx_fx.c b/lib_dec/er_dec_tcx_fx.c
index b6f5823c3e036d5a3707e6d9b7e79fcec5285a88..39a33f2e3d16161026ee5a975d0110cbd8098b86 100644
--- a/lib_dec/er_dec_tcx_fx.c
+++ b/lib_dec/er_dec_tcx_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/er_scale_syn_fx.c b/lib_dec/er_scale_syn_fx.c
index efe8aa965db7cba30a334469326fa52d453b8cc2..7de1fcf0899be829f233d1c60889ad466eedf6a2 100644
--- a/lib_dec/er_scale_syn_fx.c
+++ b/lib_dec/er_scale_syn_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/er_sync_exc_fx.c b/lib_dec/er_sync_exc_fx.c
index 22224f35e2971f2f6f73905f26500b318529b930..91d401c096babf7df2401a246f82318d536a7794 100644
--- a/lib_dec/er_sync_exc_fx.c
+++ b/lib_dec/er_sync_exc_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/er_util_fx.c b/lib_dec/er_util_fx.c
index 78fb12f10095dd70f6b23e325da6114d6ddc5248..4f44c6adfecaf102b8f23c61f3e26814250a5f10 100644
--- a/lib_dec/er_util_fx.c
+++ b/lib_dec/er_util_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/evs_dec_fx.c b/lib_dec/evs_dec_fx.c
index add3a07c325f324e755746fcd5a0cadee4832812..c835050b511f00ebaeaf414eee97fdc7218194a9 100644
--- a/lib_dec/evs_dec_fx.c
+++ b/lib_dec/evs_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/fd_cng_dec_fx.c b/lib_dec/fd_cng_dec_fx.c
index 3aa0562c3437e851e99fcc6ccea0e7064b062ba3..cd207ff4094b6f3dd324b2044a978661116ab5a4 100644
--- a/lib_dec/fd_cng_dec_fx.c
+++ b/lib_dec/fd_cng_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
@@ -19,9 +22,6 @@
#include "basop_util.h"
#include "rom_basop_util.h"
#include "ivas_rom_dec.h"
-#ifdef DEBUGGING
-#include "debug.h"
-#endif
#define CNA_ACT_DN_LARGE_PARTITION 50 /* index of the first larger partition */
@@ -3923,9 +3923,7 @@ void configureFdCngDec_fx(
{
Word16 j, stopBandFR;
HANDLE_FD_CNG_COM hsCom = hFdCngDec->hFdCngCom;
-#ifdef FIX_1559
Word16 nFFTpart_prev;
-#endif
hsCom->CngBandwidth = bwidth; /*Q0*/
move16();
@@ -4060,10 +4058,8 @@ void configureFdCngDec_fx(
hsCom->stopBand = add( hsCom->FdCngSetup.sidPartitions[( hsCom->FdCngSetup.numPartitions - 1 )], 1 ); /*Q0*/
initPartitions( hsCom->FdCngSetup.sidPartitions, hsCom->FdCngSetup.numPartitions, hsCom->startBand, hsCom->stopBand, hsCom->part, &hsCom->npart, hsCom->midband, hsCom->psize, hsCom->psize_norm, &hsCom->psize_norm_exp, hsCom->psize_inv, 0 );
-#ifdef FIX_1559
nFFTpart_prev = hsCom->nFFTpart;
move16();
-#endif
IF( EQ_16( hsCom->stopFFTbin, 160 ) )
{
hsCom->nFFTpart = 17;
@@ -4089,7 +4085,6 @@ void configureFdCngDec_fx(
move16();
}
-#ifdef FIX_1559
/* In case of going from a lower number of partitions to a higher number, initialize
the higher ines which might be zero and/or outdated with the highest partitions value
this avoids almost-zero values to linger around and causing signal bursts after switching to higher bitrate.
@@ -4102,7 +4097,6 @@ void configureFdCngDec_fx(
move16();
}
}
-#endif
stopBandFR = 40; //(Word16)floor(1000.f /*Hz*/ / 25.f /*Hz/Bin*/);
move16();
diff --git a/lib_dec/gain_dec_fx.c b/lib_dec/gain_dec_fx.c
index 90d065b0a9f45b5e3a40297e386c0761eb49206a..b16c94891d61acde047d39983525baea57b05549 100644
--- a/lib_dec/gain_dec_fx.c
+++ b/lib_dec/gain_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/gaus_dec_fx.c b/lib_dec/gaus_dec_fx.c
index 4fcbaf5148a8af7830803c6d1346748690aae7d6..5527125080905109b4181901de6544f9a0dd9579 100644
--- a/lib_dec/gaus_dec_fx.c
+++ b/lib_dec/gaus_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/gs_dec_amr_wb_fx.c b/lib_dec/gs_dec_amr_wb_fx.c
index 49ba5a85c2c0b480853ce342fbf5ff419e13ebea..56914b0c5e222b8668e7de53ea032ea9eacd18be 100644
--- a/lib_dec/gs_dec_amr_wb_fx.c
+++ b/lib_dec/gs_dec_amr_wb_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/gs_dec_fx.c b/lib_dec/gs_dec_fx.c
index eb9845dc8f3c9e8d4088ac77187d040529f681f2..e9156ed1bb36429df0c96e922bb1f923039ae01b 100644
--- a/lib_dec/gs_dec_fx.c
+++ b/lib_dec/gs_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/hdecnrm_fx.c b/lib_dec/hdecnrm_fx.c
index 2efea77b0c58de186f43de7ca73af3df8a88e3b7..0c195766afea73d33cf5a4657c6aee6f80d99e84 100644
--- a/lib_dec/hdecnrm_fx.c
+++ b/lib_dec/hdecnrm_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/hf_synth_fx.c b/lib_dec/hf_synth_fx.c
index f2be9219ded15eccf1a30b5b69fc241aa738f919..ec83f32a61b45d7f3ca6fc3afec87d3bfc738379 100644
--- a/lib_dec/hf_synth_fx.c
+++ b/lib_dec/hf_synth_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/hq_classifier_dec_fx.c b/lib_dec/hq_classifier_dec_fx.c
index d00426514385b10cd1603189636b16362d919ea3..abc5591d77b65e736ecdb27b8b643333075976fe 100644
--- a/lib_dec/hq_classifier_dec_fx.c
+++ b/lib_dec/hq_classifier_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/hq_conf_fec_fx.c b/lib_dec/hq_conf_fec_fx.c
index 55c8bb8a0fe2fb4eaa0725531ba05bb89248dfdd..2256b18a13ff1b18f8e50161a5ee770ffc5abdf9 100644
--- a/lib_dec/hq_conf_fec_fx.c
+++ b/lib_dec/hq_conf_fec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/hq_core_dec_fx.c b/lib_dec/hq_core_dec_fx.c
index 644b8b370ad7e61ffc7a35862e088c63406171d5..f696a2397f0cd9fad90c35bc70e7eee76a0f183c 100644
--- a/lib_dec/hq_core_dec_fx.c
+++ b/lib_dec/hq_core_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/hq_env_dec_fx.c b/lib_dec/hq_env_dec_fx.c
index c00b7711d744a181a67d8f39de9df61b7badf672..da4c3a9ea20ca70cf800802c74b8d08614be5fe8 100644
--- a/lib_dec/hq_env_dec_fx.c
+++ b/lib_dec/hq_env_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/hq_hr_dec_fx.c b/lib_dec/hq_hr_dec_fx.c
index 0c9fb88d6b802d346ee07ecbf1a17a4277579938..c8bb91a8175874509ba57aab88d5bf1c68ec9939 100644
--- a/lib_dec/hq_hr_dec_fx.c
+++ b/lib_dec/hq_hr_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/hq_lr_dec_fx.c b/lib_dec/hq_lr_dec_fx.c
index 7ec1d15db8f0c23719b047d6ddce8b52e86d542d..04fb99dc50daa99a449f4ab3b2fc00b837986a11 100644
--- a/lib_dec/hq_lr_dec_fx.c
+++ b/lib_dec/hq_lr_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/igf_dec_fx.c b/lib_dec/igf_dec_fx.c
index 06bdba2d819c13bacdf70e6464197e909c29e757..bdfd54bd30878de0abaf2126ed10af839d5cd057 100644
--- a/lib_dec/igf_dec_fx.c
+++ b/lib_dec/igf_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/igf_scf_dec_fx.c b/lib_dec/igf_scf_dec_fx.c
index 71a4b1e7720bd2cc0116d6710073a98b425af384..657b23b3d7e343299551163085821db0355ef668 100644
--- a/lib_dec/igf_scf_dec_fx.c
+++ b/lib_dec/igf_scf_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/init_dec_fx.c b/lib_dec/init_dec_fx.c
index 9ab72547bb6918c76b1b55aceb2e1dfca2260996..1f8dec22967c99753d8a7c5e750c47e7ce8f64f1 100644
--- a/lib_dec/init_dec_fx.c
+++ b/lib_dec/init_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_dec/inov_dec_fx.c b/lib_dec/inov_dec_fx.c
index 21e70e083045a138a72ac4a8a909e9654abe63c4..dba07044f7244d03d2fc5d21f872f4a96f23ffd5 100644
--- a/lib_dec/inov_dec_fx.c
+++ b/lib_dec/inov_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/ivas_agc_dec_fx.c b/lib_dec/ivas_agc_dec_fx.c
index c091579e49590469de74283c12003cf0f948e3fa..703798bd702e2a9466fd3e40d9676c09307f30f8 100644
--- a/lib_dec/ivas_agc_dec_fx.c
+++ b/lib_dec/ivas_agc_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
diff --git a/lib_dec/ivas_core_dec_fx.c b/lib_dec/ivas_core_dec_fx.c
index 06ae20608b82181b76d4c810bcc7be040174b1c8..66e0c412ce380d60d2dafba949a8c43c5b2eefa1 100644
--- a/lib_dec/ivas_core_dec_fx.c
+++ b/lib_dec/ivas_core_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_dec/ivas_corecoder_dec_reconfig_fx.c b/lib_dec/ivas_corecoder_dec_reconfig_fx.c
index 670f559d242e2c27b59a9a43d53d832d9817b8d9..948aa52b84d977b01e5ea9744370389b07cda8b9 100644
--- a/lib_dec/ivas_corecoder_dec_reconfig_fx.c
+++ b/lib_dec/ivas_corecoder_dec_reconfig_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include "options.h"
#include "ivas_cnst.h"
@@ -477,9 +449,6 @@ ivas_error ivas_hp20_dec_reconfig_fx(
)
{
Word16 i, nchan_hp20;
-#ifndef FIX_1585_ASAN_FORMAT_SW_ALT
- Word32 **old_mem_hp20_out_fx;
-#endif
ivas_error error;
error = IVAS_ERR_OK;
@@ -493,7 +462,6 @@ ivas_error ivas_hp20_dec_reconfig_fx(
IF( GT_16( nchan_hp20, nchan_hp20_old ) )
{
-#ifdef FIX_1585_ASAN_FORMAT_SW_ALT
/* create additional hp20 memories */
FOR( i = nchan_hp20_old; i < nchan_hp20; i++ )
{
@@ -504,72 +472,15 @@ ivas_error ivas_hp20_dec_reconfig_fx(
set32_fx( st_ivas->mem_hp20_out_fx[i], 0, L_HP20_MEM + 2 );
}
-#else
- /* save old mem_hp_20 pointer */
- old_mem_hp20_out_fx = st_ivas->mem_hp20_out_fx;
- st_ivas->mem_hp20_out_fx = NULL;
-
- IF( ( st_ivas->mem_hp20_out_fx = (Word32 **) malloc( nchan_hp20 * sizeof( Word32 * ) ) ) == NULL )
- {
- return ( IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for HP20 filter memory\n" ) );
- }
-
- FOR( i = 0; i < nchan_hp20_old; i++ )
- {
- st_ivas->mem_hp20_out_fx[i] = old_mem_hp20_out_fx[i];
- move32();
- old_mem_hp20_out_fx[i] = NULL;
- }
- /* create additional hp20 memories */
- FOR( ; i < nchan_hp20; i++ )
- {
- IF( ( st_ivas->mem_hp20_out_fx[i] = (Word32 *) malloc( ( L_HP20_MEM + 2 ) * sizeof( Word32 ) ) ) == NULL )
- {
- return ( IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for HP20 filter memory\n" ) );
- }
-
- set32_fx( st_ivas->mem_hp20_out_fx[i], 0, L_HP20_MEM + 2 );
- }
-
- free( old_mem_hp20_out_fx );
- old_mem_hp20_out_fx = NULL;
-#endif
}
ELSE IF( LT_16( nchan_hp20, nchan_hp20_old ) )
{
-#ifdef FIX_1585_ASAN_FORMAT_SW_ALT
/* remove superfluous hp20 memories */
FOR( i = nchan_hp20; i < nchan_hp20_old; i++ )
{
free( st_ivas->mem_hp20_out_fx[i] );
st_ivas->mem_hp20_out_fx[i] = NULL;
}
-#else
- /* save old mem_hp_20 pointer */
- old_mem_hp20_out_fx = st_ivas->mem_hp20_out_fx;
- st_ivas->mem_hp20_out_fx = NULL;
-
- IF( ( st_ivas->mem_hp20_out_fx = (Word32 **) malloc( nchan_hp20 * sizeof( Word32 * ) ) ) == NULL )
- {
- return ( IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for HP20 filter memory\n" ) );
- }
-
- FOR( i = 0; i < nchan_hp20; i++ )
- {
- st_ivas->mem_hp20_out_fx[i] = old_mem_hp20_out_fx[i];
- move32();
- old_mem_hp20_out_fx[i] = NULL;
- }
- /* remove superfluous hp20 memories */
- FOR( ; i < nchan_hp20_old; i++ )
- {
- free( old_mem_hp20_out_fx[i] );
- old_mem_hp20_out_fx[i] = NULL;
- }
-
- free( old_mem_hp20_out_fx );
- old_mem_hp20_out_fx = NULL;
-#endif
}
return error;
diff --git a/lib_dec/ivas_cpe_dec_fx.c b/lib_dec/ivas_cpe_dec_fx.c
index 9db1333c4eddb5c4bc1639c7c349c6c57a1b37b6..14a0bd4504159189db03ba808cde9dd1c613fee9 100644
--- a/lib_dec/ivas_cpe_dec_fx.c
+++ b/lib_dec/ivas_cpe_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
diff --git a/lib_dec/ivas_dec_fx.c b/lib_dec/ivas_dec_fx.c
index e668248199381fba809d1880c60a5b9a12aa6d5b..4de4fea6f9517bc66e7d9f71fa6ec413c2cfd68b 100644
--- a/lib_dec/ivas_dec_fx.c
+++ b/lib_dec/ivas_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
@@ -38,9 +10,6 @@
#include "ivas_prot_rend_fx.h"
#include "ivas_rom_com.h"
#include "wmc_auto.h"
-#ifdef DEBUGGING
-#include "debug.h"
-#endif
/*--------------------------------------------------------------------------*
diff --git a/lib_dec/ivas_dec_render_fx.c b/lib_dec/ivas_dec_render_fx.c
index edfb1a83e59cab81bf14a29c2109df6beae38412..96a916ffcb3183871d57b88f2b330053f427258b 100644
--- a/lib_dec/ivas_dec_render_fx.c
+++ b/lib_dec/ivas_dec_render_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
@@ -38,9 +10,6 @@
#include "ivas_prot_rend_fx.h"
#include "ivas_rom_com.h"
#include "wmc_auto.h"
-#ifdef DEBUGGING
-#include "debug.h"
-#endif
/*-----------------------------------------------------------------------*
@@ -327,11 +296,7 @@ ivas_error ivas_dec_render_fx(
{
ivas_apply_non_diegetic_panning_fx( p_tc_fx[0], p_output_fx, st_ivas->hDecoderConfig->non_diegetic_pan_gain_fx, *nSamplesRendered );
}
-#ifdef DEBUGGING
- ELSE IF( EQ_32( st_ivas->renderer_type, RENDERER_SBA_LINEAR_ENC ) || EQ_32( st_ivas->renderer_type, RENDERER_BINAURAL_FASTCONV ) )
-#else
ELSE IF( EQ_32( st_ivas->renderer_type, RENDERER_SBA_LINEAR_ENC ) )
-#endif
{
/* Convert to Ambisonics */
FOR( i = 0; i < st_ivas->nchan_transport; i++ )
@@ -934,13 +899,11 @@ ivas_error ivas_dec_render_fx(
ivas_TD_RINGBUF_PushChannels( st_ivas->hSplitBinRend->hMultiBinTdData, p_output_fx_const, *nSamplesRendered );
}
-#ifdef TMP_1342_WORKAROUND_DEC_FLUSH_BROKEN_IN_SR
if ( st_ivas->flushing )
{
nchan_out_syn_output = BINAURAL_CHANNELS;
move16();
}
-#endif
}
ELSE
{
@@ -952,9 +915,7 @@ ivas_error ivas_dec_render_fx(
{
IF( NE_32( st_ivas->ivas_format, MONO_FORMAT ) )
{
-#ifndef DISABLE_LIMITER
ivas_limiter_dec_fx( st_ivas->hLimiter, p_output_fx, nchan_out, *nSamplesRendered, st_ivas->BER_detect, output_q_factor );
-#endif
}
}
@@ -1336,7 +1297,6 @@ ivas_error ivas_jbm_dec_flush_renderer_fx(
{
IF( NE_16( st_ivas->ivas_format, MONO_FORMAT ) )
{
-#ifndef DISABLE_LIMITER
Word16 exp = 11;
move16();
FOR( ch_idx = 0; ch_idx < MAX_OUTPUT_CHANNELS + MAX_NUM_OBJECTS; ch_idx++ )
@@ -1344,7 +1304,6 @@ ivas_error ivas_jbm_dec_flush_renderer_fx(
p_output_fx[ch_idx] = st_ivas->p_output_fx[ch_idx];
}
ivas_limiter_dec_fx( st_ivas->hLimiter, p_output_fx, st_ivas->hDecoderConfig->nchan_out, *nSamplesRendered, st_ivas->BER_detect, exp );
-#endif
}
}
@@ -1697,9 +1656,6 @@ static void ivas_dec_tc_buffer_playout_fx(
slots_to_render = sub( slots_to_render, hTcBuffer->subframe_nbslots[last_sf] );
last_sf = add( last_sf, 1 );
}
-#ifdef DEBUGGING
- assert( slots_to_render == 0 );
-#endif
FOR( ch_idx = 0; ch_idx < hTcBuffer->nchan_transport_rend; ch_idx++ )
{
diff --git a/lib_dec/ivas_decision_matrix_dec_fx.c b/lib_dec/ivas_decision_matrix_dec_fx.c
index 06f11158acfd8fa947a04f850f59b01ee723d2d4..769053f023729458565aaf1b0a581fda08bc1af4 100644
--- a/lib_dec/ivas_decision_matrix_dec_fx.c
+++ b/lib_dec/ivas_decision_matrix_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_dec/ivas_dirac_dec_fx.c b/lib_dec/ivas_dirac_dec_fx.c
index 23e90009be5fd87a89a0fa4aca59879f6463f352..56ed03dcab654605dbc32836e8752a926bd7c5d1 100644
--- a/lib_dec/ivas_dirac_dec_fx.c
+++ b/lib_dec/ivas_dirac_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
@@ -364,11 +336,7 @@ static ivas_error ivas_dirac_rend_config_fx(
return ( IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for DirAC\n" ) );
}
}
-#ifdef FIX_FLOAT_1578_OMASA_REND_SPIKES
ivas_masa_init_stereotype_detection_fx( hDirACRend->masa_stereo_type_detect, ivas_total_brate );
-#else
- ivas_masa_init_stereotype_detection_fx( hDirACRend->masa_stereo_type_detect );
-#endif
}
ELSE
{
@@ -2179,9 +2147,6 @@ static void binRenderer_split_fx(
/* Perform binaural rendering */
ivas_binRenderer_fx( hBinRenderer, &hSplitBinRend->splitrend.multiBinPoseData, hCombinedOrientationData, numTimeSlots,
-#ifdef SPLIT_REND_WITH_HEAD_ROT_DEBUG
- NULL,
-#endif
Cldfb_RealBuffer_Binaural_loc, Cldfb_ImagBuffer_Binaural_loc, RealBuffer_fx, ImagBuffer_fx, &input_q );
FOR( slot_idx = 0; slot_idx < numTimeSlots; slot_idx++ )
@@ -2229,9 +2194,6 @@ static void binRenderer_fx(
/* Perform binaural rendering */
ivas_binRenderer_fx( hBinRenderer, NULL, hCombinedOrientationData, numTimeSlots,
-#ifdef SPLIT_REND_WITH_HEAD_ROT_DEBUG
- NULL,
-#endif
Cldfb_RealBuffer_Binaural_fx, Cldfb_ImagBuffer_Binaural_fx, RealBuffer_fx, ImagBuffer_fx, &input_q );
return;
diff --git a/lib_dec/ivas_dirac_output_synthesis_cov_fx.c b/lib_dec/ivas_dirac_output_synthesis_cov_fx.c
index 86035f089a8d90c46cd87159a41775d819ba2e2e..5fc253ab7c924cf2c1908b01c86ce509d3efca94 100644
--- a/lib_dec/ivas_dirac_output_synthesis_cov_fx.c
+++ b/lib_dec/ivas_dirac_output_synthesis_cov_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include "basop_util.h"
#include "enh32.h"
diff --git a/lib_dec/ivas_entropy_decoder_fx.c b/lib_dec/ivas_entropy_decoder_fx.c
index ea350ff4a1f1996fb1a4101c9818bbf06f5e5bd6..fdd91221470ab2da46d56255c839ae37521c567c 100644
--- a/lib_dec/ivas_entropy_decoder_fx.c
+++ b/lib_dec/ivas_entropy_decoder_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_dec/ivas_init_dec_fx.c b/lib_dec/ivas_init_dec_fx.c
index b203370c833a327322721c2a2c41edc73687e038..8166179aa54c867ab16232993d81b6b1bd6c163c 100644
--- a/lib_dec/ivas_init_dec_fx.c
+++ b/lib_dec/ivas_init_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
@@ -108,9 +80,6 @@ ivas_error ivas_dec_get_format_fx(
Word16 nchan_ism, element_mode_flag;
Word16 sba_order, sba_planar, sba_analysis_order;
Word32 ivas_total_brate;
-#ifndef FIX_FLOAT_1539_G192_FORMAT_SWITCH
- Word16 Opt_tsm;
-#endif
UWord16 *bit_stream_orig;
AUDIO_CONFIG signaled_config;
ivas_error error;
@@ -122,10 +91,6 @@ ivas_error ivas_dec_get_format_fx(
ivas_total_brate = st_ivas->hDecoderConfig->ivas_total_brate;
move32();
-#ifndef FIX_FLOAT_1539_G192_FORMAT_SWITCH
- Opt_tsm = st_ivas->hDecoderConfig->Opt_tsm;
- move16();
-#endif
bit_stream_orig = st_ivas->bit_stream;
/*-------------------------------------------------------------------*
@@ -146,24 +111,10 @@ ivas_error ivas_dec_get_format_fx(
!( EQ_32( st_ivas->ivas_format, MASA_FORMAT ) && EQ_32( st_ivas->last_ivas_format, MASA_ISM_FORMAT ) ) &&
!( EQ_32( st_ivas->ivas_format, MASA_ISM_FORMAT ) && EQ_32( st_ivas->last_ivas_format, MASA_FORMAT ) ) )
{
-#ifndef FIX_FLOAT_1539_G192_FORMAT_SWITCH
- IF( Opt_tsm )
- {
-#endif
- st_ivas->restartNeeded = 1;
- move16();
+ st_ivas->restartNeeded = 1;
+ move16();
- return IVAS_ERR_OK;
-#ifndef FIX_FLOAT_1539_G192_FORMAT_SWITCH
- }
- ELSE
- {
-#ifdef DEBUGGING
- fprintf( stderr, "\nError: Changing the number of ISMs is not supported!\n" );
-#endif
- return IVAS_ERROR( IVAS_ERR_INTERNAL_FATAL, "Wrong number of objects signalled!" );
- }
-#endif
+ return IVAS_ERR_OK;
}
/*-------------------------------------------------------------------*
@@ -201,24 +152,10 @@ ivas_error ivas_dec_get_format_fx(
test();
IF( st_ivas->ini_frame > 0 && NE_16( nchan_ism, st_ivas->nchan_ism ) )
{
-#ifndef FIX_FLOAT_1539_G192_FORMAT_SWITCH
- IF( Opt_tsm )
- {
-#endif
- st_ivas->restartNeeded = 1;
- move16();
+ st_ivas->restartNeeded = 1;
+ move16();
- return IVAS_ERR_OK;
-#ifndef FIX_FLOAT_1539_G192_FORMAT_SWITCH
- }
- ELSE
- {
-#ifdef DEBUGGING
- fprintf( stderr, "\nError: Changing the number of ISMs is not supported!\n" );
-#endif
- return IVAS_ERROR( IVAS_ERR_INTERNAL_FATAL, "Wrong number of objects signalled!" );
- }
-#endif
+ return IVAS_ERR_OK;
}
st_ivas->nchan_ism = nchan_ism;
@@ -242,24 +179,10 @@ ivas_error ivas_dec_get_format_fx(
test();
IF( st_ivas->ini_frame > 0 && NE_16( sba_planar, st_ivas->sba_planar ) )
{
-#ifndef FIX_FLOAT_1539_G192_FORMAT_SWITCH
- IF( Opt_tsm )
- {
-#endif
- st_ivas->restartNeeded = 1;
- move16();
+ st_ivas->restartNeeded = 1;
+ move16();
- return IVAS_ERR_OK;
-#ifndef FIX_FLOAT_1539_G192_FORMAT_SWITCH
- }
- ELSE
- {
-#ifdef DEBUGGING
- fprintf( stderr, "\nError: Changing the SBA planar/3D layout is not supported!\n" );
-#endif
- return IVAS_ERROR( IVAS_ERR_INTERNAL_FATAL, "Wrong SBA planar flag signalled!" );
- }
-#endif
+ return IVAS_ERR_OK;
}
/* read Ambisonic (SBA) order */
@@ -270,24 +193,10 @@ ivas_error ivas_dec_get_format_fx(
test();
IF( st_ivas->ini_frame > 0 && NE_16( sba_order, st_ivas->sba_order ) )
{
-#ifndef FIX_FLOAT_1539_G192_FORMAT_SWITCH
- IF( Opt_tsm )
- {
-#endif
- st_ivas->restartNeeded = 1;
- move16();
+ st_ivas->restartNeeded = 1;
+ move16();
- return IVAS_ERR_OK;
-#ifndef FIX_FLOAT_1539_G192_FORMAT_SWITCH
- }
- ELSE
- {
-#ifdef DEBUGGING
- fprintf( stderr, "\nError: Changing the SBA order is not supported!\n" );
-#endif
- return IVAS_ERROR( IVAS_ERR_INTERNAL_FATAL, "Wrong SBA order signalled!" );
- }
-#endif
+ return IVAS_ERR_OK;
}
sba_analysis_order = ivas_sba_get_analysis_order_fx( ivas_total_brate, sba_order );
@@ -303,12 +212,7 @@ ivas_error ivas_dec_get_format_fx(
k = extract_l( Mpy_32_32_r( ivas_total_brate, ONE_BY_FRAMES_PER_SEC_Q31 ) );
IF( st_ivas->bit_stream[k - 1] )
{
-#ifdef FIX_FLOAT_1539_G192_FORMAT_SWITCH
if ( st_ivas->nchan_transport == 1 )
-#else
- test();
- if ( st_ivas->nchan_transport == 1 && Opt_tsm )
-#endif
{
masaRestartCandidate = 1;
move16();
@@ -321,12 +225,7 @@ ivas_error ivas_dec_get_format_fx(
}
ELSE
{
-#ifdef FIX_FLOAT_1539_G192_FORMAT_SWITCH
if ( st_ivas->nchan_transport == 2 )
-#else
- test();
- if ( st_ivas->nchan_transport == 2 && Opt_tsm )
-#endif
{
masaRestartCandidate = 1;
move16();
@@ -376,24 +275,10 @@ ivas_error ivas_dec_get_format_fx(
test();
IF( st_ivas->ini_frame > 0 && NE_16( nchan_ism, st_ivas->nchan_ism ) )
{
-#ifndef FIX_FLOAT_1539_G192_FORMAT_SWITCH
- IF( Opt_tsm )
- {
-#endif
- st_ivas->restartNeeded = 1;
- move16();
+ st_ivas->restartNeeded = 1;
+ move16();
- return IVAS_ERR_OK;
-#ifndef FIX_FLOAT_1539_G192_FORMAT_SWITCH
- }
- ELSE
- {
-#ifdef DEBUGGING
- fprintf( stderr, "\nError: Changing the number of ISMs is not supported!\n" );
-#endif
- return IVAS_ERROR( IVAS_ERR_INTERNAL_FATAL, "Wrong number of objects signalled!" );
- }
-#endif
+ return IVAS_ERR_OK;
}
st_ivas->nchan_ism = nchan_ism;
@@ -412,24 +297,10 @@ ivas_error ivas_dec_get_format_fx(
test();
IF( st_ivas->ini_frame > 0 && NE_16( nchan_ism, st_ivas->nchan_ism ) )
{
-#ifndef FIX_FLOAT_1539_G192_FORMAT_SWITCH
- IF( Opt_tsm )
- {
-#endif
- st_ivas->restartNeeded = 1;
- move16();
+ st_ivas->restartNeeded = 1;
+ move16();
- return IVAS_ERR_OK;
-#ifndef FIX_FLOAT_1539_G192_FORMAT_SWITCH
- }
- ELSE
- {
-#ifdef DEBUGGING
- fprintf( stderr, "\nError: Changing the number of ISMs is not supported!\n" );
-#endif
- return IVAS_ERROR( IVAS_ERR_INTERNAL_FATAL, "Wrong number of objects signalled!" );
- }
-#endif
+ return IVAS_ERR_OK;
}
st_ivas->nchan_ism = nchan_ism;
@@ -444,24 +315,10 @@ ivas_error ivas_dec_get_format_fx(
test();
IF( st_ivas->ini_frame > 0 && NE_16( nchan_ism, st_ivas->nchan_ism ) )
{
-#ifndef FIX_FLOAT_1539_G192_FORMAT_SWITCH
- IF( Opt_tsm )
- {
-#endif
- st_ivas->restartNeeded = 1;
- move16();
+ st_ivas->restartNeeded = 1;
+ move16();
- return IVAS_ERR_OK;
-#ifndef FIX_FLOAT_1539_G192_FORMAT_SWITCH
- }
- ELSE
- {
-#ifdef DEBUGGING
- fprintf( stderr, "\nError: Changing the number of ISMs is not supported!\n" );
-#endif
- return IVAS_ERROR( IVAS_ERR_INTERNAL_FATAL, "Wrong number of objects signalled!" );
- }
-#endif
+ return IVAS_ERR_OK;
}
st_ivas->nchan_ism = nchan_ism;
@@ -489,24 +346,10 @@ ivas_error ivas_dec_get_format_fx(
test();
IF( st_ivas->ini_frame > 0 && NE_16( sba_order, st_ivas->sba_order ) )
{
-#ifndef FIX_FLOAT_1539_G192_FORMAT_SWITCH
- IF( Opt_tsm )
- {
-#endif
- st_ivas->restartNeeded = 1;
- move16();
+ st_ivas->restartNeeded = 1;
+ move16();
- return IVAS_ERR_OK;
-#ifndef FIX_FLOAT_1539_G192_FORMAT_SWITCH
- }
- ELSE
- {
-#ifdef DEBUGGING
- fprintf( stderr, "\nError: Changing the SBA order is not supported!\n" );
-#endif
- return IVAS_ERROR( IVAS_ERR_INTERNAL_FATAL, "Wrong SBA order signalled!" );
- }
-#endif
+ return IVAS_ERR_OK;
}
st_ivas->ism_mode = ivas_osba_ism_mode_select( ivas_total_brate, st_ivas->nchan_ism );
@@ -533,24 +376,10 @@ ivas_error ivas_dec_get_format_fx(
test();
IF( st_ivas->ini_frame > 0 && NE_32( st_ivas->transport_config, signaled_config ) )
{
-#ifndef FIX_FLOAT_1539_G192_FORMAT_SWITCH
- IF( Opt_tsm )
- {
-#endif
- st_ivas->restartNeeded = 1;
- move16();
+ st_ivas->restartNeeded = 1;
+ move16();
- return IVAS_ERR_OK;
-#ifndef FIX_FLOAT_1539_G192_FORMAT_SWITCH
- }
- ELSE
- {
-#ifdef DEBUGGING
- fprintf( stderr, "\nError: Switching of MC configurations is not supported!\n" );
-#endif
- return IVAS_ERROR( IVAS_ERR_INTERNAL_FATAL, "wrong MC configuration signalled!" );
- }
-#endif
+ return IVAS_ERR_OK;
}
st_ivas->mc_mode = ivas_mc_mode_select_fx( ivas_mc_map_output_config_to_mc_ls_setup_fx( signaled_config ), ivas_total_brate );
@@ -649,24 +478,10 @@ ivas_error ivas_dec_get_format_fx(
test();
IF( st_ivas->ini_frame > 0 && NE_16( nchan_ism, st_ivas->nchan_ism ) )
{
-#ifndef FIX_FLOAT_1539_G192_FORMAT_SWITCH
- IF( Opt_tsm )
- {
-#endif
- st_ivas->restartNeeded = 1;
- move16();
+ st_ivas->restartNeeded = 1;
+ move16();
- return IVAS_ERR_OK;
-#ifndef FIX_FLOAT_1539_G192_FORMAT_SWITCH
- }
- ELSE
- {
-#ifdef DEBUGGING
- fprintf( stderr, "\nError: Changing the number of ISMs is not supported!\n" );
-#endif
- return IVAS_ERROR( IVAS_ERR_INTERNAL_FATAL, "Wrong number of objects signalled!" );
- }
-#endif
+ return IVAS_ERR_OK;
}
st_ivas->nchan_ism = nchan_ism;
@@ -1572,12 +1387,8 @@ ivas_error ivas_init_decoder_front(
* Allocate and initialize Custom loudspeaker layout handle
*--------------------------------------------------------------------*/
-#ifdef FIX_FMSW_DEC
test();
IF( st_ivas->hDecoderConfig->Opt_LsCustom && st_ivas->hLsSetupCustom == NULL )
-#else
- IF( st_ivas->hDecoderConfig->Opt_LsCustom )
-#endif
{
IF( EQ_32( ( error = ivas_ls_custom_open_fx( &( st_ivas->hLsSetupCustom ) ) ), IVAS_ERR_OK ) )
{
@@ -1594,12 +1405,8 @@ ivas_error ivas_init_decoder_front(
* Allocate and initialize Head-Tracking handle
*--------------------------------------------------------------------*/
-#ifdef FIX_FMSW_DEC
test();
IF( st_ivas->hDecoderConfig->Opt_Headrotation && st_ivas->hHeadTrackData == NULL )
-#else
- IF( st_ivas->hDecoderConfig->Opt_Headrotation )
-#endif
{
IF( NE_32( ( error = ivas_headTrack_open_fx( &( st_ivas->hHeadTrackData ) ) ), IVAS_ERR_OK ) )
{
@@ -1616,12 +1423,8 @@ ivas_error ivas_init_decoder_front(
* Allocate and initialize external orientation handle
*--------------------------------------------------------------------*/
-#ifdef FIX_FMSW_DEC
test();
IF( st_ivas->hDecoderConfig->Opt_ExternalOrientation && st_ivas->hExtOrientationData == NULL )
-#else
- IF( st_ivas->hDecoderConfig->Opt_ExternalOrientation )
-#endif
{
IF( NE_32( ( error = ivas_external_orientation_open_fx( &( st_ivas->hExtOrientationData ), st_ivas->hDecoderConfig->render_num_subframes ) ), IVAS_ERR_OK ) )
{
@@ -1634,12 +1437,8 @@ ivas_error ivas_init_decoder_front(
*--------------------------------------------------------------------*/
test();
-#ifdef FIX_FMSW_DEC
test();
IF( ( st_ivas->hDecoderConfig->Opt_Headrotation || st_ivas->hDecoderConfig->Opt_ExternalOrientation ) && st_ivas->hCombinedOrientationData == NULL )
-#else
- IF( st_ivas->hDecoderConfig->Opt_Headrotation || st_ivas->hDecoderConfig->Opt_ExternalOrientation )
-#endif
{
IF( NE_32( ( error = ivas_combined_orientation_open_fx( &( st_ivas->hCombinedOrientationData ), st_ivas->hDecoderConfig->output_Fs, st_ivas->hDecoderConfig->render_num_subframes ) ), IVAS_ERR_OK ) )
{
@@ -1657,15 +1456,10 @@ ivas_error ivas_init_decoder_front(
test();
test();
test();
-#ifdef FIX_FMSW_DEC
test();
IF( ( EQ_16( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_BINAURAL ) || EQ_16( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_BINAURAL_ROOM_IR ) || EQ_16( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB ) || EQ_16( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED ) || EQ_16( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) ||
( EQ_16( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_STEREO ) && st_ivas->hDecoderConfig->Opt_non_diegetic_pan ) ) &&
st_ivas->hRenderConfig == NULL )
-#else
- IF( EQ_16( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_BINAURAL ) || EQ_16( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_BINAURAL_ROOM_IR ) || EQ_16( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB ) || EQ_16( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED ) || EQ_16( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) ||
- ( EQ_16( st_ivas->hDecoderConfig->output_config, IVAS_AUDIO_CONFIG_STEREO ) && st_ivas->hDecoderConfig->Opt_non_diegetic_pan ) )
-#endif
{
IF( NE_32( ( error = ivas_render_config_open_fx( &( st_ivas->hRenderConfig ) ) ), IVAS_ERR_OK ) )
{
@@ -1678,10 +1472,8 @@ ivas_error ivas_init_decoder_front(
}
}
-#ifdef TMP_1342_WORKAROUND_DEC_FLUSH_BROKEN_IN_SR
st_ivas->flushing = 0;
move16();
-#endif
return error;
}
@@ -2743,19 +2535,6 @@ ivas_error ivas_init_decoder_fx(
/* set number of output channels used for synthesis/decoding */
n = getNumChanSynthesis( st_ivas );
-#ifndef FIX_1585_ASAN_FORMAT_SW_ALT
- IF( n > 0 )
- {
- IF( ( st_ivas->mem_hp20_out_fx = (Word32 **) malloc( n * sizeof( Word32 * ) ) ) == NULL )
- {
- return ( IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for HP20 filter memory\n" ) );
- }
- }
- ELSE
- {
- st_ivas->mem_hp20_out_fx = NULL;
- }
-#endif
FOR( i = 0; i < n; i++ )
{
IF( ( st_ivas->mem_hp20_out_fx[i] = (Word32 *) malloc( ( L_HP20_MEM + 2 ) * sizeof( Word32 ) ) ) == NULL )
@@ -3377,17 +3156,10 @@ void ivas_initialize_handles_dec(
st_ivas->hCPE[i] = NULL;
}
-#ifdef FIX_FMSW_DEC
IF( !st_ivas->restartNeeded )
{
-#endif
st_ivas->bit_stream = NULL;
-#ifdef FIX_FMSW_DEC
}
-#endif
-#ifndef FIX_1585_ASAN_FORMAT_SW_ALT
- st_ivas->mem_hp20_out_fx = NULL;
-#endif
st_ivas->hLimiter = NULL;
/* ISM metadata handles */
@@ -3431,10 +3203,8 @@ void ivas_initialize_handles_dec(
st_ivas->hMasaIsmData = NULL;
st_ivas->hSbaIsmData = NULL;
-#ifdef FIX_FMSW_DEC
IF( !st_ivas->restartNeeded )
{
-#endif
st_ivas->hHeadTrackData = NULL;
st_ivas->hHrtfTD = NULL;
st_ivas->hLsSetupCustom = NULL;
@@ -3444,9 +3214,7 @@ void ivas_initialize_handles_dec(
st_ivas->acousticEnvironmentsCount = 0;
move16();
st_ivas->pAcousticEnvironments = NULL;
-#ifdef FIX_FMSW_DEC
}
-#endif
st_ivas->hSplitBinRend = NULL;
FOR( i = 0; i < MAX_HEAD_ROT_POSES - 1; ++i )
@@ -3461,9 +3229,7 @@ void ivas_initialize_handles_dec(
FOR( i = 0; i < MAX_OUTPUT_CHANNELS + MAX_NUM_OBJECTS; i++ )
{
st_ivas->p_output_fx[i] = NULL;
-#ifdef FIX_1585_ASAN_FORMAT_SW_ALT
st_ivas->mem_hp20_out_fx[i] = NULL;
-#endif
}
return;
@@ -3477,17 +3243,11 @@ void ivas_initialize_handles_dec(
*-------------------------------------------------------------------------*/
void ivas_destroy_dec_fx(
-#ifdef FIX_FMSW_DEC
Decoder_Struct **st_ivas_out /* i/o: IVAS decoder handle */
-#else
- Decoder_Struct *st_ivas /* i/o: IVAS decoder handle */
-#endif
)
{
Word16 i;
-#ifdef FIX_FMSW_DEC
Decoder_Struct *st_ivas = *st_ivas_out;
-#endif
/* CLDFB handles */
FOR( i = 0; i < MAX_INTERN_CHANNELS; i++ )
@@ -3534,7 +3294,6 @@ void ivas_destroy_dec_fx(
}
/* HP20 filter handles */
-#ifdef FIX_1585_ASAN_FORMAT_SW_ALT
FOR( i = 0; i < MAX_OUTPUT_CHANNELS + MAX_NUM_OBJECTS; i++ )
{
IF( st_ivas->mem_hp20_out_fx[i] != NULL )
@@ -3543,18 +3302,6 @@ void ivas_destroy_dec_fx(
st_ivas->mem_hp20_out_fx[i] = NULL;
}
}
-#else
- IF( st_ivas->mem_hp20_out_fx != NULL )
- {
- FOR( i = 0; i < getNumChanSynthesis( st_ivas ); i++ )
- {
- free( st_ivas->mem_hp20_out_fx[i] );
- st_ivas->mem_hp20_out_fx[i] = NULL;
- }
- free( st_ivas->mem_hp20_out_fx );
- st_ivas->mem_hp20_out_fx = NULL;
- }
-#endif
/* ISM metadata handles */
ivas_ism_metadata_close( st_ivas->hIsmMetaData, 0 );
@@ -3630,18 +3377,14 @@ void ivas_destroy_dec_fx(
ivas_ls_setup_conversion_close_fx( &st_ivas->hLsSetUpConversion );
/* Custom LS configuration handle */
-#ifdef FIX_FMSW_DEC
IF( !st_ivas->restartNeeded )
{
-#endif
IF( st_ivas->hLsSetupCustom != NULL )
{
free( st_ivas->hLsSetupCustom );
st_ivas->hLsSetupCustom = NULL;
}
-#ifdef FIX_FMSW_DEC
}
-#endif
/* Mono downmix structure */
ivas_mono_dmx_renderer_close( &st_ivas->hMonoDmxRenderer );
@@ -3677,13 +3420,11 @@ void ivas_destroy_dec_fx(
/* HRTF statistics */
ivas_HRTF_statistics_binary_close_fx( &st_ivas->hHrtfStatistics );
-#ifdef FIX_FMSW_DEC
/* Limiter struct */
ivas_limiter_close_fx( &( st_ivas->hLimiter ) );
IF( !st_ivas->restartNeeded )
{
-#endif
/* Config. Renderer */
ivas_render_config_close_fx( &( st_ivas->hRenderConfig ) );
@@ -3694,17 +3435,12 @@ void ivas_destroy_dec_fx(
st_ivas->pAcousticEnvironments = NULL;
}
-#ifndef FIX_FMSW_DEC
- /* Limiter struct */
- ivas_limiter_close_fx( &( st_ivas->hLimiter ) );
-#endif
/* Decoder configuration structure */
IF( st_ivas->hDecoderConfig != NULL )
{
free( st_ivas->hDecoderConfig );
st_ivas->hDecoderConfig = NULL;
}
-#ifdef FIX_FMSW_DEC
}
ELSE
{
@@ -3718,7 +3454,6 @@ void ivas_destroy_dec_fx(
move16();
move16();
}
-#endif
/* TC buffer structure */
ivas_dec_tc_buffer_close_fx( &st_ivas->hTcBuffer );
@@ -3736,15 +3471,11 @@ void ivas_destroy_dec_fx(
}
/* main IVAS handle */
-#ifdef FIX_FMSW_DEC
if ( !st_ivas->restartNeeded )
{
free( *st_ivas_out );
*st_ivas_out = NULL;
}
-#else
- free( st_ivas );
-#endif
return;
}
diff --git a/lib_dec/ivas_ism_dec_fx.c b/lib_dec/ivas_ism_dec_fx.c
index c57989ae7fd751e1bce59819f05724a9ffcf9413..6594bc218235cb39155556c6376c09abc8a52ee3 100644
--- a/lib_dec/ivas_ism_dec_fx.c
+++ b/lib_dec/ivas_ism_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_dec/ivas_ism_dtx_dec_fx.c b/lib_dec/ivas_ism_dtx_dec_fx.c
index d283832b33714cb68193bd1795ea5852e733a732..8e186df06ec960c5df04d20e2fdd09d00fab2b9f 100644
--- a/lib_dec/ivas_ism_dtx_dec_fx.c
+++ b/lib_dec/ivas_ism_dtx_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_dec/ivas_ism_metadata_dec_fx.c b/lib_dec/ivas_ism_metadata_dec_fx.c
index 4e9fe4154c1e3d01c4fa3b7d6a50f0c2fb600648..08c96c143c87c3725dbb5231785ecb6bdcd02645 100644
--- a/lib_dec/ivas_ism_metadata_dec_fx.c
+++ b/lib_dec/ivas_ism_metadata_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_dec/ivas_ism_param_dec_fx.c b/lib_dec/ivas_ism_param_dec_fx.c
index 4a00c193c703a89fbfffcba56ee390a324ee8a8a..2c2e341860a810dec55825b73db7a189f265719b 100644
--- a/lib_dec/ivas_ism_param_dec_fx.c
+++ b/lib_dec/ivas_ism_param_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
@@ -38,9 +10,6 @@
#include "ivas_rom_com.h"
#include "wmc_auto.h"
#include "ivas_prot_fx.h"
-#ifdef DEBUGGING
-#include "debug.h"
-#endif
/*-----------------------------------------------------------------------*
diff --git a/lib_dec/ivas_ism_renderer_fx.c b/lib_dec/ivas_ism_renderer_fx.c
index bd1b654e9ca4b22e40b4b8467bb8a02a5e7539ea..8350f03ef403bdb937e2fd6bb4cb144192c63031 100644
--- a/lib_dec/ivas_ism_renderer_fx.c
+++ b/lib_dec/ivas_ism_renderer_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
@@ -185,10 +157,6 @@ void ivas_ism_render_sf_fx(
n_samples_rendered_loop = 0;
move16();
-#ifdef DEBUGGING
- assert( slots_to_render == 0 );
- assert( last_sf <= st_ivas->hTcBuffer->nb_subframes );
-#endif
WHILE( slots_to_render > 0 )
{
diff --git a/lib_dec/ivas_lfe_dec_fx.c b/lib_dec/ivas_lfe_dec_fx.c
index 20b2ac7c72be1af61f308794e502fb0b0a7ccdfd..58b4d62b67ac6f1a7aec6ab73c37bb0d986d3bac 100644
--- a/lib_dec/ivas_lfe_dec_fx.c
+++ b/lib_dec/ivas_lfe_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_dec/ivas_lfe_plc_fx.c b/lib_dec/ivas_lfe_plc_fx.c
index a088b44adb6063c327e6caab8516257d3a47f3c4..4d0420d4f99effe32b1675c04e958ff252d23d3a 100755
--- a/lib_dec/ivas_lfe_plc_fx.c
+++ b/lib_dec/ivas_lfe_plc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_dec/ivas_ls_custom_dec_fx.c b/lib_dec/ivas_ls_custom_dec_fx.c
index b6ae99039b6a6d5fcaf06fe46d23ba253dc56559..f3e3446d541fa37f651b4398ffccba4a8f43f67c 100644
--- a/lib_dec/ivas_ls_custom_dec_fx.c
+++ b/lib_dec/ivas_ls_custom_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
#include "prot_fx.h"
diff --git a/lib_dec/ivas_masa_dec_fx.c b/lib_dec/ivas_masa_dec_fx.c
index 6c80c617ddccb00968e4742551397dace09d2122..095d6c510c3a978d97300e61fcf717e74fc7f721 100644
--- a/lib_dec/ivas_masa_dec_fx.c
+++ b/lib_dec/ivas_masa_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
diff --git a/lib_dec/ivas_mc_param_dec_fx.c b/lib_dec/ivas_mc_param_dec_fx.c
index 4a191876ceba2636d140195202f3821748567b92..e7143c8096b046fe1d0f38222c95ab6bfa5a087f 100644
--- a/lib_dec/ivas_mc_param_dec_fx.c
+++ b/lib_dec/ivas_mc_param_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_dec/ivas_mc_paramupmix_dec_fx.c b/lib_dec/ivas_mc_paramupmix_dec_fx.c
index ecd8418f13c735ce46af13c2a85dba89b540fee4..8c5a37452e08f2d0f9b61cb8051d9e4da24a5508 100644
--- a/lib_dec/ivas_mc_paramupmix_dec_fx.c
+++ b/lib_dec/ivas_mc_paramupmix_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
diff --git a/lib_dec/ivas_mcmasa_dec_fx.c b/lib_dec/ivas_mcmasa_dec_fx.c
index b4fa9d08cc31ce1158e4c0dcbfa328d7b07ccf2e..716f3a3b1d8e54561536784827ad192fab6e3442 100644
--- a/lib_dec/ivas_mcmasa_dec_fx.c
+++ b/lib_dec/ivas_mcmasa_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include "options.h"
#include
diff --git a/lib_dec/ivas_mct_core_dec_fx.c b/lib_dec/ivas_mct_core_dec_fx.c
index 2bba7429bdcd74fed0b6e3aba0416dfde11fbc9c..1267d51696cd73d2efe3d5f64c410481800ca621 100644
--- a/lib_dec/ivas_mct_core_dec_fx.c
+++ b/lib_dec/ivas_mct_core_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
@@ -197,9 +169,6 @@ void ivas_mct_core_dec(
Word16 tcx_offsetFB;
Word16 left_rect;
Word16 L_spec;
-#ifdef DEBUG_MCT
- float nrg[MCT_MAX_CHANNELS];
-#endif
Word32 *x_fx[MCT_MAX_CHANNELS][NB_DIV];
push_wmops( "mct_decoding" );
diff --git a/lib_dec/ivas_mct_dec_fx.c b/lib_dec/ivas_mct_dec_fx.c
index 11892029f36f1bf5c8d37dfe5081f95225afab5b..8620aa6d3a56d33160562dd627f7e4a4a7d098c1 100644
--- a/lib_dec/ivas_mct_dec_fx.c
+++ b/lib_dec/ivas_mct_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
diff --git a/lib_dec/ivas_mct_dec_mct_fx_fx.c b/lib_dec/ivas_mct_dec_mct_fx_fx.c
index f4d289ee28e28ef03bff8bf679f6d810a3fed9f0..458e022fe29be4ac152ba8380b85423f975b2592 100644
--- a/lib_dec/ivas_mct_dec_mct_fx_fx.c
+++ b/lib_dec/ivas_mct_dec_mct_fx_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_dec/ivas_mdct_core_dec_fx.c b/lib_dec/ivas_mdct_core_dec_fx.c
index 61c4bf0ce36a45451877ca5986aecc1d7a65a5db..5028dcb8b204399c242623c9e143e0a4dcfdb422 100644
--- a/lib_dec/ivas_mdct_core_dec_fx.c
+++ b/lib_dec/ivas_mdct_core_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
@@ -1510,11 +1482,7 @@ void ivas_mdct_core_tns_ns_fx(
Word16 left_rect[CPE_CHANNELS];
Word16 L_spec[CPE_CHANNELS];
Word32 sns_int_scf_fx[FDNS_NPTS];
-#ifdef FIX_BASOP_2555_FRAMELEN_CALC
Word16 length;
-#else
- Word16 exp, length;
-#endif
/* Initializations */
sts = hCPE->hCoreCoder;
@@ -1529,7 +1497,6 @@ void ivas_mdct_core_tns_ns_fx(
FOR( ch = 0; ch < CPE_CHANNELS; ch++ )
{
st = sts[ch];
-#ifdef FIX_BASOP_2555_FRAMELEN_CALC
IF( EQ_16( st->core, TCX_20_CORE ) )
{
nSubframes[ch] = 1;
@@ -1556,32 +1523,6 @@ void ivas_mdct_core_tns_ns_fx(
move16();
move16();
}
-#else
- IF( EQ_16( st->core, TCX_20_CORE ) )
- {
- nSubframes[ch] = 1;
- }
- ELSE
- {
- nSubframes[ch] = NB_DIV;
- }
- move16();
-
- L_frame_global[ch] = BASOP_Util_Divide3216_Scale( st->L_frame, nSubframes[ch], &exp );
- move16();
- L_frame_global[ch] = shl( L_frame_global[ch], add( exp, 1 ) );
- move16();
-
- L_frameTCX_glob[ch] = BASOP_Util_Divide3216_Scale( st->hTcxDec->L_frameTCX, nSubframes[ch], &exp );
- move16();
- L_frameTCX_glob[ch] = shl( L_frameTCX_glob[ch], add( exp, 1 ) );
- move16();
-
- L_spec[ch] = BASOP_Util_Divide3216_Scale( st->hTcxCfg->tcx_coded_lines, nSubframes[ch], &exp );
- move16();
- L_spec[ch] = shl( L_spec[ch], add( exp, 1 ) );
- move16();
-#endif
test();
test();
diff --git a/lib_dec/ivas_mono_dmx_renderer_fx.c b/lib_dec/ivas_mono_dmx_renderer_fx.c
index dfdfd057f1617f7468e6464bcc7641fa56095c28..68f175e0f75e433a28fd2d6c62783dda26a38882 100644
--- a/lib_dec/ivas_mono_dmx_renderer_fx.c
+++ b/lib_dec/ivas_mono_dmx_renderer_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_dec/ivas_objectRenderer_internal_fx.c b/lib_dec/ivas_objectRenderer_internal_fx.c
index 8806a6aefc9a29436a76aabc5472f52980c72481..2e5b41c76eda83380935a345a91d46bf7056f561 100644
--- a/lib_dec/ivas_objectRenderer_internal_fx.c
+++ b/lib_dec/ivas_objectRenderer_internal_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
@@ -37,9 +9,6 @@
#include "ivas_rom_com.h"
#include "wmc_auto.h"
#include "ivas_prot_fx.h"
-#ifdef DEBUGGING
-#include "debug.h"
-#endif
/*---------------------------------------------------------------------*
@@ -263,17 +232,6 @@ ivas_error ivas_td_binaural_renderer_sf_fx(
tmp_vector_fx = &st_ivas->hCombinedOrientationData->listenerPos[st_ivas->hCombinedOrientationData->subframe_idx];
enableCombinedOrientation = st_ivas->hCombinedOrientationData->enableCombinedOrientation[st_ivas->hCombinedOrientationData->subframe_idx];
move16();
-
-#ifndef FIX_BASOP_2023_TDREND_DISTATT_PRECISION
- /* Shifting x_fx, y_fx, z_fx to the same Q-factor as Listener_p->Pos_q (usually Q25) */
- Word16 pos_q = st_ivas->hBinRendererTd->Listener_p->Pos_q;
- move16();
- tmp_vector_fx->x_fx = L_shr( tmp_vector_fx->x_fx, sub( tmp_vector_fx->q_fact, pos_q ) );
- tmp_vector_fx->y_fx = L_shr( tmp_vector_fx->y_fx, sub( tmp_vector_fx->q_fact, pos_q ) );
- tmp_vector_fx->z_fx = L_shr( tmp_vector_fx->z_fx, sub( tmp_vector_fx->q_fact, pos_q ) );
- tmp_vector_fx->q_fact = pos_q;
- move16();
-#endif
}
ELSE
{
diff --git a/lib_dec/ivas_omasa_dec_fx.c b/lib_dec/ivas_omasa_dec_fx.c
index 49554d356fe46c50cedf2b912ee31be86a499b59..51a6eccb11be5cb1985892a1426a9c446acbd694 100644
--- a/lib_dec/ivas_omasa_dec_fx.c
+++ b/lib_dec/ivas_omasa_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include "options.h"
#include
diff --git a/lib_dec/ivas_osba_dec_fx.c b/lib_dec/ivas_osba_dec_fx.c
index 66e92c9fd6c594f51425f4a21134d7d110fe201c..abcb7d692abf67c08a14ac971c33592bac67f5b9 100644
--- a/lib_dec/ivas_osba_dec_fx.c
+++ b/lib_dec/ivas_osba_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include "options.h"
#include
diff --git a/lib_dec/ivas_out_setup_conversion_fx.c b/lib_dec/ivas_out_setup_conversion_fx.c
index a8fe1d0b0aabd9722e190bc3dc2f9328b7bba2e9..cea293e4343a42f3fd8e77e97a9108a8d76f4f6e 100644
--- a/lib_dec/ivas_out_setup_conversion_fx.c
+++ b/lib_dec/ivas_out_setup_conversion_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
@@ -39,9 +11,6 @@
#include "ivas_rom_rend.h"
#include "wmc_auto.h"
#include "ivas_prot_fx.h"
-#ifdef DEBUGGING
-#include "debug.h"
-#endif
/*----------------------------------------------------------------------------------*
diff --git a/lib_dec/ivas_output_config_fx.c b/lib_dec/ivas_output_config_fx.c
index b57f4100b985753392cfa5b58e71a48c189e4c20..9c1a4c677e7848129c7270f8d7947a48d9eb33f9 100644
--- a/lib_dec/ivas_output_config_fx.c
+++ b/lib_dec/ivas_output_config_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_dec/ivas_pca_dec_fx.c b/lib_dec/ivas_pca_dec_fx.c
index e5cab04c04b1854ff71d1d6b1ea8f3fccd889f0e..c0a374bb38349affcb2ebd941e7fa1219c83958f 100644
--- a/lib_dec/ivas_pca_dec_fx.c
+++ b/lib_dec/ivas_pca_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_dec/ivas_post_proc_fx.c b/lib_dec/ivas_post_proc_fx.c
index b6eb91fd9a9f7649902dfdcff7f7a45b6185010f..ff35918267bfb3eb802e40ba80391cad62828929 100644
--- a/lib_dec/ivas_post_proc_fx.c
+++ b/lib_dec/ivas_post_proc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
diff --git a/lib_dec/ivas_qmetadata_dec_fx.c b/lib_dec/ivas_qmetadata_dec_fx.c
index 7974350ce2b651139a251a2346f55c13c7d7d71e..f4d6c1e7479f47c1af5a8d434efd6f67ef089541 100644
--- a/lib_dec/ivas_qmetadata_dec_fx.c
+++ b/lib_dec/ivas_qmetadata_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
diff --git a/lib_dec/ivas_qspherical_dec_fx.c b/lib_dec/ivas_qspherical_dec_fx.c
index f0a7b03f67ee8025be0cc94b8579741fe4230af3..712fca84a59f32f4e7e032d7018dc99d4fcae284 100644
--- a/lib_dec/ivas_qspherical_dec_fx.c
+++ b/lib_dec/ivas_qspherical_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_dec/ivas_range_uni_dec_fx.c b/lib_dec/ivas_range_uni_dec_fx.c
index 540c33123f7cdc50cc46fe61bc9803692b6bd6f6..ca43dc0d5cfbea1c8094cf19db0207e0eb4673b7 100644
--- a/lib_dec/ivas_range_uni_dec_fx.c
+++ b/lib_dec/ivas_range_uni_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "ivas_cnst.h"
diff --git a/lib_dec/ivas_rom_dec.h b/lib_dec/ivas_rom_dec.h
index f79e95cef4c4a477f12516620df86d4d1b887c0f..fff1f9d36bc4dff4c0ad2ed7a668e054e7beb0b1 100644
--- a/lib_dec/ivas_rom_dec.h
+++ b/lib_dec/ivas_rom_dec.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#ifndef IVAS_ROM_DEC_H
#define IVAS_ROM_DEC_H
@@ -96,8 +68,5 @@ extern const Word16 dirac_dithering_ele_scale_fx[DIRAC_DIFFUSE_LEVELS];
extern const HUFF_NODE_TABLE ivas_mc_paramupmix_huff_nodes_df0;
extern const HUFF_NODE_TABLE ivas_mc_paramupmix_huff_nodes_df;
-#ifndef FIX_2095_REMOVE_UNUSED_ISAR_TABLES
-extern const HUFF_NODE_TABLE ivas_mc_paramupmix_huff_nodes_dt;
-#endif
#endif /* IVAS_ROM_DEC_H */
diff --git a/lib_dec/ivas_rom_dec_fx.c b/lib_dec/ivas_rom_dec_fx.c
index 0f1b4108ae092be106288918f506d3f6970d121e..f9a132f6b88f57c6e16d2d711e93252c4ba8523b 100644
--- a/lib_dec/ivas_rom_dec_fx.c
+++ b/lib_dec/ivas_rom_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
@@ -476,76 +448,6 @@ static const Word16 huff_nodes_alpha_1D_DF[64][2] =
{ -2, -62 }
};
-#ifndef FIX_2095_REMOVE_UNUSED_ISAR_TABLES
-/* Alpha Fine Huffman table dt */
-static const Word16 huff_nodes_alpha_1D_DT[64][2] =
-{
- { -33, 1 },
- { -34, 2 },
- { -32, 3 },
- { 5, 4 },
- { -31, -35 },
- { 7, 6 },
- { -36, 8 },
- { -30, 9 },
- { 11, 10 },
- { -29, -37 },
- { 13, 12 },
- { 15, 14 },
- { -28, -38 },
- { 17, 16 },
- { -27, -39 },
- { 19, 18 },
- { -40, 20 },
- { -26, 21 },
- { 23, 22 },
- { -25, -41 },
- { 25, 24 },
- { -24, -42 },
- { 27, 26 },
- { -23, -43 },
- { 29, 28 },
- { -22, -44 },
- { 31, 30 },
- { -45, 32 },
- { -21, 33 },
- { -20, 34 },
- { -46, 35 },
- { -47, 36 },
- { -19, 37 },
- { -48, 38 },
- { -18, 39 },
- { 41, 40 },
- { -17, -49 },
- { 43, 42 },
- { -50, 44 },
- { -16, 45 },
- { 47, 46 },
- { -51, 48 },
- { -15, 49 },
- { 51, 50 },
- { -52, -65 },
- { -1, -14 },
- { 53, 52 },
- { -53, 54 },
- { -13, 55 },
- { 57, 56 },
- { -12, 58 },
- { -54, 59 },
- { 61, 60 },
- { -11, -55 },
- { -56, 62 },
- { -10, 63 },
- { -9, -57 },
- { -5, -6 },
- { -58, -61 },
- { -7, -59 },
- { -8, -62 },
- { -4, -60 },
- { -3, -64 },
- { -2, -63 }
-};
-#endif
/* Beta Fine Huffman table df0 */
static const Word16 huff_nodes_first_band_beta[8][2] =
@@ -559,13 +461,6 @@ static const Word16 huff_nodes_beta_1D_DF[16][2] =
{ -9, 1 }, { -10, 2 }, { -8, 3 }, { -11, 4 }, { -7, 5 }, { 7, 6 }, { -6, -12 }, { 9, 8 }, { -5, -13 }, { 11, 10 }, { -4, -14 }, { -15, 12 }, { -3, 13 }, { -16, 14 }, { -2, 15 }, { -1, -17 }
};
-#ifndef FIX_2095_REMOVE_UNUSED_ISAR_TABLES
-/* Beta Fine Huffman table dt */
-static const Word16 huff_nodes_beta_1D_DT[16][2] =
-{
- { -9, 1 }, { -10, 2 }, { -8, 3 }, { -11, 4 }, { -7, 5 }, { 7, 6 }, { -6, -12 }, { -13, 8 }, { -5, 9 }, { -14, 10 }, { -4, 11 }, { -15, 12 }, { -3, 13 }, { -16, 14 }, { -2, 15 }, { -1, -17 }
-};
-#endif
const HUFF_NODE_TABLE ivas_mc_paramupmix_huff_nodes_df0 =
{
@@ -579,12 +474,5 @@ const HUFF_NODE_TABLE ivas_mc_paramupmix_huff_nodes_df =
huff_nodes_beta_1D_DF
};
-#ifndef FIX_2095_REMOVE_UNUSED_ISAR_TABLES
-const HUFF_NODE_TABLE ivas_mc_paramupmix_huff_nodes_dt =
-{
- huff_nodes_alpha_1D_DT,
- huff_nodes_beta_1D_DT
-};
-#endif
/* clang-format on */
diff --git a/lib_dec/ivas_sba_dec_fx.c b/lib_dec/ivas_sba_dec_fx.c
index 24dcdce224f29f4e7c618a70c6c9a57113d23842..b34bcedc5a7d0e25a6b123525f5279f630b8e48d 100644
--- a/lib_dec/ivas_sba_dec_fx.c
+++ b/lib_dec/ivas_sba_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include "enh32.h"
#include
diff --git a/lib_dec/ivas_sba_dirac_stereo_dec_fx.c b/lib_dec/ivas_sba_dirac_stereo_dec_fx.c
index 1e39811e201dfd35b4bb12ee44898117756ced96..18167eefa26a66fb68cefba550668f5405114e9a 100644
--- a/lib_dec/ivas_sba_dirac_stereo_dec_fx.c
+++ b/lib_dec/ivas_sba_dirac_stereo_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
@@ -1519,14 +1491,8 @@ void ivas_sba_dirac_stereo_dec_fx(
synchro_synthesis_fx( st_ivas->hDecoderConfig->ivas_total_brate, hCPE, output, output_frame, 1 /*st_ivas->sba_dirac_stereo_flag*/, q_dft[0] );
/* output scaling */
-#ifdef FIX_1521_SBA_LOUDNESS_STEREO
IF( !sba_mono_flag )
-#else
- test();
- IF( !sba_mono_flag && !( EQ_16( st_ivas->ivas_format, SBA_ISM_FORMAT ) && EQ_16( st_ivas->ism_mode, ISM_MODE_NONE ) ) )
-#endif
{
-#ifdef FIX_1521_SBA_LOUDNESS_STEREO
test();
IF( EQ_16( st_ivas->ivas_format, SBA_ISM_FORMAT ) && EQ_16( st_ivas->ism_mode, ISM_MODE_NONE ) )
{
@@ -1542,10 +1508,6 @@ void ivas_sba_dirac_stereo_dec_fx(
v_multc_fx( output[0], INV_SQRT2_FX, output[0], output_frame );
v_multc_fx( output[1], INV_SQRT2_FX, output[1], output_frame );
}
-#else
- v_shr( output[0], 1, output[0], output_frame ); /*0.5f*/
- v_shr( output[1], 1, output[1], output_frame ); /*0.5f*/
-#endif
}
/* delay HB synth */
diff --git a/lib_dec/ivas_sba_rendering_internal_fx.c b/lib_dec/ivas_sba_rendering_internal_fx.c
index d595b8ae5494a6dd2ff0507cf4f2516c1b69111a..b5dc3faf6fb179fc46966dcec6984c581d6c64c9 100644
--- a/lib_dec/ivas_sba_rendering_internal_fx.c
+++ b/lib_dec/ivas_sba_rendering_internal_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
@@ -38,9 +10,6 @@
#include "ivas_cnst.h"
#include "wmc_auto.h"
#include "ivas_prot_fx.h"
-#ifdef DEBUGGING
-#include "debug.h"
-#endif
/*-------------------------------------------------------------------------*
@@ -554,9 +523,6 @@ void ivas_sba_mix_matrix_determiner_fx(
ivas_agc_dec_process_fx( hSpar->hAgcDec, ( output_fx ), ( output_fx ), nchan_transport, output_frame );
Q_p_output = sub( Q_p_output, 3 );
-#ifdef DEBUGGING
- dbgwrite_txt( (const float *) ( output_fx[0] ), output_frame, "fix_ivas_agc_dec_process_output.txt", NULL );
-#endif
/* Convert numeric range back */
FOR( ch = 0; ch < nchan_out; ch++ )
diff --git a/lib_dec/ivas_sce_dec_fx.c b/lib_dec/ivas_sce_dec_fx.c
index 22bd4094a28be8db283b9db4f207da4956fbb44c..1a7313a0b712c2c7bf9ec74a5cf04ba5f3dcd7e5 100644
--- a/lib_dec/ivas_sce_dec_fx.c
+++ b/lib_dec/ivas_sce_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
diff --git a/lib_dec/ivas_sns_dec_fx.c b/lib_dec/ivas_sns_dec_fx.c
index 1120c4eb969f732d1da5a977fc0d16bae3641dde..53b98590ef10bd6c60cfe11170ee7dea666e2884 100644
--- a/lib_dec/ivas_sns_dec_fx.c
+++ b/lib_dec/ivas_sns_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten FORschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten FORschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement beFORe making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively FOR experts who have experience with such software and
- solely FOR the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness FOR a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_dec/ivas_spar_decoder_fx.c b/lib_dec/ivas_spar_decoder_fx.c
index f36cdc0cbfc67e314ebaa2bcd67687aa6a3ff411..f0437bd841a6fc821bdb684e8d15916c9e8e1776 100644
--- a/lib_dec/ivas_spar_decoder_fx.c
+++ b/lib_dec/ivas_spar_decoder_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
@@ -41,9 +13,6 @@
#include "ivas_stat_com.h"
#include "wmc_auto.h"
#include "ivas_prot_fx.h"
-#ifdef DEBUGGING
-#include "debug.h"
-#endif
/*-------------------------------------------------------------------*
* Local function prototypes
diff --git a/lib_dec/ivas_spar_md_dec_fx.c b/lib_dec/ivas_spar_md_dec_fx.c
index 54fc60583b4dd9b5bc1e81b18c313aa1be9c0c4a..47fe91db679b19b42245214e34d1c76ae9b792d3 100644
--- a/lib_dec/ivas_spar_md_dec_fx.c
+++ b/lib_dec/ivas_spar_md_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
@@ -904,17 +876,6 @@ void ivas_spar_md_dec_process_fx(
ivas_get_spar_matrices_fx( hMdDec, num_bands_out, num_md_sub_frames, bw, dtx_vad, nB, num_md_chs, active_w_vlbr, dyn_active_w_flag );
-#ifdef DEBUG_SPAR_DIRAC_WRITE_OUT_PRED_PARS
- {
- static FILE *fid = 0;
- int16_t band = 9;
- if ( !fid )
- {
- fid = fopen( "pred_coeffs_dec.txt", "wt" );
- }
- fprintf( fid, "%.6f\n", hMdDec->mixer_mat[1][0][band] );
- }
-#endif
ivas_spar_md_fill_invalid_bands_fx( &hMdDec->spar_coeffs, &hMdDec->spar_coeffs_prev, &hMdDec->valid_bands[0], &hMdDec->base_band_age[0], num_bands_out, num_md_chs, num_md_sub_frames );
diff --git a/lib_dec/ivas_stat_dec.h b/lib_dec/ivas_stat_dec.h
index 8a1444278756ccf4d8d7aeac39d148b419a5af9c..d9fd5115218271fa6a825f98dbb3e9fa13e15b0b 100644
--- a/lib_dec/ivas_stat_dec.h
+++ b/lib_dec/ivas_stat_dec.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#ifndef IVAS_STAT_DEC_H
#define IVAS_STAT_DEC_H
@@ -1114,11 +1086,7 @@ typedef struct Decoder_Struct
UWord16 *bit_stream; /* Pointer to bitstream buffer */
Word16 writeFECoffset; /* parameter for debugging JBM stuff */
-#ifdef FIX_1585_ASAN_FORMAT_SW_ALT
Word32 *mem_hp20_out_fx[MAX_OUTPUT_CHANNELS + MAX_NUM_OBJECTS]; /* output signals HP filter memories */
-#else
- Word32 **mem_hp20_out_fx; /* output signals HP filter memories */
-#endif
IVAS_LIMITER_HANDLE hLimiter; /* Limiter handle */
/* core-decoder modules */
@@ -1194,9 +1162,7 @@ typedef struct Decoder_Struct
Word16 ism_extmeta_active; /* Extended metadata active in decoder */
Word16 ism_extmeta_cnt; /* Change frame counter for extended metadata */
-#ifdef TMP_1342_WORKAROUND_DEC_FLUSH_BROKEN_IN_SR
Word16 flushing;
-#endif
Word16 restartNeeded; /* Flag to signal decoder restart */
} Decoder_Struct;
diff --git a/lib_dec/ivas_stereo_adapt_GR_dec_fx.c b/lib_dec/ivas_stereo_adapt_GR_dec_fx.c
index 064f317199632999e021d0d3960cc07ecbe0686c..cbfd88ea4cedc0d04a6ac1c044d80ae45c715c50 100644
--- a/lib_dec/ivas_stereo_adapt_GR_dec_fx.c
+++ b/lib_dec/ivas_stereo_adapt_GR_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_dec/ivas_stereo_cng_dec_fx.c b/lib_dec/ivas_stereo_cng_dec_fx.c
index bf09e23361b8a3e1055bf81da85661c33e50ba5f..64d7e13d4a1d670add31394bdcf2d36467dd7a42 100644
--- a/lib_dec/ivas_stereo_cng_dec_fx.c
+++ b/lib_dec/ivas_stereo_cng_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_dec/ivas_stereo_dft_dec_dmx_fx.c b/lib_dec/ivas_stereo_dft_dec_dmx_fx.c
index 125063b3f3daafb5a5e6bd7ddd9a6ecd0a82385e..093c5842a301c4ddedcd7d4dbd5047abea98eebd 100644
--- a/lib_dec/ivas_stereo_dft_dec_dmx_fx.c
+++ b/lib_dec/ivas_stereo_dft_dec_dmx_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
diff --git a/lib_dec/ivas_stereo_dft_dec_fx.c b/lib_dec/ivas_stereo_dft_dec_fx.c
index 60bab87f0890374a30a9769e7f114238af2bfbf6..f4df1a20fcddcdfdf3bc88654e3560e88bc34d51 100644
--- a/lib_dec/ivas_stereo_dft_dec_fx.c
+++ b/lib_dec/ivas_stereo_dft_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
@@ -41,9 +13,6 @@
#include "ivas_rom_dec.h"
#include "wmc_auto.h"
#include "basop_util.h"
-#ifdef DEBUGGING
-#include "debug.h"
-#endif
/*-------------------------------------------------------------------*
@@ -115,21 +84,13 @@ void stereo_dft_dec_reset_fx(
set16_fx( hStereoDft->res_pred_index_previous, 0, STEREO_DFT_BAND_MAX );
-#ifdef FIX_BASOP_2560_STEREO_DFT_DEC_RESET
FOR( i = 0; i < STEREO_DFT_BAND_MAX; i++ )
-#else
- FOR( i = 0; i < STEREO_DFT_BAND_MAX * 2; i++ )
-#endif
{
hStereoDft->res_gains_ind_fx[0][i] = 1006632960; /* 15.0f in Q26 */
move32();
}
-#ifdef FIX_BASOP_2560_STEREO_DFT_DEC_RESET
set32_fx( hStereoDft->res_gains_ind_fx[1], 0, STEREO_DFT_BAND_MAX );
-#else
- set32_fx( hStereoDft->res_gains_ind_fx[1], 0, STEREO_DFT_BAND_MAX * 2 );
-#endif
/*residual coding*/
set16_fx( hStereoDft->res_cod_mode, hStereoDft->hConfig->res_cod_mode, STEREO_DFT_DEC_DFT_NB );
@@ -4419,9 +4380,6 @@ void stereo_dft_dec_read_BS_fx(
hStereoDft->res_global_gain_fx = ECSQ_dequantize_gain_fx( I ); /* Q15 */
move32();
-#ifdef DEBUGGING
- dbgwrite_txt( (const float *) ( &hStereoDft->res_global_gain_fx ), 1, "fixed_res_global_gain.txt", NULL );
-#endif
ecsq_inst.config_index = sub( shl( hStereoDft->res_cod_mode[k_offset], 1 ), 1 ); /* Q0 */
move16();
@@ -4438,10 +4396,6 @@ void stereo_dft_dec_read_BS_fx(
}
ECSQ_dequantize_vector_fx( dec, hStereoDft->res_global_gain_fx, hStereoDft->res_cod_line_max, res_buf_fx );
-
-#ifdef DEBUGGING
- dbgwrite_txt( (const float *) res_buf_fx, hStereoDft->res_cod_line_max, "fixed_res_buf.txt", NULL );
-#endif
}
ELSE
{
diff --git a/lib_dec/ivas_stereo_dft_plc_fx.c b/lib_dec/ivas_stereo_dft_plc_fx.c
index 670b19e36cae2a55d2206cc238b62a8c489dd66c..bca21692e7e82714fbb6e3f87782792403038e19 100644
--- a/lib_dec/ivas_stereo_dft_plc_fx.c
+++ b/lib_dec/ivas_stereo_dft_plc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_dec/ivas_stereo_eclvq_dec_fx.c b/lib_dec/ivas_stereo_eclvq_dec_fx.c
index f487d2f0c6383f7bca9254ca0cd400b75e5170cc..1356a2c079beb1e4459f3b161f8089c4b16673f0 100644
--- a/lib_dec/ivas_stereo_eclvq_dec_fx.c
+++ b/lib_dec/ivas_stereo_eclvq_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_dec/ivas_stereo_esf_dec_fx.c b/lib_dec/ivas_stereo_esf_dec_fx.c
index a438c3e5ccc5954b6038fb6327cce98e55cb35b0..f8b8e4432eae2367bd44248ce51d3797ffe3dec1 100644
--- a/lib_dec/ivas_stereo_esf_dec_fx.c
+++ b/lib_dec/ivas_stereo_esf_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_dec/ivas_stereo_ica_dec_fx.c b/lib_dec/ivas_stereo_ica_dec_fx.c
index 9345fccaebfca269ed67ca8ac538e835852c3991..91fb6d201ac46f86998645d0a19f80b0d3570fca 100644
--- a/lib_dec/ivas_stereo_ica_dec_fx.c
+++ b/lib_dec/ivas_stereo_ica_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
diff --git a/lib_dec/ivas_stereo_icbwe_dec_fx.c b/lib_dec/ivas_stereo_icbwe_dec_fx.c
index 0ccd2ed43af724c05d8500853d0d1c4a5280c13c..c00e1206f639d9174482be15858c9c981b93242a 100644
--- a/lib_dec/ivas_stereo_icbwe_dec_fx.c
+++ b/lib_dec/ivas_stereo_icbwe_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
diff --git a/lib_dec/ivas_stereo_mdct_core_dec_fx.c b/lib_dec/ivas_stereo_mdct_core_dec_fx.c
index d40505a358e6ba5a4fb84e2ef093ec710863b333..96ca031c89bc1319a336f10dbff0d334bcead8e2 100644
--- a/lib_dec/ivas_stereo_mdct_core_dec_fx.c
+++ b/lib_dec/ivas_stereo_mdct_core_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
diff --git a/lib_dec/ivas_stereo_mdct_stereo_dec_fx.c b/lib_dec/ivas_stereo_mdct_stereo_dec_fx.c
index 6e5fa6b7751b913d64fbebd0f7c9893596ff8daa..b21f078d393991be9048d8179b697ade6147aeb7 100644
--- a/lib_dec/ivas_stereo_mdct_stereo_dec_fx.c
+++ b/lib_dec/ivas_stereo_mdct_stereo_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
diff --git a/lib_dec/ivas_stereo_switching_dec_fx.c b/lib_dec/ivas_stereo_switching_dec_fx.c
index f0684a3f4a051a9144a67f1c8aeec1f0168985d3..bafe3a82fb1fdf01975961c5cc3023b92f9e4051 100644
--- a/lib_dec/ivas_stereo_switching_dec_fx.c
+++ b/lib_dec/ivas_stereo_switching_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
@@ -82,10 +54,8 @@ static ivas_error allocate_CoreCoder_TCX_fx(
st->hTcxDec->q_old_synth = 0;
move16();
set16_fx( st->hTcxDec->synth_history_fx, 0, L_PROT48k + L_FRAME48k );
-#ifdef FIX_BASOP_2559_Q_SYNTH_HISTORY_RESET
st->hTcxDec->q_synth_history_fx = 0;
move16();
-#endif
}
IF( st->hTcxCfg == NULL )
diff --git a/lib_dec/ivas_stereo_td_dec_fx.c b/lib_dec/ivas_stereo_td_dec_fx.c
index 39b861ace07c42a23c0b0f5b5607a545571e2cdb..bab04c30b9a5907a136155dbcaa9c70be56f968d 100644
--- a/lib_dec/ivas_stereo_td_dec_fx.c
+++ b/lib_dec/ivas_stereo_td_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_dec/ivas_svd_dec_fx.c b/lib_dec/ivas_svd_dec_fx.c
index 775cbcfebc7fe93483b8f7cbab10faad4fdd3808..b9d39cdd2f3659a0f2728db22791a322c9b6d96d 100755
--- a/lib_dec/ivas_svd_dec_fx.c
+++ b/lib_dec/ivas_svd_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
@@ -49,9 +21,6 @@
#define SVD_ZERO_FLUSH_THRESHOLD_FX ( 0 )
#define CONVERGENCE_FACTOR_FX 214748 /* factor for SVD convergence (as per latest float code: 1.0e-04f) */
-#ifndef FIX_1548_HARMONIZE_NON_DIEGETIC_PANNING_LAW
-#define MINUS_ONE_IN_Q31 ( -2147483647 - 1 )
-#endif
/*-----------------------------------------------------------------------*
* Local function prototypes
diff --git a/lib_dec/ivas_tcx_core_dec_fx.c b/lib_dec/ivas_tcx_core_dec_fx.c
index eb5c88faaf648cfc673f81b72ca5ff994d5e188d..55327766acb3b53f7f3fa694915b7e8abe7f3a39 100644
--- a/lib_dec/ivas_tcx_core_dec_fx.c
+++ b/lib_dec/ivas_tcx_core_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
diff --git a/lib_dec/ivas_td_low_rate_dec_fx.c b/lib_dec/ivas_td_low_rate_dec_fx.c
index a5141e3986d6452dcdb4a6b769b0acc620d0b513..3dcb6e31a2931d0ed76e35e3894a6ec9e1810111 100644
--- a/lib_dec/ivas_td_low_rate_dec_fx.c
+++ b/lib_dec/ivas_td_low_rate_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_dec/jbm_jb4_circularbuffer.h b/lib_dec/jbm_jb4_circularbuffer.h
index 4817f16497928d81b274c7d7664cb884fde39a2b..0f24f3b29857ac8ce5117acb4d4b44cb98a466ad 100644
--- a/lib_dec/jbm_jb4_circularbuffer.h
+++ b/lib_dec/jbm_jb4_circularbuffer.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_dec/jbm_jb4_circularbuffer_fx.c b/lib_dec/jbm_jb4_circularbuffer_fx.c
index b26e8c49ed68bb1b0a947415f3fa8cbd510ab1fd..3ded7da03e868697a7115e2cbe1324ab91e399e7 100644
--- a/lib_dec/jbm_jb4_circularbuffer_fx.c
+++ b/lib_dec/jbm_jb4_circularbuffer_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_dec/jbm_jb4_inputbuffer.h b/lib_dec/jbm_jb4_inputbuffer.h
index efd782488481a7dd32c6931518c50d40ebc11825..9f9fda9dae2bd52cf8098f87370a1fd3d15028ca 100644
--- a/lib_dec/jbm_jb4_inputbuffer.h
+++ b/lib_dec/jbm_jb4_inputbuffer.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_dec/jbm_jb4_inputbuffer_fx.c b/lib_dec/jbm_jb4_inputbuffer_fx.c
index 9dc8130228224d55546cd976c8a42308a82e656f..b255600510b4aa2c246418a1385cf9453493ae2c 100644
--- a/lib_dec/jbm_jb4_inputbuffer_fx.c
+++ b/lib_dec/jbm_jb4_inputbuffer_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_dec/jbm_jb4_jmf.h b/lib_dec/jbm_jb4_jmf.h
index a55991780460d49e2791a182bbd7b1e1d7321888..0a5bac125a00f7c21f1aaffd3a67cc399ffe3e1c 100644
--- a/lib_dec/jbm_jb4_jmf.h
+++ b/lib_dec/jbm_jb4_jmf.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_dec/jbm_jb4_jmf_fx.c b/lib_dec/jbm_jb4_jmf_fx.c
index ba17c5cd804ffd1880655c0d59d0a232b4e793f5..3f909c5830af981ca90ca38ea11e6e3a18dcaabc 100644
--- a/lib_dec/jbm_jb4_jmf_fx.c
+++ b/lib_dec/jbm_jb4_jmf_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_dec/jbm_jb4sb.h b/lib_dec/jbm_jb4sb.h
index ced9edadbf025e6f28d8793405772e372ff71093..8b35fac9bcbd551d0f7817d2754b3cc885253d33 100644
--- a/lib_dec/jbm_jb4sb.h
+++ b/lib_dec/jbm_jb4sb.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
@@ -86,9 +58,7 @@ void JB4_Destroy( JB4_HANDLE *ph );
ivas_error JB4_Init( JB4_HANDLE h, const Word16 safetyMargin );
-#ifdef NONBE_1122_KEEP_EVS_MODE_UNCHANGED
void JB4_TMP_SetEvsCompatFlag( JB4_HANDLE h );
-#endif
JB4_DATAUNIT_HANDLE JB4_AllocDataUnit( JB4_HANDLE h );
diff --git a/lib_dec/jbm_jb4sb_fx.c b/lib_dec/jbm_jb4sb_fx.c
index e93e4f7cfd5a2b650645ba6f0c1a9f4b472dbf8f..64beb6658fe85b745d79491bedeb481887907751 100644
--- a/lib_dec/jbm_jb4sb_fx.c
+++ b/lib_dec/jbm_jb4sb_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
@@ -197,9 +169,7 @@ struct JB4
JB4_DATAUNIT_HANDLE freeMemorySlots[MAX_JBM_SLOTS];
UWord16 nFreeMemorySlots;
/*@} */
-#ifdef NONBE_1122_KEEP_EVS_MODE_UNCHANGED
bool evsMode;
-#endif
}; /* JB4 */
@@ -325,10 +295,8 @@ ivas_error JB4_Create(
}
h->nFreeMemorySlots = MAX_JBM_SLOTS;
move16();
-#ifdef NONBE_1122_KEEP_EVS_MODE_UNCHANGED
h->evsMode = false;
move16();
-#endif
*ph = h;
return IVAS_ERR_OK;
@@ -413,13 +381,11 @@ ivas_error JB4_Init(
return IVAS_ERR_OK;
}
-#ifdef NONBE_1122_KEEP_EVS_MODE_UNCHANGED
void JB4_TMP_SetEvsCompatFlag( JB4_HANDLE h )
{
h->evsMode = true;
move16();
}
-#endif
/* Returns a memory slot to store a new data unit */
JB4_DATAUNIT_HANDLE JB4_AllocDataUnit(
@@ -773,15 +739,11 @@ static void JB4_targetPlayoutDelay(
move32();
move32();
-#ifdef NONBE_1122_KEEP_EVS_MODE_UNCHANGED
IF( !h->evsMode )
{
-#endif
*targetDtx = JB4_MAX( *targetDtx, (UWord32) h->safetyMargin );
move32();
-#ifdef NONBE_1122_KEEP_EVS_MODE_UNCHANGED
}
-#endif
*targetStartUp = JB4_MAX( *targetStartUp, (UWord32) h->safetyMargin );
move32();
diff --git a/lib_dec/jbm_pcmdsp_apa.h b/lib_dec/jbm_pcmdsp_apa.h
index 220d301a7d74300aa71fbd6e76df17c9894c5dfa..fa8c7fea742be97644b1e9615a63a2568e667143 100644
--- a/lib_dec/jbm_pcmdsp_apa.h
+++ b/lib_dec/jbm_pcmdsp_apa.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_dec/jbm_pcmdsp_apa_fx.c b/lib_dec/jbm_pcmdsp_apa_fx.c
index 9a7a88bf10b2245c2e4040387afb3831456e9ec3..41eae3281fc03995693fe89148301389d22612af 100644
--- a/lib_dec/jbm_pcmdsp_apa_fx.c
+++ b/lib_dec/jbm_pcmdsp_apa_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
@@ -881,16 +853,6 @@ UWord8 apa_exec_fx(
move32();
}
-#ifdef DEBUG_APA_SILENCE_NON_SCALED
- IF( l_in == *l_out )
- {
- set_s( a_out, 0, *l_out );
- }
- ELSE
- {
- set_s( a_out, INT16_MAX, *l_out );
- }
-#endif
return 0;
}
diff --git a/lib_dec/jbm_pcmdsp_fifo.h b/lib_dec/jbm_pcmdsp_fifo.h
index 77e9b655ca4ecc2dd45caa43eb878aaa039058f9..b6d41a8b7dd97edcf5f23297d31ddff3d93c784d 100644
--- a/lib_dec/jbm_pcmdsp_fifo.h
+++ b/lib_dec/jbm_pcmdsp_fifo.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_dec/jbm_pcmdsp_similarityestimation.h b/lib_dec/jbm_pcmdsp_similarityestimation.h
index 7a6d9f6da8e161c0e4fd8efb3b1484a8093d02f1..a67b0f96b895fde27519cb7122026bcb593b88ec 100644
--- a/lib_dec/jbm_pcmdsp_similarityestimation.h
+++ b/lib_dec/jbm_pcmdsp_similarityestimation.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_dec/jbm_pcmdsp_similarityestimation_fx.c b/lib_dec/jbm_pcmdsp_similarityestimation_fx.c
index e088a38a6390f5840a20557b89e180694e29b0e9..90f5a849a2f0b708c8ee6ef6a40bd2d092715799 100644
--- a/lib_dec/jbm_pcmdsp_similarityestimation_fx.c
+++ b/lib_dec/jbm_pcmdsp_similarityestimation_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_dec/jbm_pcmdsp_window.h b/lib_dec/jbm_pcmdsp_window.h
index c18d11ec7e06412fe3f9e595845bc1c453c7fbd3..f60a7fdc442fcae0d7e06ee234a850901ae8b527 100644
--- a/lib_dec/jbm_pcmdsp_window.h
+++ b/lib_dec/jbm_pcmdsp_window.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_dec/jbm_pcmdsp_window_fx.c b/lib_dec/jbm_pcmdsp_window_fx.c
index 73faf37e21824d3693b98f462c10f5d2d4e3367d..6e333dd71f374eba1560ea7046154fce2441e101 100644
--- a/lib_dec/jbm_pcmdsp_window_fx.c
+++ b/lib_dec/jbm_pcmdsp_window_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_dec/lead_deindexing_fx.c b/lib_dec/lead_deindexing_fx.c
index 3773990a1f55df3b3d9e1dd0201615ebb13fd001..c0b52d03d328784f09903c473b7525fc7d2ff2d9 100644
--- a/lib_dec/lead_deindexing_fx.c
+++ b/lib_dec/lead_deindexing_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/lib_dec.h b/lib_dec/lib_dec.h
index 89d2e967cb588867807e5507d94144950f9cef59..aad725f7324cae8c6bdf3635b812513d283e3cc1 100644
--- a/lib_dec/lib_dec.h
+++ b/lib_dec/lib_dec.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#ifndef LIB_DEC_H
#define LIB_DEC_H
@@ -128,13 +100,11 @@ ivas_error IVAS_DEC_Configure(
const bool delayCompensationEnabled /* i : enable delay compensation */
);
-#ifdef FIX_FMSW_DEC
ivas_error IVAS_DEC_Restart(
IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */
const IVAS_DEC_MODE mode /* i : compatibility mode (EVS or IVAS) */
);
-#endif
void IVAS_DEC_Close(
IVAS_DEC_HANDLE *phIvasDec /* i/o: pointer to IVAS decoder handle */
);
@@ -289,17 +259,6 @@ ivas_error IVAS_DEC_VoIP_SetScale(
const Word16 scale /* i : TSM scale to set */
);
-#ifdef VARIABLE_SPEED_DECODING
-ivas_error IVAS_DEC_EnableTsm(
- IVAS_DEC_HANDLE hIvasDec /* i/o: IVAS decoder handle */
-);
-
-ivas_error IVAS_DEC_TSM_SetQuality(
- IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */
- const Word16 quality /* i : target TSM quality Q14 */
-);
-
-#endif
/*! r: error code */
ivas_error IVAS_DEC_VoIP_GetSamples(
IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */
diff --git a/lib_dec/lib_dec_fx.c b/lib_dec/lib_dec_fx.c
index d23cc1e9414785d193905bbc3a6a324c24f77b08..02b7e2beb533afba053edfef831587ff5559eaba 100644
--- a/lib_dec/lib_dec_fx.c
+++ b/lib_dec/lib_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include "lib_dec.h"
#include "ivas_cnst.h"
@@ -81,10 +53,7 @@ struct IVAS_DEC
bool isInitialized;
Word16 bitstreamformat; /* Bitstream format flag (G.192/MIME/VOIP_G192_RTP/VOIP_RTPDUMP) */
-#ifdef DEBUGGING
- bool Opt_VOIP; /* flag indicating VOIP mode with JBM */
-#endif
- Word16 tsm_scale; /* scale for TSM operation */
+ Word16 tsm_scale; /* scale for TSM operation */
Word16 tsm_max_scaling;
Word16 timeScalingDone; /* have we done already one TSM in a 20ms frame? */
Word16 tsm_quality; /*Q14*/
@@ -129,8 +98,6 @@ static Word16 ivas_dec_split_rend_cldfb_in( const RENDERER_TYPE renderer_type );
static void update_voip_rendered20ms( IVAS_DEC_HANDLE hIvasDec, const Word16 nSamplesRendered );
-#ifdef FIX_FMSW_DEC
-
/*---------------------------------------------------------------------*
* ivas_dec_handle_init()
*
@@ -167,7 +134,6 @@ static ivas_error ivas_dec_handle_init(
move16();
move16();
-#ifdef FIX_FMSW_DEC_2
st_ivas->last_ivas_format = UNDEFINED_FORMAT;
st_ivas->nSCE = 0;
st_ivas->nCPE = 0;
@@ -175,7 +141,6 @@ static ivas_error ivas_dec_handle_init(
move16();
move16();
-#endif
IF( EQ_16( mode, IVAS_DEC_MODE_EVS ) )
{
st_ivas->element_mode_init = EVS_MONO;
@@ -217,7 +182,6 @@ static ivas_error ivas_dec_handle_init(
return IVAS_ERR_WRONG_PARAMS;
}
-#endif
/*---------------------------------------------------------------------*
* IVAS_DEC_Open()
@@ -239,13 +203,11 @@ ivas_error IVAS_DEC_Open(
return IVAS_ERR_UNEXPECTED_NULL_POINTER;
}
-#ifdef FIX_FMSW_DEC
if ( *phIvasDec != NULL )
{
return IVAS_ERR_WRONG_PARAMS;
}
-#endif
/*-----------------------------------------------------------------*
* Allocate and initialize IVAS application decoder handle
*-----------------------------------------------------------------*/
@@ -295,10 +257,6 @@ ivas_error IVAS_DEC_Open(
hIvasDec->bitstreamformat = G192;
move16();
-#ifdef DEBUGGING
- hIvasDec->Opt_VOIP = 0;
- move16();
-#endif
hIvasDec->amrwb_rfc4867_flag = -1;
hIvasDec->prev_ft_speech = 1; /* RXDTX handler previous frametype flag for G.192 format AMRWB SID_FIRST detection */
hIvasDec->CNG = 0; /* RXDTX handler CNG = 1, no CNG = 0*/
@@ -326,79 +284,16 @@ ivas_error IVAS_DEC_Open(
st_ivas = hIvasDec->st_ivas;
-#ifdef FIX_FMSW_DEC
st_ivas->restartNeeded = 0;
move16();
-#endif
/* initialize Decoder Config. handle */
init_decoder_config( hIvasDec->st_ivas->hDecoderConfig );
-#ifdef FIX_FMSW_DEC
/* Set IVAS decoder handles to NULL + set high-level parameters */
return ivas_dec_handle_init( st_ivas, mode, &( hIvasDec->hasDecodedFirstGoodFrame ) );
-#else
- /* initialize pointers to handles to NULL */
- ivas_initialize_handles_dec( st_ivas );
-
- st_ivas->restartNeeded = 0;
- move16();
-
- /* set high-level parameters */
- st_ivas->codec_mode = 0; /* unknown before first frame */
- st_ivas->transport_config = IVAS_AUDIO_CONFIG_INVALID;
- st_ivas->intern_config = IVAS_AUDIO_CONFIG_INVALID;
- st_ivas->writeFECoffset = 0;
- st_ivas->sba_analysis_order = 0; /* not really used in EVS mode, but initialize here to fix MSAN complaint */
- move16();
- move16();
- move16();
- move16();
- move16();
-
- IF( EQ_16( mode, IVAS_DEC_MODE_EVS ) )
- {
- st_ivas->element_mode_init = EVS_MONO;
- st_ivas->ivas_format = MONO_FORMAT;
- hIvasDec->hasDecodedFirstGoodFrame = true; /* Functionality to suppress output for initial lost frames is disabled in EVS operation */
- move16();
- move16();
- move16();
-
- return IVAS_ERR_OK;
- }
- ELSE IF( EQ_16( mode, IVAS_DEC_MODE_IVAS ) )
- {
- st_ivas->element_mode_init = -1;
- st_ivas->ivas_format = UNDEFINED_FORMAT;
- st_ivas->renderer_type = RENDERER_DISABLE;
- st_ivas->ini_frame = 0;
- st_ivas->ini_active_frame = 0;
-
- st_ivas->ism_mode = ISM_MODE_NONE;
- st_ivas->mc_mode = MC_MODE_NONE;
-
- st_ivas->sba_order = 0;
- st_ivas->sba_planar = 0;
-
- move16();
- move16();
- move16();
- move16();
- move16();
- move16();
- move16();
- move16();
- move16();
-
- return IVAS_ERR_OK;
- }
-
- return IVAS_ERR_WRONG_PARAMS;
-#endif
}
-#ifdef FIX_FMSW_DEC
/*---------------------------------------------------------------------*
* IVAS_DEC_Restart()
@@ -423,19 +318,14 @@ ivas_error IVAS_DEC_Restart(
{
return IVAS_ERR_OK;
}
-#ifdef FIX_FMSW_DEC_2
ELSE
{
/* switching between EVS and IVAS signaled in RTP */
hIvasDec->st_ivas->restartNeeded = 1;
move16();
}
-#else
- return IVAS_ERR_WRONG_PARAMS;
-#endif
}
-#ifdef FIX_FMSW_DEC_2
IF( NE_16( hIvasDec->mode, mode ) ) /* handle switching between EVS and IVAS */
{
/* initialize JBM */
@@ -452,7 +342,6 @@ ivas_error IVAS_DEC_Restart(
move16();
}
-#endif
hIvasDec->mode = mode;
move16();
@@ -466,7 +355,6 @@ ivas_error IVAS_DEC_Restart(
return ivas_dec_handle_init( hIvasDec->st_ivas, mode, &( hIvasDec->hasDecodedFirstGoodFrame ) );
}
-#endif
/*-------------------------------------------------------------------------*
* isar_set_split_rend_setup()
@@ -588,12 +476,7 @@ void IVAS_DEC_Close(
ivas_destroy_handle_isar( &( *phIvasDec )->st_ivas->hSplitBinRend );
/* destroy IVAS decoder handles */
-#ifdef FIX_FMSW_DEC
ivas_destroy_dec_fx( &( *phIvasDec )->st_ivas );
-#else
- ivas_destroy_dec_fx( ( *phIvasDec )->st_ivas );
- ( *phIvasDec )->st_ivas = NULL;
-#endif
}
apa_exit( &( *phIvasDec )->hTimeScaler );
@@ -1098,9 +981,6 @@ ivas_error IVAS_DEC_EnableVoIP(
hDecoderConfig = hIvasDec->st_ivas->hDecoderConfig;
-#ifdef DEBUGGING
- hIvasDec->Opt_VOIP = 1;
-#endif
hDecoderConfig->Opt_tsm = 1;
move16();
move16();
@@ -1148,12 +1028,10 @@ ivas_error IVAS_DEC_EnableVoIP(
return IVAS_ERR_FAILED_ALLOC;
}
-#ifdef NONBE_1122_KEEP_EVS_MODE_UNCHANGED
if ( EQ_16( hIvasDec->mode, IVAS_DEC_MODE_EVS ) )
{
JB4_TMP_SetEvsCompatFlag( hIvasDec->hVoIP->hJBM );
}
-#endif
/* init flush buffer (needed for binaural outputs) */
IF( ( error = create_flush_buffer_fx( hIvasDec ) ) != IVAS_ERR_OK )
@@ -1771,9 +1649,7 @@ ivas_error IVAS_DEC_GetSplitBinauralBitstream(
scale_sig32( p_head_pose_buf[i], numSamplesPerChannelToOutput, sub( Q11, Q_out[i] ) ); // Q11
}
-#ifndef DISABLE_LIMITER
ivas_limiter_dec_fx( st_ivas->hLimiter, p_head_pose_buf, st_ivas->hDecoderConfig->nchan_out, numSamplesPerChannelToOutput, st_ivas->BER_detect, Q11 );
-#endif
ivas_syn_output_fx( p_head_pose_buf, Q11, numSamplesPerChannelToOutput, st_ivas->hDecoderConfig->nchan_out, pcmBuf_out );
}
@@ -3670,90 +3546,6 @@ ivas_error IVAS_DEC_VoIP_SetScale(
return IVAS_ERR_OK;
}
-#ifdef VARIABLE_SPEED_DECODING
-
-/*---------------------------------------------------------------------*
- * IVAS_DEC_EnableTsm( )
- *
- * Enable Time-Scale Modification (TSM)
- *---------------------------------------------------------------------*/
-
-ivas_error IVAS_DEC_EnableTsm(
- IVAS_DEC_HANDLE hIvasDec /* i/o: IVAS decoder handle */
-)
-{
- AUDIO_CONFIG output_config;
- ivas_error error;
-
- test();
- IF( hIvasDec == NULL || hIvasDec->st_ivas == NULL )
- {
- return IVAS_ERR_UNEXPECTED_NULL_POINTER;
- }
-
- hIvasDec->st_ivas->hDecoderConfig->Opt_tsm = 1;
- move16();
-
- /* Init flush buffer if necessary (only needed for binaural) */
- output_config = hIvasDec->st_ivas->hDecoderConfig->output_config;
-
- test();
- test();
- test();
- test();
- test();
- IF( hIvasDec->flushbuffer == NULL && ( EQ_32( output_config, IVAS_AUDIO_CONFIG_BINAURAL ) || EQ_32( output_config == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_IR ) || EQ_32( output_config == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB ) || EQ_32( output_config == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED ) || EQ_32( output_config, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) ) )
- {
- IF( ( error = create_flush_buffer( hIvasDec ) ) != IVAS_ERR_OK )
- {
- return error;
- }
- }
-
- return IVAS_ERR_OK;
-}
-
-
-/*---------------------------------------------------------------------*
- * IVAS_DEC_TSM_SetQuality( )
- *
- * set the quality theshold for the time scale modiciation that is used
- * to determine if the TSM yielded a signal that satisfies the minimum
- * quality requirements.
- * quality is lower limit for minimum quality
- * Range is [-2;2] - where positive values allow
- * only pasting with same phase information
- * Negative values would yield cross phased pasting
- * When not setting the minimum quality with this function the default
- * value used is 1.0f
- *
- *---------------------------------------------------------------------*/
-
-ivas_error IVAS_DEC_TSM_SetQuality(
- IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */
- const Word16 quality /* i : target TSM quality Q14 */
-)
-{
- test();
- IF( hIvasDec == NULL || hIvasDec->st_ivas == NULL )
- {
- return IVAS_ERR_UNEXPECTED_NULL_POINTER;
- }
-
- IF( !hIvasDec->st_ivas->hDecoderConfig->Opt_tsm )
- {
- return IVAS_ERR_TSM_NOT_ENABLED;
- }
- ELSE
- {
- hIvasDec->tsm_quality = quality; // Q14
- move16();
- }
-
- return IVAS_ERR_OK;
-}
-
-#endif
/*---------------------------------------------------------------------*
* renderer_type_to_mode()
@@ -4331,12 +4123,6 @@ ivas_error IVAS_DEC_GetEditableParameters(
hIvasEditableParameters->num_obj = 0;
move16();
}
-#ifdef DEBUGGING
- ELSE
- {
- assert( 0 && "This should never happen!" );
- }
-#endif
}
ELSE IF( EQ_32( st_ivas->ivas_format, MASA_ISM_FORMAT ) || ( EQ_32( st_ivas->ivas_format, MASA_FORMAT ) && GT_16( st_ivas->nchan_ism, 0 ) ) )
{
@@ -4407,12 +4193,6 @@ ivas_error IVAS_DEC_GetEditableParameters(
hIvasEditableParameters->num_obj = 0;
move16();
}
-#ifdef DEBUGGING
- ELSE
- {
- assert( 0 && "This should never happen!" );
- }
-#endif
}
return IVAS_ERR_OK;
@@ -4468,9 +4248,6 @@ ivas_error IVAS_DEC_SetEditableParameters(
test();
IF( EQ_32( ism_mode, ISM_MODE_DISC ) || EQ_32( ism_mode, ISM_SBA_MODE_DISC ) )
{
-#ifdef DEBUGGING
- assert( hIvasEditableParameters.num_obj == st_ivas->nchan_ism );
-#endif
FOR( obj = 0; obj < hIvasEditableParameters.num_obj; obj++ )
{
st_ivas->hIsmMetaData[obj]->edited_azimuth_fx = hIvasEditableParameters.ism_metadata[obj].azimuth_fx;
@@ -4513,9 +4290,6 @@ ivas_error IVAS_DEC_SetEditableParameters(
}
ELSE IF( EQ_32( ism_mode, ISM_MODE_PARAM ) )
{
-#ifdef DEBUGGING
- assert( hIvasEditableParameters.num_obj == st_ivas->nchan_ism );
-#endif
FOR( obj = 0; obj < hIvasEditableParameters.num_obj; obj++ )
{
st_ivas->hParamIsmDec->edited_azimuth_values_fx[obj] = hIvasEditableParameters.ism_metadata[obj].azimuth_fx;
@@ -4581,21 +4355,12 @@ ivas_error IVAS_DEC_SetEditableParameters(
return IVAS_ERR_OBJECTS_EDITING_NOT_SUPPORTED;
}
}
-#ifdef DEBUGGING
- ELSE
- {
- assert( 0 && "This should never happen!" );
- }
-#endif
}
ELSE IF( EQ_16( st_ivas->ivas_format, MASA_ISM_FORMAT ) && ( EQ_16( ism_mode, ISM_MASA_MODE_PARAM_ONE_OBJ ) || EQ_16( ism_mode, ISM_MASA_MODE_DISC ) ) )
{
Word32 id_th;
Word32 threshold_azi, threshold_ele;
-#ifdef DEBUGGING
- assert( hIvasEditableParameters.num_obj == st_ivas->nchan_ism );
-#endif
FOR( obj = 0; obj < hIvasEditableParameters.num_obj; obj++ )
{
IF( st_ivas->hMasaIsmData != NULL )
@@ -5104,9 +4869,7 @@ IF( hIvasDec->hasDecodedFirstGoodFrame &&splitRendBits != NULL )
scale_sig32( p_head_pose_buf[i], *nSamplesRendered, sub( Q11, Q_out[i] ) ); // Q11
}
-#ifndef DISABLE_LIMITER
ivas_limiter_dec_fx( st_ivas->hLimiter, p_head_pose_buf, st_ivas->hDecoderConfig->nchan_out, *nSamplesRendered, st_ivas->BER_detect, Q11 );
-#endif
ivas_syn_output_fx( p_head_pose_buf, Q11, *nSamplesRendered, st_ivas->hDecoderConfig->nchan_out, pcmBuf );
}
@@ -5269,10 +5032,8 @@ ivas_error IVAS_DEC_Flush(
return IVAS_ERR_UNEXPECTED_NULL_POINTER;
}
-#ifdef TMP_1342_WORKAROUND_DEC_FLUSH_BROKEN_IN_SR
hIvasDec->st_ivas->flushing = 1;
move16();
-#endif
*nSamplesFlushed = s_min( nSamplesPerChannel, hIvasDec->nSamplesAvailableNext );
move16();
@@ -5295,10 +5056,8 @@ ivas_error IVAS_DEC_Flush(
move16();
}
-#ifdef TMP_1342_WORKAROUND_DEC_FLUSH_BROKEN_IN_SR
hIvasDec->st_ivas->flushing = 0;
move16();
-#endif
return error;
}
@@ -5830,10 +5589,8 @@ static ivas_error evs_dec_main_fx(
st_ivas->BER_detect = hCoreCoder[0]->BER_detect;
move16();
-#ifdef FIX_FMSW_DEC
st_ivas->last_ivas_format = MONO_FORMAT;
move16();
-#endif
/*if ( st_ivas->hDecoderConfig->Opt_tsm && st_ivas->hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_MONO )*/
{
@@ -6589,25 +6346,6 @@ static void setDiegeticInputPI(
return;
}
-#ifdef DEBUGGING
-
-/*---------------------------------------------------------------------*
- * fixedToFloat( )
- *
- *
- *---------------------------------------------------------------------*/
-
-static float fixedToFloat(
- const Word32 i,
- const Word16 Q )
-{
- if ( Q < 0 )
- return ( i * (float) ( ( 1LL ) << ( -Q ) ) );
- else
- return (float) ( i ) / (float) ( 1LL << Q );
-}
-
-#endif
/*---------------------------------------------------------------------*
* IVAS_DEC_FeedPiDataToDecoder( )
@@ -6644,13 +6382,6 @@ ivas_error IVAS_DEC_FeedPiDataToDecoder(
case IVAS_PI_SCENE_ORIENTATION:
{
IVAS_QUATERNION *quat = &piData->data.scene.orientation;
-#ifdef DEBUGGING
- fprintf( stdout, "PI_SCENE_ORIENTATION : %f, %f, %f, %f\n",
- fixedToFloat( quat->w_fx, Q15 ),
- fixedToFloat( quat->x_fx, Q15 ),
- fixedToFloat( quat->y_fx, Q15 ),
- fixedToFloat( quat->z_fx, Q15 ) );
-#endif
error = feedSinglePIorientation( hIvasDec, true, quat );
}
BREAK;
@@ -6658,13 +6389,6 @@ ivas_error IVAS_DEC_FeedPiDataToDecoder(
case IVAS_PI_DEVICE_ORIENTATION_COMPENSATED:
{
IVAS_QUATERNION *quat = &piData->data.deviceCompensated.orientation;
-#ifdef DEBUGGING
- fprintf( stdout, "PI_DEVICE_ORIENTATION : %f, %f, %f, %f\n",
- fixedToFloat( quat->w_fx, Q15 ),
- fixedToFloat( quat->x_fx, Q15 ),
- fixedToFloat( quat->y_fx, Q15 ),
- fixedToFloat( quat->z_fx, Q15 ) );
-#endif
error = feedSinglePIorientation( hIvasDec, true, quat );
}
BREAK;
@@ -6674,9 +6398,6 @@ ivas_error IVAS_DEC_FeedPiDataToDecoder(
UWord16 aeid;
aeid = piData->data.acousticEnv.aeid;
move16();
-#ifdef DEBUGGING
- fprintf( stdout, "PI_ACOUSTIC_ENVIRONMENT : AEID : %d\n", aeid );
-#endif
test();
test();
IF( piData->data.acousticEnv.availLateReverb && st_ivas->hRenderConfig != NULL && aeid != st_ivas->hRenderConfig->roomAcoustics.aeID )
@@ -6688,9 +6409,6 @@ ivas_error IVAS_DEC_FeedPiDataToDecoder(
case IVAS_PI_DIEGETIC_TYPE:
{
-#ifdef DEBUGGING
- fprintf( stdout, "PI_DIEGETIC_TYPE : %d, %d, %d, %d, %d\n", piData->data.digeticIndicator.isDiegetic[0], piData->data.digeticIndicator.isDiegetic[1], piData->data.digeticIndicator.isDiegetic[2], piData->data.digeticIndicator.isDiegetic[3], piData->data.digeticIndicator.isDiegetic[4] );
-#endif
setDiegeticInputPI( hIvasDec, piData->data.digeticIndicator.isDiegetic );
}
BREAK;
diff --git a/lib_dec/lp_exc_d_fx.c b/lib_dec/lp_exc_d_fx.c
index 0ce010cebc579ba4be26a60f625a63a56f7b65f7..4ae78f7249e56f06ac5deaea1c75338b5ff454ac 100644
--- a/lib_dec/lp_exc_d_fx.c
+++ b/lib_dec/lp_exc_d_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/lsf_dec_fx.c b/lib_dec/lsf_dec_fx.c
index b44441aaa07e70b31e1286fa30fc740e20454639..4ebfad3600f0a2fe70b6229c595236928b3e512a 100644
--- a/lib_dec/lsf_dec_fx.c
+++ b/lib_dec/lsf_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/lsf_msvq_ma_dec_fx.c b/lib_dec/lsf_msvq_ma_dec_fx.c
index 968f57a4282cff9bfd8ea76151d642771c1c365f..0ed2b86d80ed6a606b7a411c3218cb30541d8ed1 100644
--- a/lib_dec/lsf_msvq_ma_dec_fx.c
+++ b/lib_dec/lsf_msvq_ma_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/nelp_dec_fx.c b/lib_dec/nelp_dec_fx.c
index ff9c44bcdd4a32ccaabcfb29f89110cc31ca6c14..c1605e297637a3122ea0f5c68d588486de94892e 100644
--- a/lib_dec/nelp_dec_fx.c
+++ b/lib_dec/nelp_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/peak_vq_dec_fx.c b/lib_dec/peak_vq_dec_fx.c
index cf12153fd5945c5d967a0bc5274c8a1fe8c35b9a..b019012d88de6441d7e26ad9567bbbcf78fe087e 100644
--- a/lib_dec/peak_vq_dec_fx.c
+++ b/lib_dec/peak_vq_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/pit_dec_fx.c b/lib_dec/pit_dec_fx.c
index 98dfc5d202001b776c61f6383d7dfbced4d19556..2342ef9fe1fb7237a4e1ff73d5fa70f2a64f5589 100644
--- a/lib_dec/pit_dec_fx.c
+++ b/lib_dec/pit_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/pitch_extr_fx.c b/lib_dec/pitch_extr_fx.c
index bddaac82bdb6f3230c176188406becf5a31ba6df..2e274a83e04eea9e0f2834e9f9358a1b17e36078 100644
--- a/lib_dec/pitch_extr_fx.c
+++ b/lib_dec/pitch_extr_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/post_dec_fx.c b/lib_dec/post_dec_fx.c
index 3b1b5336aaeba8e96974323bec46e3aaa5e89371..696ebe20a6e9a0f9ba032cb3fdb16b7b76a22ae5 100644
--- a/lib_dec/post_dec_fx.c
+++ b/lib_dec/post_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/ppp_dec_fx.c b/lib_dec/ppp_dec_fx.c
index a9254f68c0e43d7b976d7e0bf1535a5e915fbdc9..cb35b8de1767f82c4bf951e978ab2334f91b2685 100644
--- a/lib_dec/ppp_dec_fx.c
+++ b/lib_dec/ppp_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/pvq_core_dec_fx.c b/lib_dec/pvq_core_dec_fx.c
index 6673c9f33439291686a682215ccebb484064d89f..4c544265d2a8d69f0081932991c4a90d2e94f0ed 100644
--- a/lib_dec/pvq_core_dec_fx.c
+++ b/lib_dec/pvq_core_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/pvq_decode_fx.c b/lib_dec/pvq_decode_fx.c
index 30fb67c356341fe87bd84ae6fe58934541f6b4e4..ed3b28c4a4a0541bc5c5ae12f73d07362daed188 100644
--- a/lib_dec/pvq_decode_fx.c
+++ b/lib_dec/pvq_decode_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/range_dec_fx.c b/lib_dec/range_dec_fx.c
index fc68dee3521021ed909c631a209cef8c762db8d6..b148c220cc2b9192bb03dfe02ea5fac15868b153 100644
--- a/lib_dec/range_dec_fx.c
+++ b/lib_dec/range_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/re8_dec_fx.c b/lib_dec/re8_dec_fx.c
index 7c88bea92d8ca67b5a0cfcaea50bc578d3915c94..0049314281d0d51b91ee8f73157358efac9ce7f7 100644
--- a/lib_dec/re8_dec_fx.c
+++ b/lib_dec/re8_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/rom_dec.h b/lib_dec/rom_dec.h
index f5eed905ba5d6457f3c67389849c090395161dc4..53a2e8ef7ad8b9252f377675d515f9294a0a3f07 100644
--- a/lib_dec/rom_dec.h
+++ b/lib_dec/rom_dec.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_dec/rom_dec_fx.c b/lib_dec/rom_dec_fx.c
index a8254a6381c5a10c4cfda992dffb70160eefdf9f..cd4017a7fc6fe767a71d91458f30683ba57b6b66 100644
--- a/lib_dec/rom_dec_fx.c
+++ b/lib_dec/rom_dec_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_dec/rst_dec_fx.c b/lib_dec/rst_dec_fx.c
index cce198e33850939caae17e89a855e7aa2fb3ab84..8c06121814c3e6ab15097136463bc7ce62416796 100644
--- a/lib_dec/rst_dec_fx.c
+++ b/lib_dec/rst_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/stat_dec.h b/lib_dec/stat_dec.h
index 58056843eb6fc00397370916450dd4c7d3b2be26..a8ae11a2240a8a09d80b46b8f93e7708abea3bb2 100644
--- a/lib_dec/stat_dec.h
+++ b/lib_dec/stat_dec.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
@@ -1016,11 +988,8 @@ typedef struct Decoder_State
* Common parameters
*----------------------------------------------------------------------------------*/
- Word16 idchan; /* channel ID (audio channel number) */
- Word16 element_mode; /* element mode */
-#ifdef DEBUGGING
- Word16 id_element; /* element ID */
-#endif
+ Word16 idchan; /* channel ID (audio channel number) */
+ Word16 element_mode; /* element mode */
Word32 element_brate; /* element bitrate */
Word16 codec_mode; /* Mode 1 or 2 */
Word16 mdct_sw_enable; /* MDCT switching enable flag */
diff --git a/lib_dec/stat_noise_uv_dec_fx.c b/lib_dec/stat_noise_uv_dec_fx.c
index b36fec665a0a6ef2d91aa16db1d907a175c0694f..c543645721661220d48cc8cf886ffa4cb9e05490 100644
--- a/lib_dec/stat_noise_uv_dec_fx.c
+++ b/lib_dec/stat_noise_uv_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/swb_bwe_dec_fx.c b/lib_dec/swb_bwe_dec_fx.c
index f90928a965b13605ef5b9aa3a4be8359575fba24..b02686bbeda2aa9e47561d5f18c3579533a769b0 100644
--- a/lib_dec/swb_bwe_dec_fx.c
+++ b/lib_dec/swb_bwe_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/swb_bwe_dec_hr_fx.c b/lib_dec/swb_bwe_dec_hr_fx.c
index ed4fcbbccef5bf80ab1f7221f538c4c39d373e54..609bfda766043d69c9479c6b08672f0e51ea8cbe 100644
--- a/lib_dec/swb_bwe_dec_hr_fx.c
+++ b/lib_dec/swb_bwe_dec_hr_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/swb_bwe_dec_lr_fx.c b/lib_dec/swb_bwe_dec_lr_fx.c
index c7c94adacf19b8170e9f3c4c9a44f0a259362ef6..c568c490f53786af4a6b6e461fbc3bb5441a4599 100644
--- a/lib_dec/swb_bwe_dec_lr_fx.c
+++ b/lib_dec/swb_bwe_dec_lr_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/swb_tbe_dec_fx.c b/lib_dec/swb_tbe_dec_fx.c
index c8dfc5a5da7ff5117e071c1e13c9f604ee627a50..1846fd8f1e1b27269b9db00a3ed98a35f9045da7 100644
--- a/lib_dec/swb_tbe_dec_fx.c
+++ b/lib_dec/swb_tbe_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/syn_outp_fx.c b/lib_dec/syn_outp_fx.c
index 82d5b1cabaf1276e6d4dbadd29693bfa3d10fc9a..db405459cad49035b9bc34f22c1805c6653ae7e0 100644
--- a/lib_dec/syn_outp_fx.c
+++ b/lib_dec/syn_outp_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/tcq_core_dec_fx.c b/lib_dec/tcq_core_dec_fx.c
index adebdb7039093760ac8c8454f311dc2e72685e10..2fe362e0ea84f84e5e63b7325613764d34ce394e 100644
--- a/lib_dec/tcq_core_dec_fx.c
+++ b/lib_dec/tcq_core_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/tcx_utils_dec_fx.c b/lib_dec/tcx_utils_dec_fx.c
index 2c35ec0bcfca62730e61a17a1f1b0dcc7ac1a345..517e874c93e383e3d41e603046b3c923833e8847 100644
--- a/lib_dec/tcx_utils_dec_fx.c
+++ b/lib_dec/tcx_utils_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/tns_base_dec_fx.c b/lib_dec/tns_base_dec_fx.c
index aa154531b12ea5097761d14b736cd91f8349a94e..5c8ef1244c39a00fbb773f561d671adc918ed1c3 100644
--- a/lib_dec/tns_base_dec_fx.c
+++ b/lib_dec/tns_base_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/tonalMDCTconcealment_fx.c b/lib_dec/tonalMDCTconcealment_fx.c
index e45aac27c19905187e937acac0b44d947e6358e4..161a73c6bba059bfe17de7e38b77f79daf7ba04e 100644
--- a/lib_dec/tonalMDCTconcealment_fx.c
+++ b/lib_dec/tonalMDCTconcealment_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/transition_dec_fx.c b/lib_dec/transition_dec_fx.c
index 8fb036d2adc76482f9a365e82ff5452b838bb138..07699158329074c69aac8ba4c9b4b5c9c6d6ddbd 100644
--- a/lib_dec/transition_dec_fx.c
+++ b/lib_dec/transition_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/updt_dec_fx.c b/lib_dec/updt_dec_fx.c
index 3efd077223e7422408b5c66352666455830576c7..be92460253a77f16567801f3283259b2efce8b31 100644
--- a/lib_dec/updt_dec_fx.c
+++ b/lib_dec/updt_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/vlpc_1st_dec_fx.c b/lib_dec/vlpc_1st_dec_fx.c
index b77d7fce272422eedbb1c9e6a3455d7088cadd42..948ba55eccd0710ff816e67a49613b65fa35036e 100644
--- a/lib_dec/vlpc_1st_dec_fx.c
+++ b/lib_dec/vlpc_1st_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/vlpc_2st_dec_fx.c b/lib_dec/vlpc_2st_dec_fx.c
index a4c1c9e7e5412c79e5b22886fdfb19711736ab07..d64aaba775551c5cefcf264bc1e35f2f7c6896f6 100644
--- a/lib_dec/vlpc_2st_dec_fx.c
+++ b/lib_dec/vlpc_2st_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/voiced_dec_fx.c b/lib_dec/voiced_dec_fx.c
index 2108baad59d767c4900d18562756eae4a0247cab..5104f7dd53db56da8f17d10259e9c39f0a2a76b6 100644
--- a/lib_dec/voiced_dec_fx.c
+++ b/lib_dec/voiced_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_dec/waveadjust_fec_dec_fx.c b/lib_dec/waveadjust_fec_dec_fx.c
index 8ac2be1675cf84edd0e1aad2b19976a105d2299c..100abab1e1063775ff356c657ba0e9cb342fb796 100644
--- a/lib_dec/waveadjust_fec_dec_fx.c
+++ b/lib_dec/waveadjust_fec_dec_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/ACcontextMapping_enc_fx.c b/lib_enc/ACcontextMapping_enc_fx.c
index 46d941a8d24dc40102afc036ce4538e28a290c5c..eb8ee4cdca66af3cde9e99af011a95c71f5ebbfa 100644
--- a/lib_enc/ACcontextMapping_enc_fx.c
+++ b/lib_enc/ACcontextMapping_enc_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
@@ -41,11 +44,7 @@ void ACcontextMapping_encode2_no_mem_s17_LC_fx(
CONTEXT_HM_CONFIG *hm_cfg )
{
Word16 ptr[BITBUFSIZE];
-#ifdef FIX_2402_REPL_EVS_ARI_CODEC_ENC
Tastat as, as_overflow;
-#else
- TastatEnc as, as_overflow;
-#endif
Word16 bp, bp_overflow;
Word16 a1, b1, a1_i, b1_i, k;
Word16 t, pki, lev1;
@@ -244,11 +243,7 @@ void ACcontextMapping_encode2_no_mem_s17_LC_fx(
bp = ari_encode_14bits_ext_fx( ptr, bp, &as, add( a1, shl( b1, A_THRES_SHIFT ) ), ari_pk_s17_LC_ext[pki] ); /* Q0 */
/* Check bit budget */
-#ifdef FIX_2402_REPL_EVS_ARI_CODEC_ENC
IF( GT_16( add( add( add( bp, extract_l( as.bits_to_follow ) ), nbbits_signs ), nbbits_lsbs ), nbbits_m2 ) )
-#else
- IF( GT_16( add( add( add( bp, extract_l( as.value ) ), nbbits_signs ), nbbits_lsbs ), nbbits_m2 ) )
-#endif
{
ari_copy_states_fx( &as_overflow, &as );
bp = bp_overflow; /* Q0 */
@@ -278,11 +273,7 @@ void ACcontextMapping_encode2_no_mem_s17_LC_fx(
move16();
bp = ari_encode_14bits_ext_fx( ptr, bp, &as, 0, ari_pk_s17_LC_ext[pki] ); /* Q0 */
-#ifdef FIX_2402_REPL_EVS_ARI_CODEC_ENC
IF( GT_16( add( add( add( bp, extract_l( as.bits_to_follow ) ), nbbits_signs ), nbbits_lsbs ), nbbits_m2 ) )
-#else
- IF( GT_16( add( add( add( bp, extract_l( as.value ) ), nbbits_signs ), nbbits_lsbs ), nbbits_m2 ) )
-#endif
{
ari_copy_states_fx( &as_overflow, &as );
bp = bp_overflow; /* Q0 */
diff --git a/lib_enc/FEC_enc_fx.c b/lib_enc/FEC_enc_fx.c
index 3be0ff74c399dafafe2093c70288201e6cbd9585..96cfbafa0b18a6f2e9fcd68719e4f221dc3e9460 100644
--- a/lib_enc/FEC_enc_fx.c
+++ b/lib_enc/FEC_enc_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/SNR_calc_fx.c b/lib_enc/SNR_calc_fx.c
index 8e6a555d1e0dbfc241bb467b4da639bc8a2b30a6..8e319d47bce39db1765415a79bd1ae6a147465e9 100644
--- a/lib_enc/SNR_calc_fx.c
+++ b/lib_enc/SNR_calc_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/acelp_core_enc_fx.c b/lib_enc/acelp_core_enc_fx.c
index 5f38e5bd374a43f5ab6bcb754be4c4bc2ca77128..ae6f5342f2b1b6931845266f3d25c22523f830e9 100644
--- a/lib_enc/acelp_core_enc_fx.c
+++ b/lib_enc/acelp_core_enc_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
@@ -20,12 +23,8 @@
*--------------------------------------------------------------------*/
ivas_error acelp_core_enc_fx(
- Encoder_State *st, /* i/o: encoder state structure */
-#ifdef NONBE_FIX_ISSUE_2206
- const Word16 inp[], /* i : input signal of the current frame Q_new-1*/
-#else
- const Word16 inp[], /* i : input signal of the current frame Q_new*/
-#endif
+ Encoder_State *st, /* i/o: encoder state structure */
+ const Word16 inp[], /* i : input signal of the current frame Q_new-1*/
Word16 A[NB_SUBFR16k * ( M + 1 )], /* i : A(z) unquantized for the 4 subframes Q12*/
Word16 Aw[NB_SUBFR16k * ( M + 1 )], /* i : weighted A(z) unquant. for subframes Q12*/
const Word32 epsP[M + 1], /* i : LP prediction errors Qx*/
@@ -117,9 +116,7 @@ ivas_error acelp_core_enc_fx(
move16();
hLPDmem->q_mem_syn = sub( Q_new, 1 );
move16();
-#ifdef NONBE_FIX_ISSUE_2518
st->mem_deemp_preQ_fx = shl_sat( st->mem_deemp_preQ_fx, sub( Q_new, st->prev_Q_new ) );
-#endif
}
Scale_sig32( st->Bin_E_old_fx, L_FFT / 2, sub( add( Q_new, Q_SCALE - 2 ), st->q_Bin_E_old ) ); // Q_new + Q_scale - 2
@@ -437,11 +434,7 @@ ivas_error acelp_core_enc_fx(
{
IF( st->hTdCngEnc != NULL )
{
-#ifdef HARMONIZE_2539_cng_energy
enr = cng_energy_fx( st->element_mode, st->bwidth, st->hDtxEnc->CNG_mode, st->hTdCngEnc->CNG_att_fx, exc_fx, st->L_frame, Q_new ); /* Q8 */
-#else
- enr = cng_energy_ivas_fx( st->element_mode, st->bwidth, st->hDtxEnc->CNG_mode, st->hTdCngEnc->CNG_att_fx, exc_fx, st->L_frame, Q_new ); /* Q8 */
-#endif
/* calculate the energy quantization index */
enr_index = add( enr, 512 /* Q8(2.0) */ ); /* enr + 2.0 */
@@ -673,7 +666,6 @@ ivas_error acelp_core_enc_fx(
* Calculation of LP residual (filtering through A[z] filter)
*---------------------------------------------------------------*/
-#ifdef FIX_BASOP_2517_CLICK_IN_OMASA_LTV
Word16 scf = sub( norm_arr( inp - M, add( st->L_frame, M ) ), 2 );
test();
IF( NE_16( st->element_mode, EVS_MONO ) && GT_16( scf, 0 ) )
@@ -687,9 +679,6 @@ ivas_error acelp_core_enc_fx(
{
calc_residu_fx( st, inp, res_fx, Aq );
}
-#else
- calc_residu_fx( st, inp, res_fx, Aq );
-#endif
calculate_hangover_attenuation_gain_fx( st, &att_fx, vad_hover_flag );
@@ -976,18 +965,6 @@ ivas_error acelp_core_enc_fx(
* Updates
*-----------------------------------------------------------------*/
-#ifndef NONBE_FIX_ISSUE_2518
- IF( st->element_mode > EVS_MONO )
- {
- if ( st->hBWE_TD != NULL )
- {
- st->Q_exc = Q_new;
- move16();
- }
- hLPDmem->q_lpd_old_exc = Q_new;
- move16();
- }
-#endif
updt_enc_fx( st, old_exc_fx, pitch_buf, Es_pred_fx, Aq, lsf_new_fx, lsp_new, old_bwe_exc_fx );
diff --git a/lib_enc/acelp_core_switch_enc_fx.c b/lib_enc/acelp_core_switch_enc_fx.c
index 89df6423ca1339b2071e23e63733b66c2240e24c..1ede292f8cb277a592b3b5e9e18877cebce9bf25 100644
--- a/lib_enc/acelp_core_switch_enc_fx.c
+++ b/lib_enc/acelp_core_switch_enc_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
@@ -93,30 +96,6 @@ void acelp_core_switch_enc_fx(
cbrate = L_min( st_fx->core_brate, ACELP_22k60 );
}
}
-#ifdef FIX_I4_OL_PITCH
- IF( EQ_16( st_fx->last_codec_mode, MODE1 ) )
- {
- /* in MODE1 T_op is at 12.8 kHz */
- IF( NE_16( st_fx->last_L_frame, L_FRAME ) ) /* ACELP@16k core -> convert T_op to 16 kHz */
- {
- T_op[0] = shr( add( round_fx( L_shl( L_mult( 20480, T_op[0] ), 2 ) ), 1 ), 1 );
- move16();
- T_op[1] = shr( add( round_fx( L_shl( L_mult( 20480, T_op[1] ), 2 ) ), 1 ), 1 );
- move16();
- }
- }
- ELSE
- {
- /* in MODE2 T_op is at 16 kHz */
- IF( EQ_16( st_fx->last_L_frame, L_FRAME ) ) /* ACELP@12.8k core -> convert T_op to 12.8 kHz */
- {
- move16();
- move16();
- T_op[0] = mult_r( 26214, T_op[0] );
- T_op[1] = mult_r( 26214, T_op[1] );
- }
- }
-#else
IF( NE_16( st_fx->last_L_frame, L_FRAME ) )
{
T_op[0] = shr( add( round_fx( L_shl( L_mult( 20480, T_op[0] ), 2 ) ), 1 ), 1 ); /* Q0 */
@@ -124,7 +103,6 @@ void acelp_core_switch_enc_fx(
T_op[1] = shr( add( round_fx( L_shl( L_mult( 20480, T_op[1] ), 2 ) ), 1 ), 1 ); /* Q0 */
move16();
}
-#endif
/*----------------------------------------------------------------*
* Excitation encoding
@@ -136,9 +114,6 @@ void acelp_core_switch_enc_fx(
encod_gen_voic_core_switch_fx( st_fx, st_fx->last_L_frame, inp, Aq, A, T_op, exc, cbrate, shift, Q_new );
i = find_indice( hBstr, TAG_ACELP_SUBFR_LOOP_START, &value, &nb_bits );
-#ifdef DEBUGGING
- assert( i >= 0 && "Internal error in ACELP core switching - unable to find ACELP subframe indices!" );
-#endif
WHILE( EQ_16( hBstr->ind_list[i].id, TAG_ACELP_SUBFR_LOOP_START ) )
{
push_indice( hBstr, IND_CORE_SWITCHING_CELP_SUBFRAME, hBstr->ind_list[i].value, hBstr->ind_list[i].nb_bits );
diff --git a/lib_enc/acelp_enc_util_fx.c b/lib_enc/acelp_enc_util_fx.c
index 83c8a8676a0a02fa5dff29db6729eafb54cec59d..88a9c0693958059ba9595b12c24e1ece29f5a966 100644
--- a/lib_enc/acelp_enc_util_fx.c
+++ b/lib_enc/acelp_enc_util_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/amr_wb_enc_fx.c b/lib_enc/amr_wb_enc_fx.c
index c3ff039f9dcf7724fa088096a41000ca84ba89d7..a9d2659bbf5c26e45b40e0ac8ad966b71710284f 100644
--- a/lib_enc/amr_wb_enc_fx.c
+++ b/lib_enc/amr_wb_enc_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
@@ -11,9 +14,6 @@
#include "prot_fx.h" /* Function prototypes */
#include "basop_util.h" /* Function prototypes */
#include "prot_fx_enc.h"
-#ifdef DEBUGGING
-#include "debug.h"
-#endif
/*-------------------------------------------------------------------*
* amr_wb_enc()
@@ -579,20 +579,6 @@ void amr_wb_enc_fx(
/* update main codec parameters */
updt_enc_common_fx( st, Q_new );
-#ifdef DEBUG_MODE_INFO
- dbgwrite( &st->codec_mode, sizeof( short ), 1, input_frame, "res/codec" );
- dbgwrite( &st->core, sizeof( short ), 1, input_frame, "res/core" );
- dbgwrite( &st->extl, sizeof( short ), 1, input_frame, "res/extl" );
- dbgwrite( &st->bwidth, sizeof( short ), 1, input_frame, "res/bwidth" );
- float ener_flt = st->total_brate / 1000.0f;
- dbgwrite( &ener_flt, sizeof( float ), 1, input_frame, "res/total_brate" );
- ener_flt = st->core_brate / 1000.0f;
- dbgwrite( &ener_flt, sizeof( float ), 1, input_frame, "res/core_brate" );
- dbgwrite( &st->coder_type, sizeof( short ), 1, input_frame, "res/coder_type" );
- dbgwrite( &st->cng_type, sizeof( short ), 1, input_frame, "res/cng_type" );
- dbgwrite( &st->L_frame, sizeof( short ), 1, input_frame, "res/L_frame" );
- dbgwrite( &st->vad_flag, sizeof( short ), 1, input_frame, "res/vad_flag" );
-#endif
pop_wmops();
diff --git a/lib_enc/analy_lp_fx.c b/lib_enc/analy_lp_fx.c
index 743f95af5da98e1d59ab9b33fc8b66c8209901e2..6942d26de7cb90cfa399c1e87f23210018fbbb7c 100644
--- a/lib_enc/analy_lp_fx.c
+++ b/lib_enc/analy_lp_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/analy_sp_fx.c b/lib_enc/analy_sp_fx.c
index e7d09c786d06b16f010c79b5529d09ca260195f1..3ea23ebb60722d8e655952bd0db4117527872ba3 100644
--- a/lib_enc/analy_sp_fx.c
+++ b/lib_enc/analy_sp_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/ari_enc_fx.c b/lib_enc/ari_enc_fx.c
index 2dfac3de9f7a2a697afbd8045f5796f060ac3bdf..90ee9ee6b34713983c597b764cb3172709f96b11 100644
--- a/lib_enc/ari_enc_fx.c
+++ b/lib_enc/ari_enc_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
@@ -15,7 +18,6 @@
* forward declarations
*-------------------------------------------------------------*/
-#ifdef FIX_2402_REPL_EVS_ARI_CODEC_ENC
static Word16 ari_encode_14bits_high_low_fx(
Word16 *ptr, /* Q0 */
Word16 bp, /* Q0 */
@@ -24,7 +26,6 @@ static Word16 ari_encode_14bits_high_low_fx(
Word32 high, /* Q0 */
Word32 low /* Q0 */
);
-#endif /* FIX_2402_REPL_EVS_ARI_CODEC_ENC */
/*---------------------------------------------------------------
@@ -36,22 +37,6 @@ static Word16 ari_encode_14bits_high_low_fx(
* \return none
*-------------------------------------------------------------*/
-#ifndef FIX_2402_REPL_EVS_ARI_CODEC_ENC
-void ari_copy_states_fx(
- TastatEnc *source,
- TastatEnc *dest )
-{
- dest->low = source->low;
- move32();
- dest->high = source->high;
- move32();
- dest->value = source->value;
- move16();
-
- return;
-}
-#endif /* FIX_2402_REPL_EVS_ARI_CODEC_ENC */
-
/*---------------------------------------------------------------
* ari_copy_states_ivas_fx()
@@ -62,11 +47,7 @@ void ari_copy_states_fx(
* \return none
*-------------------------------------------------------------*/
-#ifdef FIX_2402_REPL_EVS_ARI_CODEC_ENC
void ari_copy_states_fx(
-#else
-void ari_copy_states_ivas_fx(
-#endif
Tastat *source,
Tastat *dest )
{
@@ -96,19 +77,6 @@ void ari_copy_states_ivas_fx(
* \return none
*-------------------------------------------------------------*/
-#ifndef FIX_2402_REPL_EVS_ARI_CODEC_ENC
-void ari_start_encoding_14bits_fx(
- TastatEnc *s )
-{
- s->low = L_deposit_l( 0 );
- s->high = ari_q4new + 1;
- move32();
- s->value = 0;
- move16();
-
- return;
-}
-#endif /* FIX_2402_REPL_EVS_ARI_CODEC_ENC */
/*---------------------------------------------------------------
* Ari encoder 14 bits routines
@@ -146,23 +114,6 @@ Word16 ari_put_bit_plus_follow(
*
* \return bit consumption
* ------------------------------------------------------------ - */
-#ifndef FIX_2402_REPL_EVS_ARI_CODEC_ENC
-Word16 ari_done_encoding_14bits_fx(
- Word16 *ptr, /* Q0 */
- Word16 bp, /* Q0 */
- TastatEnc *s )
-{
- Word16 bit;
-
- bit = 0;
- move16();
- if ( GE_32( s->low, ari_q1new ) )
- {
- bit = s_xor( bit, 1 );
- }
- return ari_put_bit_plus_follow( ptr, bp, add( s->value, 1 ), bit );
-}
-#endif /* FIX_2402_REPL_EVS_ARI_CODEC_ENC */
/*---------------------------------------------------------------
*ari_encode_14bits_ext_fx()
@@ -178,87 +129,8 @@ Word16 ari_done_encoding_14bits_fx(
*
* \return bit consumption
* ------------------------------------------------------------ - */
-#ifndef FIX_2402_REPL_EVS_ARI_CODEC_ENC
-Word16 ari_encode_14bits_ext_fx(
- Word16 *ptr, /* Q0 */
- Word16 bp, /* Q0 */
- TastatEnc *s,
- Word32 symbol, /* Q0 */
- UWord16 const *cum_freq /* Q0 */
-)
-{
- Word32 low;
- Word32 high;
- Word32 range;
- Word16 bits_to_follow;
- Word16 i;
- UWord16 temp;
- Word32 L_temp1, L_temp2;
- high = L_add( s->high, 0 );
- low = L_add( s->low, 0 );
- range = L_sub( high, low ); /* Q0 */
-
- L_temp1 = L_shl( range, 15 - stat_bitsnew /*both are constants*/ );
- Mpy_32_16_ss( L_temp1, cum_freq[symbol + 1], &L_temp2, &temp );
- if ( symbol != 0 ) /* when symbol is 0, range remains unchanged */
- {
- Mpy_32_16_ss( L_temp1, cum_freq[symbol], &range, &temp );
- }
- high = L_add( low, range ); /* Q0 */
- low = L_add( low, L_temp2 ); /* Q0 */
- bits_to_follow = s->value; /* Q0 */
- move16();
-
- FOR( i = 0; i < 0x7FFF; i++ )
- {
- IF( LE_32( high, ari_q2new ) )
- {
- bp = ari_put_bit_plus_follow( ptr, bp, bits_to_follow, 0 ); /* Q0 */
- bits_to_follow = 0;
- move16();
- }
- ELSE IF( GE_32( low, ari_q2new ) )
- {
- bp = ari_put_bit_plus_follow( ptr, bp, bits_to_follow, 1 ); /* Q0 */
- bits_to_follow = 0;
- move16();
- low = L_sub( low, ari_q2new ); /* Q0 */
- high = L_sub( high, ari_q2new ); /* Subtract offset to top. Q0*/
- }
- ELSE
- {
- test();
- IF( GE_32( low, ari_q1new ) && LE_32( high, ari_q3new ) )
- {
- /* Output an opposite bit */
- /* later if in middle half. */
- bits_to_follow = add( bits_to_follow, 1 ); /* Q0 */
- low = L_sub( low, ari_q1new ); /* Subtract offset to middle Q0*/
- high = L_sub( high, ari_q1new ); /* Q0 */
- }
- ELSE
- {
- BREAK; /* Otherwise exit loop. */
- }
- }
-
- low = L_add( low, low ); /* Q0 */
- high = L_add( high, high ); /* Scale up code range. Q0*/
- }
-
- s->low = low; /* Q0 */
- move32();
- s->high = high; /* Q0 */
- move32();
- s->value = bits_to_follow; /* Q0 */
- move16();
- return bp;
-}
-#endif /* FIX_2402_REPL_EVS_ARI_CODEC_ENC */
-
-#ifndef FIX_2402_REPL_EVS_ARI_CODEC_ENC
/*------------------------------------------------------------------------
* Function: ari_encode_overflow_fx()
*
@@ -266,99 +138,11 @@ Word16 ari_encode_14bits_ext_fx(
*-------------------------------------------------------------------------*/
Word16 ari_encode_overflow_fx(
- TastatEnc *s )
-{
- return L_sub( L_sub( s->high, 1 ), s->low ) <= 0;
-}
-#endif /* FIX_2402_REPL_EVS_ARI_CODEC_ENC */
-
-/*------------------------------------------------------------------------
- * Function: ari_encode_overflow_fx()
- *
- *
- *-------------------------------------------------------------------------*/
-
-#ifdef FIX_2402_REPL_EVS_ARI_CODEC_ENC
-Word16 ari_encode_overflow_fx(
-#else
-Word16 ari_encode_overflow_ivas_fx(
-#endif
Tastat *s )
{
return L_sub( L_sub( s->high, 0 ), s->low ) <= 0;
}
-#ifndef FIX_2402_REPL_EVS_ARI_CODEC_ENC
-/*------------------------------------------------------------------------
- * Function: ari_encode_14bits_high_low()
- *
- *
- *-------------------------------------------------------------------------*/
-
-static Word16 ari_encode_14bits_high_low(
- Word16 *ptr, /* Q0 */
- Word16 bp, /* Q0 */
- Word16 bits, /* Q0 */
- TastatEnc *s,
- Word32 high, /* Q0 */
- Word32 low /* Q0 */
-)
-{
- Word16 bits_to_follow, tmp;
-
- bits_to_follow = s->value;
- move16();
-
- /* while there are more than 16 bits left */
- tmp = sub( 16, bits ); /* Q0 */
- WHILE( add( add( bp, bits_to_follow ), tmp ) < 0 )
- {
- IF( LE_32( high, ari_q2new ) )
- {
- bp = ari_put_bit_plus_follow( ptr, bp, bits_to_follow, 0 ); /* Q0 */
- bits_to_follow = 0;
- move16();
- }
- ELSE IF( GE_32( low, ari_q2new ) )
- {
- bp = ari_put_bit_plus_follow( ptr, bp, bits_to_follow, 1 ); /* Q0 */
- bits_to_follow = 0;
- move16();
- low = L_sub( low, ari_q2new ); /* Q0 */
- high = L_sub( high, ari_q2new ); /* Subtract offset to top. Q0*/
- }
- ELSE
- {
- test();
- IF( GE_32( low, ari_q1new ) && LE_32( high, ari_q3new ) )
- {
- /* Output an opposite bit */
- /* later if in middle half. */
- bits_to_follow = add( bits_to_follow, 1 ); /* Q0 */
- low = L_sub( low, ari_q1new ); /* Subtract offset to middle Q0*/
- high = L_sub( high, ari_q1new ); /* Q0 */
- }
- ELSE
- {
- BREAK; /* Otherwise exit loop. */
- }
- }
-
- low = L_add( low, low ); /* Q0 */
- high = L_add( high, high ); /* Scale up code range. Q0*/
- }
-
- s->low = low; /* Q0 */
- move32();
- s->high = high; /* Q0 */
- move32();
- s->value = bits_to_follow; /* Q0 */
- move16();
-
- return bp;
-}
-#endif /* FIX_2402_REPL_EVS_ARI_CODEC_ENC */
-
/*------------------------------------------------------------------------
* Function: ari_encode_14bits_range_fx
@@ -366,34 +150,7 @@ static Word16 ari_encode_14bits_high_low(
* Encode an cumulative frequency interval.
*-------------------------------------------------------------------------*/
-#ifndef FIX_2402_REPL_EVS_ARI_CODEC_ENC
-Word16 ari_encode_14bits_range_fx(
- Word16 *ptr, /* Q0 */
- Word16 bp, /* Q0 */
- Word16 bits, /* Q0 */
- TastatEnc *s,
- Word16 cum_freq_low, /* Q0 */
- Word16 cum_freq_high /* Q0 */
-)
-{
- Word32 low, high, range;
-
- range = L_sub( s->high, s->low ); /* Q0 */
-
- high = L_add( s->low, mul_sbc_14bits( range, cum_freq_high ) ); /* Q0 */
- low = L_add( s->low, mul_sbc_14bits( range, cum_freq_low ) ); /* Q0 */
-
- return ari_encode_14bits_high_low( ptr, bp, bits, s, high, low );
-}
-
-/*------------------------------------------------------------------------
- * Function: ari_encode_14bits_range_ivas_fx
- *
- * Encode an cumulative frequency interval.
- *-------------------------------------------------------------------------*/
-#endif /* FIX_2402_REPL_EVS_ARI_CODEC_ENC */
-#ifdef FIX_2402_REPL_EVS_ARI_CODEC_ENC
Word16 ari_encode_14bits_range_fx(
Word16 *ptr, /* Q0 */
Word16 bp, /* Q0 */
@@ -412,7 +169,6 @@ Word16 ari_encode_14bits_range_fx(
return ari_encode_14bits_high_low_fx( ptr, bp, bits, s, high, low );
}
-#endif
/*------------------------------------------------------------------------
* Function: ari_encode_14bits_sign_fx
@@ -420,36 +176,6 @@ Word16 ari_encode_14bits_range_fx(
* Encode a sign with equal probabilities.
*-------------------------------------------------------------------------*/
-#ifndef FIX_2402_REPL_EVS_ARI_CODEC_ENC
-Word16 ari_encode_14bits_sign_fx(
- Word16 *ptr, /* Q0 */
- Word16 bp, /* Q0 */
- Word16 bits, /* Q0 */
- TastatEnc *s,
- Word16 sign /* Q0 */
-)
-{
- Word32 low, high, range;
- Word32 L_tmp;
-
- high = L_add( s->high, 0 );
- low = L_add( s->low, 0 );
- range = L_sub( high, low ); /* Q0 */
-
- L_tmp = L_shr( range, 1 );
- if ( sign != 0 )
- {
- high = L_add( low, L_tmp ); /* Q0 */
- }
- if ( sign == 0 )
- {
- low = L_add( low, L_tmp ); /* Q0 */
- }
-
- return ari_encode_14bits_high_low( ptr, bp, bits, s, high, low );
-}
-#endif /* FIX_2402_REPL_EVS_ARI_CODEC_ENC */
-
/*------------------------------------------------------------------------
* Function: ari_done_cbr_encoding_14bits_fx
@@ -457,43 +183,6 @@ Word16 ari_encode_14bits_sign_fx(
* Finish up encoding in CBR mode.
*-------------------------------------------------------------------------*/
-#ifndef FIX_2402_REPL_EVS_ARI_CODEC_ENC
-Word16 ari_done_cbr_encoding_14bits_fx(
- Word16 *ptr, /* Q0 */
- Word16 bp, /* Q0 */
- Word16 bits, /* Q0 */
- TastatEnc *s )
-{
- Word16 high, tmp, k;
-
- tmp = sub( bits, 16 ); /* Q0 */
- WHILE( GT_16( sub( tmp, bp ), s->value ) )
- {
- bp = ari_encode_14bits_sign_fx( ptr, bp, bits, s, 0 ); /* Q0 */
- }
-
- high = extract_l( L_sub( s->high, 1 ) ); /* Q0 */
-
- bp = ari_put_bit_plus_follow( ptr, bp, s->value, lshr( high, 15 ) ); /* Q0 */
- high = lshl( high, 1 );
-
- tmp = s_min( 15, sub( bits, bp ) );
- FOR( k = 0; k < tmp; ++k )
- {
- ptr[bp++] = lshr( high, 15 ); /* Q0 */
- move16();
- high = lshl( high, 1 );
- }
-
- return bp;
-}
-
-/*------------------------------------------------------------------------
- * Function: ari_done_cbr_encoding_14bits_ivas_fx
- *
- * Finish up encoding in CBR mode.
- *-------------------------------------------------------------------------*/
-#else
Word16 ari_done_cbr_encoding_14bits_fx(
Word16 *ptr, /* Q0 */
Word16 bp, /* Q0 */
@@ -522,13 +211,8 @@ Word16 ari_done_cbr_encoding_14bits_fx(
return bp;
}
-#endif
-#ifdef FIX_2402_REPL_EVS_ARI_CODEC_ENC
void ari_start_encoding_14bits_fx(
-#else
-void ari_start_encoding_14bits_ivas_fx(
-#endif
Tastat *s )
{
/* : addressing is made with walking pointer s */
@@ -549,11 +233,7 @@ void ari_start_encoding_14bits_ivas_fx(
* Finish ArCo encoding
*-------------------------------------------------------------*/
-#ifdef FIX_2402_REPL_EVS_ARI_CODEC_ENC
Word16 ari_done_encoding_14bits_fx(
-#else
-Word16 ari_done_encoding_14bits_ivas_fx(
-#endif
Word16 *ptr, /* Q0 */
Word16 bp, /* Q0 */
Tastat *s )
@@ -577,11 +257,7 @@ Word16 ari_done_encoding_14bits_ivas_fx(
*
*-------------------------------------------------------------*/
-#ifdef FIX_2402_REPL_EVS_ARI_CODEC_ENC
Word16 ari_encode_14bits_ext_fx(
-#else
-Word16 ari_encode_14bits_ext_ivas_fx(
-#endif
Word16 *ptr, /* Q0 */
Word16 bp, /* Q0 */
Tastat *s,
@@ -735,11 +411,7 @@ static Word16 ari_encode_14bits_high_low_fx(
* Encode a sign with equal probabilities.
*-------------------------------------------------------------------------*/
-#ifdef FIX_2402_REPL_EVS_ARI_CODEC_ENC
Word16 ari_encode_14bits_sign_fx(
-#else
-Word16 ari_encode_14bits_sign_ivas_fx(
-#endif
Word16 *ptr, /* Q0 */
Word16 bp, /* Q0 */
Word32 bits, /* Q0 */
diff --git a/lib_enc/ari_hm_enc_fx.c b/lib_enc/ari_hm_enc_fx.c
index 121d4d9c557655f1aa6a7781f5eaa37f6daceddd..f0c6f299f644f11cae8a0684f0f60036279e54a5 100644
--- a/lib_enc/ari_hm_enc_fx.c
+++ b/lib_enc/ari_hm_enc_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/arith_coder_enc_fx.c b/lib_enc/arith_coder_enc_fx.c
index 40c0ba7ff318d0fe01c23c8d37e277e020789808..8917b788e7a4ff38cdafdbe2e12df51e5a5d8cb6 100644
--- a/lib_enc/arith_coder_enc_fx.c
+++ b/lib_enc/arith_coder_enc_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
@@ -529,11 +532,7 @@ static Word16 tcx_arith_encode(
Word16 prm[] /* o : bit-stream Q0 */
)
{
-#ifdef FIX_2402_REPL_EVS_ARI_CODEC_ENC
Tastat as, as_lastgood;
-#else
- TastatEnc as, as_lastgood;
-#endif
Word16 bp, bp_lastgood;
Word16 k;
Word16 kEncoded;
@@ -650,11 +649,7 @@ static Word16 tcx_arith_encode(
IF( EQ_16( kEncoded, sub( L_frame, 1 ) ) ) /* RESQ bits possibly available */
{
/* Limit target bits to actually needed bits */
-#ifdef FIX_2402_REPL_EVS_ARI_CODEC_ENC
target_bits = add( add( bp, 16 ), extract_l( as.bits_to_follow ) );
-#else
- target_bits = add( add( bp, 16 ), extract_l( as.value ) );
-#endif
}
return ari_done_cbr_encoding_14bits_fx( prm, bp, target_bits, &as );
diff --git a/lib_enc/avq_cod_fx.c b/lib_enc/avq_cod_fx.c
index e54dfeda293c25c78b4754231af24600de21acb7..118a06b932f52807f009a55d56005cd024add85d 100644
--- a/lib_enc/avq_cod_fx.c
+++ b/lib_enc/avq_cod_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
@@ -5,10 +8,7 @@
#include
#include "options.h" /* Compilation switches */
#include "cnst.h"
-#include /* Compilation switches */
-#ifdef DEBUGGING
-#include
-#endif
+#include /* Compilation switches */
#include "prot_fx.h" /* Function prototypes */
#include "prot_fx_enc.h" /* Function prototypes */
#include "rom_com.h" /* Static table prototypes */
@@ -549,9 +549,6 @@ void AVQ_encmux_fx(
bit_tmp = add( unusedbitsFlag, unused_bits_idx );
/*nq_est = (int16_t)ceil(0.2f * (bits - 5 * (unusedbitsFlag + unused_bits_idx)));*/
nq_est = mult( 6554, sub( bits, add( shl( bit_tmp, 2 ), bit_tmp ) ) );
-#ifdef DEBUGGING
- assert( (Word16) ceil( 0.2f * ( bits - 5 * ( unusedbitsFlag + unused_bits_idx ) ) ) == nq_est );
-#endif
if ( EQ_16( nq_est, 1 ) )
{
diff --git a/lib_enc/bass_psfilter_enc_fx.c b/lib_enc/bass_psfilter_enc_fx.c
index 083f8d68ed6a09e1b57cf14253695d9fadd9e301..e954c2ccdfb135d8e6fff23b5887a72b9ccce060 100644
--- a/lib_enc/bass_psfilter_enc_fx.c
+++ b/lib_enc/bass_psfilter_enc_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/bw_detect_fx.c b/lib_enc/bw_detect_fx.c
index ff60b94d0f10249e90497150a0953e745b6aa3c6..37fca3dd350b3b0baf1857202ba90bbe5e982d04 100644
--- a/lib_enc/bw_detect_fx.c
+++ b/lib_enc/bw_detect_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/cng_enc_fx.c b/lib_enc/cng_enc_fx.c
index c28d008abbd43c157e985030dbc931603e0b0ea5..858966fff7de19b890fa408e4e9e44fb91ad64da 100644
--- a/lib_enc/cng_enc_fx.c
+++ b/lib_enc/cng_enc_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
@@ -27,11 +30,7 @@
*---------------------------------------------------------------------*/
static void shb_CNG_encod_fx( Encoder_State *st_fx, const Word16 update_fx );
-#ifdef NONBE_FIX_ISSUE_2206_SWB_EXPERIMENT
static Word16 shb_DTX_fx( Encoder_State *st_fx, const Word16 *shb_speech_fx, const Word16 shb_speech_q, const Word16 *syn_12k8_16k );
-#else
-static Word16 shb_DTX_fx( Encoder_State *st_fx, const Word16 *shb_speech_fx, const Word16 *syn_12k8_16k );
-#endif
/*---------------------------------------------------------------------*
* CNG_enc()
@@ -894,11 +893,7 @@ void CNG_enc_fx(
L_tmp = L_add_sat( L_tmp, L_tmp ); /* 2*Q_new+1 */
L_tmp = Mult_32_16( L_tmp, 128 ); /* 2*Q_new+1 */
tmp1 = add( add( Q_new, Q_new ), 1 );
-#ifdef NONBE_FIX_ISSUE_2206
env[i] = L_shr_sat( L_tmp, sub( tmp1, 6 ) );
-#else
- env[i] = L_shr( L_tmp, sub( tmp1, 6 ) );
-#endif
move32(); /* Q6 */
ptR++;
ptI--;
@@ -1459,13 +1454,9 @@ void calculate_hangover_attenuation_gain_fx(
*---------------------------------------------------------------------*/
void swb_CNG_enc_fx(
- Encoder_State *st, /* i/o: State structure */
-#ifdef NONBE_FIX_ISSUE_2206_SWB_EXPERIMENT
- const Word16 *shb_speech_fx, /* i : SHB target signal (6-14kHz) at 16kHz shb_speech_q */
- const Word16 shb_speech_q, /* i : SHB target signal Q (6-14kHz) at 16kHz Q0 */
-#else
- const Word16 *shb_speech_fx, /* i : SHB target signal (6-14kHz) at 16kHz Q0 */
-#endif
+ Encoder_State *st, /* i/o: State structure */
+ const Word16 *shb_speech_fx, /* i : SHB target signal (6-14kHz) at 16kHz shb_speech_q */
+ const Word16 shb_speech_q, /* i : SHB target signal Q (6-14kHz) at 16kHz Q0 */
const Word16 *syn_12k8_16k_fx /* i : ACELP core synthesis at 12.8kHz or 16kHz Q0 */
)
{
@@ -1480,11 +1471,7 @@ void swb_CNG_enc_fx(
IF( GE_32( st->input_Fs, L_FRAME32k * FRAMES_PER_SEC ) )
{
/* decide if SHB SID encoding or not */
-#ifdef NONBE_FIX_ISSUE_2206_SWB_EXPERIMENT
shb_SID_updt = shb_DTX_fx( st, shb_speech_fx, shb_speech_q, syn_12k8_16k_fx );
-#else
- shb_SID_updt = shb_DTX_fx( st, shb_speech_fx, syn_12k8_16k_fx );
-#endif
/* SHB CNG encoding */
shb_CNG_encod_fx( st, shb_SID_updt );
@@ -1568,11 +1555,7 @@ static void shb_CNG_encod_fx(
Word16 tmp, tmp1, tmp2, scale, exp1, exp2, ener_mid_dec_thr_e;
tmp = BASOP_Util_Divide1616_Scale( st->hTdCngEnc->last_idx_ener, 22938, &scale ); // 0.7 in Q15 ->exp 0
scale = add( scale, ( 15 - 0 ) );
-#ifdef NONBE_FIX_ISSUE_2206
tmp = sub( tmp, shl_sat( 6, sub( Q15, scale ) ) ); /* Saturate, because the computation goes into a threshold decision. */
-#else
- tmp = sub( tmp, shl( 6, sub( Q15, scale ) ) );
-#endif
tmp1 = BASOP_Util_Divide1616_Scale( tmp, 3277, &exp1 );
exp1 = add( exp1, ( scale - 0 ) );
@@ -1580,11 +1563,7 @@ static void shb_CNG_encod_fx(
tmp = BASOP_Util_Divide1616_Scale( idx_ener, 22938, &scale ); // 0.7 in Q15 ->exp 0
scale = add( scale, ( 15 - 0 ) );
-#ifdef NONBE_FIX_ISSUE_2206
tmp = sub( tmp, shl_sat( 6, sub( Q15, scale ) ) ); /* Saturate, because the computation goes into a threshold decision. */
-#else
- tmp = sub( tmp, shl( 6, sub( Q15, scale ) ) );
-#endif
tmp1 = BASOP_Util_Divide1616_Scale( tmp, 3277, &exp2 );
exp2 = add( exp2, ( scale - 0 ) );
@@ -1643,13 +1622,9 @@ static void shb_CNG_encod_fx(
*---------------------------------------------------------------------*/
static Word16 shb_DTX_fx(
- Encoder_State *st, /* i/o: State structure */
-#ifdef NONBE_FIX_ISSUE_2206_SWB_EXPERIMENT
- const Word16 *shb_speech_fx, /* i : SHB target signal (6-14kHz) at 16kHz shb_speech_q */
- const Word16 shb_speech_q, /* i : SHB target signal (6-14kHz) at 16kHz Q Q0 */
-#else
- const Word16 *shb_speech_fx, /* i : SHB target signal (6-14kHz) at 16kHz Q0 */
-#endif
+ Encoder_State *st, /* i/o: State structure */
+ const Word16 *shb_speech_fx, /* i : SHB target signal (6-14kHz) at 16kHz shb_speech_q */
+ const Word16 shb_speech_q, /* i : SHB target signal (6-14kHz) at 16kHz Q Q0 */
const Word16 *syn_12k8_16k_fx /* i : ACELP core synthesis at 12.8kHz or 16kHz Q0 */
)
{
@@ -1661,9 +1636,7 @@ static Word16 shb_DTX_fx(
Word16 *shb_new_speech_fx;
Word32 wb_ener_fx;
Word32 shb_ener_fx;
-#ifdef NONBE_FIX_ISSUE_2206_SWB_EXPERIMENT
Word16 shb_ener_q;
-#endif
Word16 log_wb_ener_fx;
Word16 log_shb_ener_fx;
Word16 tmp;
@@ -1675,20 +1648,13 @@ static Word16 shb_DTX_fx(
TD_BWE_ENC_HANDLE hBWE_TD = st->hBWE_TD;
shb_new_speech_fx = shb_old_speech_fx + ( ACELP_LOOK_12k8 + L_SUBFR ) * 5 / 4;
-#ifdef NONBE_FIX_ISSUE_2206_SWB_EXPERIMENT
Copy_Scale_sig_nosat( hBWE_TD->old_speech_shb_fx, shb_old_speech_fx, ( ACELP_LOOK_12k8 + L_SUBFR ) * 5 / 4, sub( shb_speech_q, hBWE_TD->old_speech_shb_q ) );
Copy( shb_speech_fx, shb_new_speech_fx, L_FRAME16k );
Copy( shb_old_speech_fx + L_FRAME16k, hBWE_TD->old_speech_shb_fx, ( ACELP_LOOK_12k8 + L_SUBFR ) * 5 / 4 );
hBWE_TD->old_speech_shb_q = shb_speech_q;
move16();
-#else
- Copy( hBWE_TD->old_speech_shb_fx, shb_old_speech_fx, ( ACELP_LOOK_12k8 + L_SUBFR ) * 5 / 4 ); // old_speech_shb_fx -> Q0
- Copy( shb_speech_fx, shb_new_speech_fx, L_FRAME16k ); // Q0
- Copy( shb_old_speech_fx + L_FRAME16k, hBWE_TD->old_speech_shb_fx, ( ACELP_LOOK_12k8 + L_SUBFR ) * 5 / 4 ); // Q0
-#endif
shb_ener_fx = L_deposit_l( 0 );
-#ifdef NONBE_FIX_ISSUE_2206_SWB_EXPERIMENT
FOR( i = 0; i < L_FRAME16k; i++ )
{
shb_ener_fx = L_mac_sat( shb_ener_fx, shb_old_speech_fx[i], shb_old_speech_fx[i] ); // ( 2 * hBWE_TD->old_speech_shb_q + Q1 ) --> Q1 due to left shift in L_mac
@@ -1696,14 +1662,6 @@ static Word16 shb_DTX_fx(
shb_ener_q = add( shl( hBWE_TD->old_speech_shb_q, 1 ), 1 );
shb_ener_fx = L_add( Mpy_32_16_1( shb_ener_fx, 102 ), 1 ); /* ( 1 / L_FRAME16K ) -> 102 in Q15, shb_ener_fx in shb_ener_q */
-#else
- FOR( i = 0; i < L_FRAME16k; i++ )
- {
- shb_ener_fx = L_mac_sat( shb_ener_fx, shb_old_speech_fx[i], shb_old_speech_fx[i] ); // ( Q0 + Q0 + Q1 ) --> Q1 due to left shift in L_mac
- }
-
- shb_ener_fx = L_add( Mpy_32_16_1( shb_ener_fx, 102 ), 1 ); /* ( 1 / L_FRAME16K ) -> 102 in Q15, shb_ener_fx in Q1 */
-#endif
wb_ener_fx = L_deposit_l( 0 );
FOR( i = 0; i < st->L_frame; i++ )
@@ -1721,11 +1679,7 @@ static Word16 shb_DTX_fx(
log_wb_ener_fx = round_fx_sat( L_shl_sat( wb_ener_fx, 10 ) ); /* log_wb_ener_fx in Q8 */
exp = norm_l( shb_ener_fx );
fra = Log2_norm_lc( L_shl( shb_ener_fx, exp ) );
-#ifdef NONBE_FIX_ISSUE_2206_SWB_EXPERIMENT
exp = sub( sub( 30, shb_ener_q ), exp );
-#else
- exp = sub( 30 - 1, exp );
-#endif
shb_ener_fx = Mpy_32_16( exp, fra, LG10 );
test();
diff --git a/lib_enc/cod2t32_fx.c b/lib_enc/cod2t32_fx.c
index fa66223cb9679fc3425e43f0b5e4e0f44ed510ee..fa46d3064d3e88f1257f250729a9bbd786ab8b89 100644
--- a/lib_enc/cod2t32_fx.c
+++ b/lib_enc/cod2t32_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/cod4t64_fast_fx.c b/lib_enc/cod4t64_fast_fx.c
index c6a2811e0675130380e40cbc121cb0d4b1b4c48d..d27697c0dedf3b40871588a44edede8265673a5e 100644
--- a/lib_enc/cod4t64_fast_fx.c
+++ b/lib_enc/cod4t64_fast_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_enc/cod4t64_fx.c b/lib_enc/cod4t64_fx.c
index f485463a4f65e6658e4f5601d2a04e3d1a7a2339..e6d401bbcb3a7a3575281cd1e040f27480db8c43 100644
--- a/lib_enc/cod4t64_fx.c
+++ b/lib_enc/cod4t64_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/cod_ace_fx.c b/lib_enc/cod_ace_fx.c
index f066d1c55c04c032f910b309787322913f85c0db..5977c450d93b31faba6f209e5db163e8ff40d0e4 100644
--- a/lib_enc/cod_ace_fx.c
+++ b/lib_enc/cod_ace_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/cod_tcx_fx.c b/lib_enc/cod_tcx_fx.c
index d043aeb49f9d591884640fd69273a452e7aad7d5..03ceb4b75bf1d38dbe8ab9f4955d39fa63520759 100644
--- a/lib_enc/cod_tcx_fx.c
+++ b/lib_enc/cod_tcx_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
@@ -14,9 +17,6 @@
#include "prot_fx_enc.h"
#include "ivas_prot_fx.h"
#include "ivas_rom_com.h"
-#ifdef DEBUGGING
-#include "debug.h"
-#endif
#define SIMILAR_TNS_THRESHOLD_FX_IN_Q15 ( 1311 )
@@ -1438,15 +1438,6 @@ void QuantizeSpectrum_fx(
&sqGain_e,
EVS_MONO );
-#ifndef FIX_BASOP_2551_HARM_SCALAR_QUAN
- tcx_scalar_quantization_fx( OriginalSpectrum, OriginalSpectrum_e,
- sqQ,
- L_spec,
- sqGain, sqGain_e,
- hTcxCfg->sq_rounding,
- hTcxEnc->memQuantZeros,
- tcxonly );
-#else
tcx_scalar_quantization_fx( OriginalSpectrum, OriginalSpectrum_e,
sqQ,
L_spec,
@@ -1455,7 +1446,6 @@ void QuantizeSpectrum_fx(
hTcxEnc->memQuantZeros,
tcxonly,
st->element_mode );
-#endif // !FIX_BASOP_2551_HARM_SCALAR_QUAN
/* Estimate original bitrate */
@@ -1544,15 +1534,6 @@ void QuantizeSpectrum_fx(
EVS_MONO );
/* Quantize spectrum */
-#ifndef FIX_BASOP_2551_HARM_SCALAR_QUAN
- tcx_scalar_quantization_fx( spectrum, *spectrum_e,
- sqQ,
- L_spec,
- sqGain, sqGain_e,
- hTcxCfg->sq_rounding,
- hTcxEnc->memQuantZeros,
- tcxonly );
-#else
tcx_scalar_quantization_fx( spectrum, *spectrum_e,
sqQ,
L_spec,
@@ -1561,7 +1542,6 @@ void QuantizeSpectrum_fx(
hTcxEnc->memQuantZeros,
tcxonly,
st->element_mode );
-#endif // !FIX_BASOP_2551_HARM_SCALAR_QUAN
/* Estimate bitrate */
stop = 0;
@@ -1752,15 +1732,6 @@ void QuantizeSpectrum_fx(
{
sqGain = tmp1;
sqGain_e = s;
-#ifndef FIX_BASOP_2551_HARM_SCALAR_QUAN
- tcx_scalar_quantization_fx( spectrum, *spectrum_e,
- sqQ,
- L_spec,
- sqGain, sqGain_e,
- hTcxCfg->sq_rounding,
- hTcxEnc->memQuantZeros,
- tcxonly );
-#else
tcx_scalar_quantization_fx( spectrum, *spectrum_e,
sqQ,
L_spec,
@@ -1770,8 +1741,6 @@ void QuantizeSpectrum_fx(
tcxonly,
st->element_mode );
-#endif // !FIX_BASOP_2551_HARM_SCALAR_QUAN
-
move16();
stop = 1;
@@ -3076,11 +3045,7 @@ void QuantizeTCXSpectrum_fx(
/* Quantize original spectrum */
sqGain_fx = SQ_gain_fx( spectrum_fx, *spectrum_e, ( mult( hTcxEnc->tcx_target_bits_fac, shl( sqTargetBits, 1 ) ) ), L_spec, &sqGain_e, 1 /*signal non-EVS*/ );
-#ifndef FIX_BASOP_2551_HARM_SCALAR_QUAN
- tcx_scalar_quantization_ivas_fx( spectrum_fx, *spectrum_e, sqQ, L_spec, sqGain_fx, sqGain_e, st->hTcxCfg->sq_rounding, hTcxEnc->memQuantZeros, st->tcxonly );
-#else
tcx_scalar_quantization_fx( spectrum_fx, *spectrum_e, sqQ, L_spec, sqGain_fx, sqGain_e, st->hTcxCfg->sq_rounding, hTcxEnc->memQuantZeros, st->tcxonly, st->element_mode );
-#endif // !FIX_BASOP_2551_HARM_SCALAR_QUAN
/* Estimate original bitrate */
stop = 0;
move16();
@@ -3171,11 +3136,7 @@ void QuantizeTCXSpectrum_fx(
sqGain_fx = SQ_gain_fx( spectrum_fx, *spectrum_e, shl( mult( hTcxEnc->tcx_target_bits_fac, sqTargetBits ), 1 ), L_spec, &sqGain_e, 1 /*signal non-EVS*/ );
}
/* Quantize spectrum */
-#ifndef FIX_BASOP_2551_HARM_SCALAR_QUAN
- tcx_scalar_quantization_ivas_fx( spectrum_fx, *spectrum_e, sqQ, L_spec, sqGain_fx, sqGain_e, st->hTcxCfg->sq_rounding, hTcxEnc->memQuantZeros, st->tcxonly );
-#else
tcx_scalar_quantization_fx( spectrum_fx, *spectrum_e, sqQ, L_spec, sqGain_fx, sqGain_e, st->hTcxCfg->sq_rounding, hTcxEnc->memQuantZeros, st->tcxonly, st->element_mode );
-#endif
/* Estimate bitrate */
stop = 0;
move16();
@@ -3440,11 +3401,7 @@ void QuantizeTCXSpectrum_fx(
move16();
sqGain_e = 1;
move16();
-#ifndef FIX_BASOP_2551_HARM_SCALAR_QUAN
- tcx_scalar_quantization_ivas_fx( spectrum_fx, *spectrum_e, sqQ, L_spec, sqGain_fx, sqGain_e, st->hTcxCfg->sq_rounding, hTcxEnc->memQuantZeros, st->tcxonly );
-#else
tcx_scalar_quantization_fx( spectrum_fx, *spectrum_e, sqQ, L_spec, sqGain_fx, sqGain_e, st->hTcxCfg->sq_rounding, hTcxEnc->memQuantZeros, st->tcxonly, st->element_mode );
-#endif // !FIX_BASOP_2551_HARM_SCALAR_QUAN
stop = 1;
IF( st->element_mode > EVS_MONO )
@@ -3914,27 +3871,12 @@ void coder_tcx_post_ivas_fx(
Word16 *wsig,
Word16 Q_new )
{
-#ifdef NONBE_FIX_ISSUE_2206
/*-----------------------------------------------------------*
* Memory update *
*-----------------------------------------------------------*/
/* Update LPDmem (Txnq,syn,syn_pe,old_exc,wsyn,Ai,Aq) */
tcx_encoder_memory_update_ivas_fx( wsig, synth, st->L_frame, Ai, A, hTcxCfg->preemph_fac, LPDmem, st, Q_new );
-#else
- Word16 xn_buf[L_FRAME_MAX];
-
- /* TCX output */
- Copy( synth, xn_buf, st->L_frame );
-
-
- /*-----------------------------------------------------------*
- * Memory update *
- *-----------------------------------------------------------*/
-
- /* Update LPDmem (Txnq,syn,syn_pe,old_exc,wsyn,Ai,Aq) */
- tcx_encoder_memory_update_ivas_fx( wsig, xn_buf, st->L_frame, Ai, A, hTcxCfg->preemph_fac, LPDmem, st, synth, Q_new );
-#endif
return;
}
diff --git a/lib_enc/cod_uv_fx.c b/lib_enc/cod_uv_fx.c
index bdf5ae1c2cc2ab5bf86075d2cee712844977d77c..95ef298157cdbc59c197e2f34e0e250a72523ee1 100644
--- a/lib_enc/cod_uv_fx.c
+++ b/lib_enc/cod_uv_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/comvad_decision_fx.c b/lib_enc/comvad_decision_fx.c
index dafa4561cc7f403b224723e4bbfaca16e42d21f1..54953205d5f0aecb8acdbfeacc42f2d8437ac51d 100644
--- a/lib_enc/comvad_decision_fx.c
+++ b/lib_enc/comvad_decision_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/cor_shif_fx.c b/lib_enc/cor_shif_fx.c
index c98afa1ee0781b5a73a43cf362a980152864282d..d51874ff3017fd0bf93cf14c77d1598bd283bc59 100644
--- a/lib_enc/cor_shif_fx.c
+++ b/lib_enc/cor_shif_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/core_enc_2div_fx.c b/lib_enc/core_enc_2div_fx.c
index 3012bb094cfe97ad8d2084676ae69eac221d4f52..6e7b9da96cf0e6caca63c4948034a4f4f95bc480 100644
--- a/lib_enc/core_enc_2div_fx.c
+++ b/lib_enc/core_enc_2div_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/core_enc_init_fx.c b/lib_enc/core_enc_init_fx.c
index 7efe8a9ff28578122718235c8d76ca5239c7f991..e98cd3566903f86e7a2ba69e9db64d29f16a1254 100644
--- a/lib_enc/core_enc_init_fx.c
+++ b/lib_enc/core_enc_init_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
@@ -28,11 +31,7 @@ static void init_tcx_ivas_fx( Encoder_State *st, const Word16 L_frame_old, const
static void init_core_sig_ana_ivas_fx( Encoder_State *st );
static void init_modes_ivas_fx( Encoder_State *st, const Word32 last_total_brate );
static void init_sig_buffers_ivas_fx( Encoder_State *st, const Word16 L_frame_old, const Word16 L_subfr, const Word32 last_total_brate );
-#ifdef NONBE_FIX_ISSUE_2518
static void init_acelp_ivas_fx( Encoder_State *st, Word16 L_frame_old, const Word32 last_total_brate );
-#else
-static void init_acelp_ivas_fx( Encoder_State *st, Word16 L_frame_old, Word16 shift, const Word32 last_total_brate );
-#endif
/*-----------------------------------------------------------------------*
* init_coder_ace_plus_fx()
@@ -1089,11 +1088,7 @@ void init_coder_ace_plus_ivas_fx(
/* Initialize ACELP */
-#ifdef NONBE_FIX_ISSUE_2518
init_acelp_ivas_fx( st, L_frame_old, last_total_brate );
-#else
- init_acelp_ivas_fx( st, L_frame_old, 0, last_total_brate );
-#endif
if ( st->ini_frame == 0 )
{
@@ -1404,18 +1399,12 @@ static void init_sig_buffers_ivas_fx( Encoder_State *st, const Word16 L_frame_ol
move16();
st->exp_mem_preemph_enc = st->exp_buf_speech_enc;
move16();
-#ifdef NONBE_FIX_ISSUE_2206
st->mem_wsp_enc = st->buf_wspeech_enc[st->L_frame + L_SUBFR - 1];
move16();
-#else
- st->mem_wsp_enc = shr( st->buf_wspeech_enc[st->L_frame + L_SUBFR - 1], sub( Q16, st->exp_buf_wspeech_enc ) ); // Q-1
- move16();
-#endif
}
/*coming from TCXonly modes*/
ELSE IF( !st->tcxonly && GE_32( last_total_brate, ACELP_32k ) )
{
-#ifdef NONBE_FIX_ISSUE_2206
Word16 exp_buf_wspeech_enc;
exp_buf_wspeech_enc = s_max( st->exp_old_wsp, st->exp_buf_wspeech_enc );
@@ -1423,27 +1412,14 @@ static void init_sig_buffers_ivas_fx( Encoder_State *st, const Word16 L_frame_ol
Copy_Scale_sig_nosat( st->old_wsp_fx, st->buf_wspeech_enc + st->L_frame + L_SUBFR - L_WSP_MEM, L_WSP_MEM, sub( st->exp_old_wsp, exp_buf_wspeech_enc ) );
st->exp_buf_wspeech_enc = exp_buf_wspeech_enc;
move16(); /*Resamp buffers needed only for ACELP*/
-#else
-
- Scale_sig( st->buf_wspeech_enc, L_FRAME16k + L_SUBFR + L_FRAME16k + L_NEXT_MAX_16k + 320, sub( 0, sub( st->exp_old_wsp, st->exp_buf_wspeech_enc ) ) );
- Copy( st->old_wsp_fx, st->buf_wspeech_enc + st->L_frame + L_SUBFR - L_WSP_MEM, L_WSP_MEM );
- // Copy_Scale_sig( st->old_wsp_fx, st->buf_wspeech_enc + st->L_frame + L_SUBFR - L_WSP_MEM, L_WSP_MEM, sub( st->prev_Q_new, st->prev_Q_old ) );
- st->exp_buf_wspeech_enc = st->exp_old_wsp;
- move16(); /*Resamp buffers needed only for ACELP*/
-#endif
IF( EQ_16( st->L_frame, L_FRAME16k ) )
{
lerp( st->buf_wspeech_enc + st->L_frame + L_SUBFR - L_WSP_MEM, st->buf_wspeech_enc + st->L_frame + L_SUBFR - 310, 310, L_WSP_MEM );
}
hLPDmem->mem_w0 = 0;
move16();
-#ifdef NONBE_FIX_ISSUE_2206
st->mem_wsp_enc = st->buf_wspeech_enc[st->L_frame + L_SUBFR - 1];
move16();
-#else
- st->mem_wsp_enc = shr( st->buf_wspeech_enc[st->L_frame + L_SUBFR - 1], sub( Q16, st->exp_buf_wspeech_enc ) ); // Q-1
- move16();
-#endif
}
}
@@ -1546,11 +1522,7 @@ static void init_core_sig_ana_ivas_fx( Encoder_State *st )
*
*
*-----------------------------------------------------------------------*/
-#ifdef NONBE_FIX_ISSUE_2518
static void init_acelp_ivas_fx( Encoder_State *st, Word16 L_frame_old, const Word32 last_total_brate )
-#else
-static void init_acelp_ivas_fx( Encoder_State *st, Word16 L_frame_old, Word16 shift, const Word32 last_total_brate )
-#endif
{
Word16 mem_syn_r_size_old;
Word16 mem_syn_r_size_new;
@@ -1733,13 +1705,8 @@ static void init_acelp_ivas_fx( Encoder_State *st, Word16 L_frame_old, Word16 sh
move16();
Copy( hLPDmem->mem_syn2, tmp_buf + 1, M );
deemph_fx( tmp_buf + 1, st->preemph_fac, M, &tmp );
-#ifdef NONBE_FIX_ISSUE_2518
Residu3_fx( Ap, tmp_buf + M, &tmp, 1, 0 );
hLPDmem->mem_w0 = sub_sat( shl_sat( st->wspeech_enc[-1], sub( hLPDmem->q_mem_syn, sub( Q15, st->exp_buf_wspeech_enc ) ) ), tmp );
-#else
- Residu3_fx( Ap, tmp_buf + M, &tmp, 1, 1 );
- hLPDmem->mem_w0 = sub_sat( shr_sat( st->wspeech_enc[-1], shift ), tmp );
-#endif
move16();
}
}
diff --git a/lib_enc/core_enc_ol_fx.c b/lib_enc/core_enc_ol_fx.c
index 94a306091a3df4c17b49c0dbb6dae776a32d777d..c891714519b981add155b731fe7b51e4d6c540dd 100644
--- a/lib_enc/core_enc_ol_fx.c
+++ b/lib_enc/core_enc_ol_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
@@ -1278,19 +1281,6 @@ void core_acelp_tcx20_switching_fx(
st->acelpFramesCount = 0;
move16();
}
-#ifdef DEBUGGING
- if ( st->force != -1 )
- {
- if ( st->force == FORCE_SPEECH )
- {
- st->core = ACELP_CORE;
- }
- else
- {
- st->core = TCX_20_CORE;
- }
- }
-#endif
}
/* Fixed Decision (using -C) */
diff --git a/lib_enc/core_enc_reconf_fx.c b/lib_enc/core_enc_reconf_fx.c
index 9f21792e353c441ee0ac0802ccf948cc48756b8a..f6e057b48509f5d61a82b4d9aa5a3278c861ccc6 100644
--- a/lib_enc/core_enc_reconf_fx.c
+++ b/lib_enc/core_enc_reconf_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/core_enc_switch_fx.c b/lib_enc/core_enc_switch_fx.c
index 3bea33c1228bb5293ae6bd52acca6f1f7c148435..08227ecd616300673c7ec84372789407711b4d79 100644
--- a/lib_enc/core_enc_switch_fx.c
+++ b/lib_enc/core_enc_switch_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
@@ -386,24 +389,7 @@ void core_coder_mode_switch_ivas_fx(
move32();
st->currEnergyHF_e_fx = 0;
move16();
-#ifndef NONBE_FIX_ISSUE_2518
- Word16 shift = getScaleFactor16( st->old_inp_16k_fx, L_INP_MEM );
- Scale_sig( st->old_inp_16k_fx, L_INP_MEM, shift );
- st->exp_old_inp_16k = sub( st->exp_old_inp_16k, shift );
- move16();
- shift = getScaleFactor16( st->old_inp_12k8_fx, L_INP_MEM );
- Scale_sig( st->old_inp_12k8_fx, L_INP_MEM, shift );
- st->exp_old_inp_12k8 = sub( st->exp_old_inp_12k8, shift );
- move16();
-#endif
init_coder_ace_plus_ivas_fx( st, last_total_brate, st->total_brate, MCT_flag );
-#ifndef NONBE_FIX_ISSUE_2518
- if ( st->hLPDmem != NULL )
- {
- st->hLPDmem->q_lpd_old_exc = st->prev_Q_new;
- move16();
- }
-#endif
}
test();
diff --git a/lib_enc/core_enc_updt_fx.c b/lib_enc/core_enc_updt_fx.c
index 3272830e8166679fe0ed2934210addacc4c01edc..2d27008c27336bbd752a03d522669254cebcd88c 100644
--- a/lib_enc/core_enc_updt_fx.c
+++ b/lib_enc/core_enc_updt_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/core_switching_enc_fx.c b/lib_enc/core_switching_enc_fx.c
index 2ba41243a28a055fddae02c24eddb3e008c2e696..33f4ae1a6e50810b663e12e3720197313c533ff0 100644
--- a/lib_enc/core_switching_enc_fx.c
+++ b/lib_enc/core_switching_enc_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
@@ -411,13 +414,8 @@ void core_switching_pre_enc_fx(
}
tmp = sub( L_LOOK_16k + L_SUBFR16k, Sample_Delay_HP );
-#ifdef NONBE_FIX_ISSUE_2206_SWB_EXPERIMENT
Copy( &hBWE_TD->old_speech_shb_fx[tmp], hBWE_FD->new_input_hp_fx, Sample_Delay_HP ); /*Q(hBWE_TD->old_speech_shb_q)*/
hBWE_FD->Q_new_input_hp = hBWE_TD->old_speech_shb_q;
-#else
- Copy( &hBWE_TD->old_speech_shb_fx[tmp], hBWE_FD->new_input_hp_fx, Sample_Delay_HP ); /*Q(Q_shb_spch)*/
- hBWE_FD->Q_new_input_hp = 0;
-#endif
move16();
IF( NE_16( st_fx->last_extl, WB_BWE ) )
@@ -567,10 +565,8 @@ void core_switching_post_enc_fx(
ELSE
{
set16_fx( hBWE_TD->old_speech_shb_fx, 0, L_LOOK_16k + L_SUBFR16k );
-#ifdef NONBE_FIX_ISSUE_2206_SWB_EXPERIMENT
hBWE_TD->old_speech_shb_q = Q15;
move16();
-#endif
}
swb_tbe_reset_fx( hBWE_TD->mem_csfilt_fx, hBWE_TD->mem_genSHBexc_filt_down_shb_fx, hBWE_TD->state_lpc_syn_fx,
@@ -578,10 +574,8 @@ void core_switching_post_enc_fx(
hBWE_TD->mem_stp_swb_fx, &( hBWE_TD->gain_prec_swb_fx ) );
set16_fx( hBWE_TD->dec_2_over_3_mem_fx, 0, L_FILT_2OVER3 );
-#ifdef NONBE_FIX_ISSUE_2206
hBWE_TD->dec_2_over_3_mem_q = Q15;
move16();
-#endif
IF( NE_16( st_fx->element_mode, EVS_MONO ) )
{
set16_fx( st_fx->hBWE_TD->dec_2_over_3_mem_lp_fx, 0, L_FILT_2OVER3_LP );
diff --git a/lib_enc/corr_xh_fx.c b/lib_enc/corr_xh_fx.c
index 14bd84b79506c56b9d297eca6c52dafa16c3f62a..a6feec947ccb64bb15bb24f9e6fbff912415d624 100644
--- a/lib_enc/corr_xh_fx.c
+++ b/lib_enc/corr_xh_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/decision_matrix_enc_fx.c b/lib_enc/decision_matrix_enc_fx.c
index 0bf5c8dfa4f56da5c6c13b7d1d4a31210279d221..05621414c5e46c01205e109f02ae4fbe0365cc25 100644
--- a/lib_enc/decision_matrix_enc_fx.c
+++ b/lib_enc/decision_matrix_enc_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
@@ -189,19 +192,12 @@ void decision_matrix_enc_fx(
st_fx->core = ACELP_CORE;
move16();
-#ifdef DEBUGGING
- if ( st_fx->total_brate >= HQCORE_NB_MIN_RATE && ( st_fx->force == FORCE_MUSIC || ( st_fx->force == -1 && st_fx->sp_aud_decision1 == 1 ) ) )
- {
- st_fx->core = HQ_CORE;
- }
-#else
test();
IF( GE_32( st_fx->total_brate, HQCORE_NB_MIN_RATE ) && EQ_16( st_fx->sp_aud_decision1, 1 ) )
{
st_fx->core = HQ_CORE;
move16();
}
-#endif
}
/*---------------------------------------------------------------------*
@@ -213,14 +209,10 @@ void decision_matrix_enc_fx(
st_fx->core = ACELP_CORE;
move16();
-#ifdef DEBUGGING
- if ( ( st_fx->total_brate >= HQCORE_WB_MIN_RATE && ( st_fx->force == FORCE_MUSIC || ( st_fx->force == -1 && st_fx->sp_aud_decision1 == 1 ) ) ) || st_fx->total_brate >= HQ_96k )
-#else
test();
test();
IF( ( GE_32( st_fx->total_brate, HQCORE_WB_MIN_RATE ) && EQ_16( st_fx->sp_aud_decision1, 1 ) ) ||
GE_32( st_fx->total_brate, HQ_96k ) )
-#endif
{
st_fx->core = HQ_CORE;
move16();
@@ -266,14 +258,10 @@ void decision_matrix_enc_fx(
ELSE IF( EQ_16( st_fx->bwidth, SWB ) || EQ_16( st_fx->bwidth, FB ) )
{
-#ifdef DEBUGGING
- if ( ( st_fx->total_brate >= HQCORE_WB_MIN_RATE && ( st_fx->force == FORCE_MUSIC || ( st_fx->force == -1 && st_fx->sp_aud_decision1 == 1 ) ) ) || st_fx->total_brate >= HQ_96k )
-#else
test();
test();
IF( ( GE_32( st_fx->total_brate, HQCORE_SWB_MIN_RATE ) && EQ_16( st_fx->sp_aud_decision1, 1 ) ) ||
GE_32( st_fx->total_brate, HQ_96k ) )
-#endif
{
st_fx->core = HQ_CORE;
move16();
diff --git a/lib_enc/detect_transient_fx.c b/lib_enc/detect_transient_fx.c
index 173092cdf8562ab854f5c880534346183d0c701f..8051753d01b40809ea85884b4e4d9c8091e79fbb 100644
--- a/lib_enc/detect_transient_fx.c
+++ b/lib_enc/detect_transient_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_enc/diffcod_fx.c b/lib_enc/diffcod_fx.c
index 871fd422fef42d0e3e513f23e2c9dfd0a0f90fe4..b14b97ef1cc99d8751c4b38983eeabfa9edef8ac 100644
--- a/lib_enc/diffcod_fx.c
+++ b/lib_enc/diffcod_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/dtx_fx.c b/lib_enc/dtx_fx.c
index b6b4e5a3414aca3d9d28c4a8bb1c4edd63c9f3f7..882ec245d1bbfaf8984bd8b85e136c33a6c8b3fd 100644
--- a/lib_enc/dtx_fx.c
+++ b/lib_enc/dtx_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/enc_acelp_fx.c b/lib_enc/enc_acelp_fx.c
index 52e42582c3ce33e25db2f2105b03646f7eb01624..06d5198a7252a2f0be166a0c70199bc698eaa5a5 100644
--- a/lib_enc/enc_acelp_fx.c
+++ b/lib_enc/enc_acelp_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/enc_acelp_tcx_main_fx.c b/lib_enc/enc_acelp_tcx_main_fx.c
index 34f333ae98928bcf7c50fe54d4434a7d2ce431d0..f6c349ceaa4930a8235b67e086be5f823b63543d 100644
--- a/lib_enc/enc_acelp_tcx_main_fx.c
+++ b/lib_enc/enc_acelp_tcx_main_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/enc_acelpx_fx.c b/lib_enc/enc_acelpx_fx.c
index a5b11f3b06ca27d9da208a793c7c7d8a54d0d14c..bd7adab9be395bf26748618d42d0c876fe548eb1 100644
--- a/lib_enc/enc_acelpx_fx.c
+++ b/lib_enc/enc_acelpx_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/enc_amr_wb_fx.c b/lib_enc/enc_amr_wb_fx.c
index e31578c7a3993e639d5bbcce12002687d1f863d4..890895a007c2ed7361c2be04cc6702dfb1b311b8 100644
--- a/lib_enc/enc_amr_wb_fx.c
+++ b/lib_enc/enc_amr_wb_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/enc_gain_fx.c b/lib_enc/enc_gain_fx.c
index 2e1a5019b0358a1056cd07e600984cb0596e86a2..b45a0ac615584accc7ef91e4f42c1e4a42299993 100644
--- a/lib_enc/enc_gain_fx.c
+++ b/lib_enc/enc_gain_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/enc_gen_voic_fx.c b/lib_enc/enc_gen_voic_fx.c
index 1ca20c9a6bec082cb7157dd4551994bd49fab953..29f07cd467ccf5a1f0c911032d21339b9998f661 100644
--- a/lib_enc/enc_gen_voic_fx.c
+++ b/lib_enc/enc_gen_voic_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
@@ -34,12 +37,8 @@ static void rem_offset(
tmp = round_fx_sat( loffset );
FOR( i = 0; i < l_subfr; i++ )
{
-#ifdef NONBE_FIX_ISSUE_2206
/* The need of sub_sat() here should be revisited. */
out[i] = sub_sat( in[i], tmp );
-#else
- out[i] = sub( in[i], tmp );
-#endif
move16();
}
diff --git a/lib_enc/enc_gen_voic_rf_fx.c b/lib_enc/enc_gen_voic_rf_fx.c
index cf4b3825999b595f31aa53689685102ef88fbae2..b75e83caa28abe88cb6eaaf9beb41a94b6f39982 100644
--- a/lib_enc/enc_gen_voic_rf_fx.c
+++ b/lib_enc/enc_gen_voic_rf_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/enc_higher_acelp_fx.c b/lib_enc/enc_higher_acelp_fx.c
index 9d74cedc9a0239c1a1ca624a140f485df08b483e..20d27d7e3d158ff55fa3a9b9e862c307ca8723db 100644
--- a/lib_enc/enc_higher_acelp_fx.c
+++ b/lib_enc/enc_higher_acelp_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
@@ -301,7 +304,6 @@ void transf_cdbk_enc_fx(
* DCT transform
*--------------------------------------------------------------*/
-#ifdef NONBE_FIX_ISSUE_2518_TRANSENC_SAT_FIX
Word16 q_x_tran;
IF( EQ_16( st_fx->element_mode, EVS_MONO ) )
{
@@ -314,13 +316,6 @@ void transf_cdbk_enc_fx(
q_x_tran = s_min( Q_AVQ_OUT_DEC, norm_arr( x_norm, Nsv * WIDTH_BAND ) );
Copy_Scale_sig_nosat( x_norm, x_tran, Nsv * WIDTH_BAND, q_x_tran );
}
-#else
- FOR( i = 0; i < Nsv * WIDTH_BAND; i++ )
- {
- x_tran[i] = shl_sat( x_norm[i], Q_AVQ_OUT_DEC );
- move16();
- }
-#endif
test();
test();
@@ -336,13 +331,8 @@ void transf_cdbk_enc_fx(
edct2_fx( L_SUBFR, 1, x_tran, out32, &Qdct, ip_edct2_64, w_edct2_64_fx );
/*qdct = sub(Q_AVQ_OUT_DEC,qdct+Q_AVQ_OUT_DEC);*/
Qdct = negate( Qdct );
-#ifdef NONBE_FIX_ISSUE_2518_TRANSENC_SAT_FIX
Copy_Scale_sig_32_16( out32, code_preQ, L_SUBFR, Qdct ); /* Output in q_x_tran */
/*qdct = q_x_tran;*/
-#else
- Copy_Scale_sig_32_16( out32, code_preQ, L_SUBFR, Qdct ); /* Output in Q_AVQ_OUT_DEC */
- /*qdct = Q_AVQ_OUT_DEC;*/
-#endif
}
/*--------------------------------------------------------------*
@@ -368,27 +358,18 @@ void transf_cdbk_enc_fx(
test();
IF( GT_16( st_fx->element_mode, EVS_MONO ) && NE_16( st_fx->coder_type, INACTIVE ) && GE_32( st_fx->core_brate, MIN_BRATE_AVQ_EXC ) && LE_32( st_fx->core_brate, MAX_BRATE_AVQ_EXC_TD ) && !harm_flag_acelp && code_preQ[0] != 0 )
{
-#ifdef NONBE_FIX_ISSUE_2518_TRANSENC_SAT_FIX
IF( GT_16( abs_s( st_fx->last_code_preq ), shl_sat( abs_s( code_preQ[0] ), sub( Q_AVQ_OUT_DEC + 4, q_x_tran ) ) ) )
-#else
- IF( GT_16( abs_s( st_fx->last_code_preq ), shl_sat( abs_s( code_preQ[0] ), 4 ) ) )
-#endif
{
st_fx->mem_preemp_preQ_fx = shr( st_fx->mem_preemp_preQ_fx, 4 );
move16();
}
-#ifdef NONBE_FIX_ISSUE_2518_TRANSENC_SAT_FIX
ELSE IF( GT_16( abs_s( st_fx->last_code_preq ), shl_sat( abs_s( code_preQ[0] ), sub( Q_AVQ_OUT_DEC + 3, q_x_tran ) ) ) )
-#else
- ELSE IF( GT_16( abs_s( st_fx->last_code_preq ), shl_sat( abs_s( code_preQ[0] ), 3 ) ) )
-#endif
{
st_fx->mem_preemp_preQ_fx = shr( st_fx->mem_preemp_preQ_fx, 3 );
move16();
}
}
-#ifdef NONBE_FIX_ISSUE_2518_TRANSENC_SAT_FIX
st_fx->last_code_preq = shl_sat( code_preQ[L_SUBFR - 1], sub( 1, q_x_tran ) ); // Q0 ? Q1
move16();
@@ -397,12 +378,6 @@ void transf_cdbk_enc_fx(
preemph_fx( code_preQ, FAC_PRE_AVQ_FX, L_SUBFR, &( st_fx->mem_preemp_preQ_fx ) );
st_fx->mem_preemp_preQ_fx = shl_sat( st_fx->mem_preemp_preQ_fx, sub( Q_AVQ_OUT_DEC, q_x_tran ) );
move16();
-#else
- st_fx->last_code_preq = shr( code_preQ[L_SUBFR - 1], 9 ); // Q0
- move16();
-
- preemph_fx( code_preQ, FAC_PRE_AVQ_FX, L_SUBFR, &( st_fx->mem_preemp_preQ_fx ) );
-#endif
/*--------------------------------------------------------------*
* For inactive segments
@@ -415,36 +390,22 @@ void transf_cdbk_enc_fx(
IF( EQ_16( st_fx->coder_type, INACTIVE ) )
{
/*ftemp = fcode_preQ[0] *fh1[L_SUBFR-1];*/
-#ifdef NONBE_FIX_ISSUE_2518_TRANSENC_SAT_FIX
Ltmp = L_mult( code_preQ[0], h1[L_SUBFR - 1] ); /*1+14+shift + q_x_tran */
-#else
- Ltmp = L_mult( code_preQ[0], h1[L_SUBFR - 1] ); /*1+14+shift + Q_AVQ_OUT */
-#endif
FOR( i = 1; i < L_SUBFR; i++ )
{
/*ftemp += fcode_preQ[i] * fh1[L_SUBFR-1-i];*/
Ltmp = L_mac( Ltmp, code_preQ[i], h1[L_SUBFR - 1 - i] );
}
/*fxn[L_SUBFR-1] -= *fgain_preQ * ftemp;*/
-#ifdef NONBE_FIX_ISSUE_2518_TRANSENC_SAT_FIX
Ltmp = L_shr( Mult_32_16( Ltmp, *gain_preQ ), sub( add( q_x_tran, 2 ), Q_new ) ); /* (2 + 1 + 14 +shift+Q_AVQ_OUT)-(Q_AVQ_OUT+2-Q_new) = 15 + Q_new + shift */
-#else
- Ltmp = L_shr( Mult_32_16( Ltmp, *gain_preQ ), sub( add( Q_AVQ_OUT_DEC, 2 ), Q_new ) ); /* (2 + 1 + 14 +shift+Q_AVQ_OUT)-(Q_AVQ_OUT+2-Q_new) = 15 + Q_new + shift */
-#endif
- xn[L_SUBFR - 1] = round_fx( L_sub( L_mult( xn[L_SUBFR - 1], 32767 ), Ltmp ) ); /* -> Q_new + shift -1 */
+ xn[L_SUBFR - 1] = round_fx( L_sub( L_mult( xn[L_SUBFR - 1], 32767 ), Ltmp ) ); /* -> Q_new + shift -1 */
}
ELSE
{
conv_fx( code_preQ, h1, x_tran, L_SUBFR );
-#ifdef NONBE_FIX_ISSUE_2518_TRANSENC_SAT_FIX
updt_tar_HR_fx( cn, cn, code_preQ, *gain_preQ, sub( Q_new, add( -15 + 2, q_x_tran ) ), L_SUBFR );
updt_tar_HR_fx( xn, xn, x_tran, *gain_preQ, sub( Q_new, add( -15 + 2, q_x_tran ) ), L_SUBFR );
-#else
- updt_tar_HR_fx( cn, cn, code_preQ, *gain_preQ, sub( Q_new, add( -15 + 2, Q_AVQ_OUT_DEC ) ), L_SUBFR );
-
- updt_tar_HR_fx( xn, xn, x_tran, *gain_preQ, sub( Q_new, add( -15 + 2, Q_AVQ_OUT_DEC ) ), L_SUBFR );
-#endif
*gain_pit = corr_xy1_fx( xn, y1, g_corr, L_SUBFR, 0, &Overflow ); /* Q14 */
move16();
/* clip gain if necessary to avoid problems at decoder */
diff --git a/lib_enc/enc_nelp_fx.c b/lib_enc/enc_nelp_fx.c
index 7eaccfceab0254d815aaf85bf77de987d7577b46..865af5553ef493cfcba2c0c3a756aefc5b2f87bb 100644
--- a/lib_enc/enc_nelp_fx.c
+++ b/lib_enc/enc_nelp_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/enc_pit_exc_fx.c b/lib_enc/enc_pit_exc_fx.c
index f93919b502d49b49f46ede1ff43e4ca18fd14676..5a32c86155887e1eccfca3b2eb55bfd83a623c62 100644
--- a/lib_enc/enc_pit_exc_fx.c
+++ b/lib_enc/enc_pit_exc_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/enc_ppp_fx.c b/lib_enc/enc_ppp_fx.c
index 5f097660449be0efb6aa925ba1995735af12dbf4..09db3972d72bc1f8a2d69b62b581336078d28526 100644
--- a/lib_enc/enc_ppp_fx.c
+++ b/lib_enc/enc_ppp_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/enc_prm_fx.c b/lib_enc/enc_prm_fx.c
index 4db8f2f2c488e03c1b1844406f6d949ab348ecba..5bd24a2b106782d3e9916b213eb3f43f309f21b6 100644
--- a/lib_enc/enc_prm_fx.c
+++ b/lib_enc/enc_prm_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/enc_tran_fx.c b/lib_enc/enc_tran_fx.c
index 10e458fb5710a073f8c2f61cbd3b433e3e228791..ac87594e85176146f02d4180b333851b19ec0333 100644
--- a/lib_enc/enc_tran_fx.c
+++ b/lib_enc/enc_tran_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/enc_uv_fx.c b/lib_enc/enc_uv_fx.c
index c09de6c3f11ab0efe2dc398a10f37ce623aad7aa..2b1bc0d052249644c34ecb20fd6f1c8dd2c719b6 100644
--- a/lib_enc/enc_uv_fx.c
+++ b/lib_enc/enc_uv_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
@@ -190,9 +193,6 @@ void encod_unvoiced_fx(
index = gain_enc_uv_fx( code_fx, code2, L_SUBFR, &gain_pit_fx, &L_gain_code_fx, &gain_code2,
st_fx->flag_noisy_speech_snr, &g_corr, Es_pred, &norm_gain_code_fx, &gain_inov_fx, FUNC_GAIN_ENC_GACELP_UV ); /* Q0 */
-#ifdef DEBUGGING
- assert( st_fx->acelp_cfg.gains_mode[i_subfr_idx] == 7 && "Error: UC two-stage, only 5+2 gain Q is supported" );
-#endif
push_indice( st_fx->hBstr, IND_GAIN, index, st_fx->acelp_cfg.gains_mode[i_subfr_idx] );
gp_clip_test_gain_pit_fx( st_fx->element_mode, st_fx->core_brate, gain_pit_fx, st_fx->clip_var_fx );
diff --git a/lib_enc/energy_fx.c b/lib_enc/energy_fx.c
index 6a0be10a75cead7d3db3cd18e87b212bd75b64cb..41e999c899ff0e5ecda8f66f70209c12ad44849b 100644
--- a/lib_enc/energy_fx.c
+++ b/lib_enc/energy_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/eval_pit_contr_fx.c b/lib_enc/eval_pit_contr_fx.c
index b9c56e401cf126f9496ff5c219dc6da4409fb48d..ac51c1724441e80c900ba22255e4973d189c8927 100644
--- a/lib_enc/eval_pit_contr_fx.c
+++ b/lib_enc/eval_pit_contr_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/evs_enc_fx.c b/lib_enc/evs_enc_fx.c
index c7f04a06dee3549ec7237162ac7c072cfbdc272a..c78c45a64d4017193dc0e19dd4dd936543a276e3 100644
--- a/lib_enc/evs_enc_fx.c
+++ b/lib_enc/evs_enc_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
@@ -10,9 +13,6 @@
#include "rom_com.h" /* Common constants */
#include "basop_util.h" /* Function prototypes */
#include "prot_fx_enc.h"
-#ifdef DEBUGGING
-#include "debug.h"
-#endif
/*-------------------------------------------------------------------*
* Local function prototypes
@@ -72,20 +72,12 @@ ivas_error evs_enc_fx(
Word32 L_tmp;
UWord16 lsb;
Word16 tmp;
-#ifndef FIX_I4_OL_PITCH
Word16 pitch_orig[3]; /* original open-loop pitch values that might be altered in core_acelp_tcx20_switching_fx() within MODE2 */
-#endif
ivas_error error;
-#ifndef FIX_BASOP_2573_RF_MODE_UPDATE
- SC_VBR_ENC_HANDLE hSC_VBR = st->hSC_VBR;
-#endif
TD_CNG_ENC_HANDLE hTdCngEnc = st->hTdCngEnc;
LPD_state_HANDLE hLPDmem = st->hLPDmem;
TD_BWE_ENC_HANDLE hBWE_TD = st->hBWE_TD;
BSTR_ENC_HANDLE hBstr = st->hBstr;
-#ifndef FIX_BASOP_2573_RF_MODE_UPDATE
- RF_ENC_HANDLE hRF = st->hRF;
-#endif
error = IVAS_ERR_OK;
@@ -93,7 +85,6 @@ ivas_error evs_enc_fx(
Q_shb_spch = 0;
move16(); /* to avoid compiler warnings */
-#ifdef NONBE_FIX_ISSUE_2206_SWB_EXPERIMENT
hBWE_TD->old_speech_shb_q = 0;
move16();
st->hBWE_FD->Q_new_input_hp = 0;
@@ -102,7 +93,6 @@ ivas_error evs_enc_fx(
move16();
st->hBWE_FD->old_input_q = 0;
move16();
-#endif
/*------------------------------------------------------------------*
* Initializiation
@@ -185,13 +175,8 @@ ivas_error evs_enc_fx(
* Pre-processing
*---------------------------------------------------------------------*/
-#ifdef FIX_I4_OL_PITCH
- pre_proc_fx( st, input_frame, old_inp_12k8, old_inp_16k, &inp, fr_bands, &Etot, &ener, A, Aw, epsP, lsp_new, lsp_mid, &vad_hover_flag,
- &attack_flag, new_inp_resamp16k, &Voicing_flag, realBuffer, imagBuffer, &cldfbScale, hLPDmem->old_exc, &hq_core_type, &Q_new, &shift, Q_r );
-#else
pre_proc_fx( st, input_frame, old_inp_12k8, old_inp_16k, &inp, fr_bands, &Etot, &ener, pitch_orig, A, Aw, epsP, lsp_new, lsp_mid, &vad_hover_flag,
&attack_flag, new_inp_resamp16k, &Voicing_flag, realBuffer, imagBuffer, &cldfbScale, hLPDmem->old_exc, &hq_core_type, &Q_new, &shift, Q_r );
-#endif
IF( EQ_16( st->mdct_sw, MODE2 ) )
{
@@ -294,12 +279,10 @@ ivas_error evs_enc_fx(
*---------------------------------------------------------------------*/
core_switching_post_enc_fx( st, old_inp_12k8, old_inp_16k, A, shift, Q_new, st->Q_syn2, &Q_synth );
-#ifndef FIX_I4_OL_PITCH
IF( EQ_16( st->core, HQ_CORE ) )
{
Copy( pitch_orig, st->pitch, 3 ); /* original open-loop pitch values might be altered in core_acelp_tcx20_switching_fx() */
}
-#endif
}
ELSE /* MODE2 */
{
@@ -323,9 +306,7 @@ ivas_error evs_enc_fx(
enc_acelp_tcx_main_fx( old_inp_16k + L_INP_MEM, st, Aw, lsp_new, lsp_mid,
bwe_exc_extended, voice_factors, pitch_buf,
vad_hover_flag, &Q_new, &shift );
-#ifndef FIX_I4_OL_PITCH
Copy( pitch_orig, st->pitch, 3 ); /* populate the original OL pitch values back Q0*/
-#endif
/*---------------------------------------------------------------------*
* Postprocessing for codec switching
@@ -430,26 +411,16 @@ ivas_error evs_enc_fx(
IF( GE_32( st->input_Fs, 16000 ) && ( LT_16( st->bwidth, SWB ) ) )
{
/* Common pre-processing for WB TBE and WB BWE */
-#ifdef NONBE_FIX_ISSUE_2206
wb_pre_proc_fx( st, EVS_MONO, new_inp_resamp16k, hb_speech, -Q1 );
-#else
- wb_pre_proc_fx( st, EVS_MONO, new_inp_resamp16k, hb_speech );
-#endif
}
-#ifdef NONBE_FIX_ISSUE_2206
st->q_inp = -Q1; /* meaning Q0 */
move16();
-#endif
IF( EQ_16( st->extl, WB_TBE ) )
{
/* WB TBE encoder */
-#ifdef NONBE_FIX_ISSUE_2206
wb_tbe_enc_fx( st, hb_speech, -Q1, bwe_exc_extended, Q_new, voice_factors, pitch_buf );
-#else
- wb_tbe_enc_fx( st, hb_speech, bwe_exc_extended, Q_new, voice_factors, pitch_buf );
-#endif
IF( EQ_16( st->codec_mode, MODE2 ) )
{
tbe_write_bitstream_fx( st );
@@ -458,11 +429,7 @@ ivas_error evs_enc_fx(
ELSE IF( EQ_16( st->extl, WB_BWE ) )
{
/* WB BWE encoder */
-#ifdef NONBE_FIX_ISSUE_2206
wb_bwe_enc_fx( st, new_inp_resamp16k, -Q1 );
-#else
- wb_bwe_enc_fx( st, new_inp_resamp16k );
-#endif
}
/*---------------------------------------------------------------------*
@@ -474,11 +441,7 @@ ivas_error evs_enc_fx(
IF( !st->Opt_SC_VBR && GE_32( st->input_Fs, 32000 ) )
{
/* Common pre-processing for SWB(FB) TBE and SWB BWE */
-#ifdef NONBE_FIX_ISSUE_2206_SWB_EXPERIMENT
swb_pre_proc_fx( st, new_swb_speech, shb_speech, NULL, realBuffer, imagBuffer, 0, &cldfbScale, NULL );
-#else
- swb_pre_proc_fx( st, new_swb_speech, shb_speech, realBuffer, imagBuffer, 0, &cldfbScale, NULL );
-#endif
}
ELSE IF( GE_32( st->input_Fs, 32000 ) )
{
@@ -554,11 +517,7 @@ ivas_error evs_enc_fx(
test();
IF( st->Opt_DTX_ON && GE_16( input_frame, L_FRAME32k ) )
{
-#ifdef NONBE_FIX_ISSUE_2206_SWB_EXPERIMENT
swb_CNG_enc_fx( st, shb_speech, 0, old_syn_12k8_16k );
-#else
- swb_CNG_enc_fx( st, shb_speech, old_syn_12k8_16k );
-#endif
}
/*---------------------------------------------------------------------*
@@ -585,44 +544,6 @@ ivas_error evs_enc_fx(
move16();
}
-#ifndef FIX_BASOP_2573_RF_MODE_UPDATE
- IF( EQ_16( st->rf_mode, 1 ) )
- {
- IF( EQ_16( hRF->rf_frame_type, RF_NELP ) )
- {
- hSC_VBR->last_nelp_mode = 1;
- }
- ELSE
- {
- hSC_VBR->last_nelp_mode = 0;
- }
- }
-
- /* RF mode updates */
- st->rf_mode_last = st->rf_mode;
- IF( EQ_16( st->Opt_RF_ON, 1 ) )
- {
- st->L_frame = L_FRAME;
- st->rf_mode = 1;
- }
-#endif
-#ifdef DEBUG_MODE_INFO
- dbgwrite( &st->codec_mode, sizeof( short ), 1, input_frame, "res/codec" );
- dbgwrite( &st->core, sizeof( short ), 1, input_frame, "res/core" );
- dbgwrite( &st->extl, sizeof( short ), 1, input_frame, "res/extl" );
- dbgwrite( &st->bwidth, sizeof( short ), 1, input_frame, "res/bwidth" );
- float ener_flt = st->total_brate / 1000.0f;
- dbgwrite( &ener_flt, sizeof( float ), 1, input_frame, "res/total_brate" );
- ener_flt = st->core_brate / 1000.0f;
- dbgwrite( &ener_flt, sizeof( float ), 1, input_frame, "res/core_brate" );
- ener_flt = st->extl_brate / 1000.0f;
- dbgwrite( &ener_flt, sizeof( float ), 1, input_frame, "res/extl_brate" );
- dbgwrite( &st->coder_type, sizeof( short ), 1, input_frame, "res/coder_type" );
- dbgwrite( &st->clas, sizeof( short ), 1, input_frame, "res/clas" );
- dbgwrite( &st->cng_type, sizeof( short ), 1, input_frame, "res/cng_type" );
- dbgwrite( &st->L_frame, sizeof( short ), 1, input_frame, "res/L_frame" );
- dbgwrite( &st->vad_flag, sizeof( short ), 1, input_frame, "res/vad_flag" );
-#endif
pop_wmops();
diff --git a/lib_enc/ext_sig_ana_fx.c b/lib_enc/ext_sig_ana_fx.c
index 33c2aa8f5f0cfb994620bb29f14447e4e6502e75..cb19a4fffd664bababc7263d24a505a1e89f0d94 100644
--- a/lib_enc/ext_sig_ana_fx.c
+++ b/lib_enc/ext_sig_ana_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
@@ -473,14 +476,10 @@ void core_signal_analysis_high_bitrate_fx(
*-------------------------------------------------------------------*/
void core_signal_analysis_high_bitrate_ivas_fx(
-#ifdef NONBE_FIX_ISSUE_2206
const Word16 *new_samples, /*i : *Q_new-1 */
-#else
- const Word16 *new_samples, /*i : Q0 */
-#endif
- const Word16 T_op[3], /* i : open-loop pitch values for quantiz. Q0*/
- Word16 lsp_new[], /* Q15 */
- Word16 lsp_mid[], /* Q15 */
+ const Word16 T_op[3], /* i : open-loop pitch values for quantiz. Q0*/
+ Word16 lsp_new[], /* Q15 */
+ Word16 lsp_mid[], /* Q15 */
Encoder_State *st,
Word16 pTnsSize[], /* Q0 */
Word16 pTnsBits[], /* Q0 */
@@ -531,9 +530,6 @@ void core_signal_analysis_high_bitrate_ivas_fx(
Word16 tmp, *tmpP16;
Word16 q_mdstWin = st->q_inp, q_tcx20Win = st->q_inp;
Word32 *tmpP32;
-#ifndef NONBE_FIX_ISSUE_2206
- Word16 Q_exp;
-#endif
Word32 L_tmpbuf[N_MAX + L_MDCT_OVLP_MAX];
move16();
move16();
@@ -570,7 +566,6 @@ void core_signal_analysis_high_bitrate_ivas_fx(
test();
IF( st->tcxonly && NE_16( st->element_mode, IVAS_CPE_MDCT ) )
{
-#ifdef NONBE_FIX_ISSUE_2206
IF( st->element_mode > EVS_MONO )
{
Word16 nq;
@@ -590,11 +585,6 @@ void core_signal_analysis_high_bitrate_ivas_fx(
/* st->new_speech_enc copied from new_samples in Q st->exp_buf_speech_enc
This is considering new_samples is in q 0 in current code*/
}
-#else
- Copy_Scale_sig( new_samples, st->new_speech_enc, L_frame, sub( 15, st->exp_buf_speech_enc ) );
- /* st->new_speech_enc copied from new_samples in Q st->exp_buf_speech_enc
- This is considering new_samples is in q 0 in current code*/
-#endif
}
/*--------------------------------------------------------------*
@@ -630,7 +620,6 @@ void core_signal_analysis_high_bitrate_ivas_fx(
test();
IF( st->tcxonly && NE_16( st->element_mode, IVAS_CPE_MDCT ) )
{
-#ifdef NONBE_FIX_ISSUE_2206
Word16 nexp;
nexp = s_max( s_max( st->exp_buf_speech_enc, st->exp_buf_speech_enc_pe ), st->exp_mem_preemph_enc );
@@ -641,31 +630,10 @@ void core_signal_analysis_high_bitrate_ivas_fx(
move16();
st->exp_buf_speech_enc_pe = nexp;
move16();
-#else
- Copy( st->speech_enc + st->encoderLookahead_enc, st->new_speech_enc_pe, L_frame ); // Assuming both exp_buf_speech_enc_pe and exp_buf_speech_enc are same
-#endif
preemph_fx( st->new_speech_enc_pe, st->preemph_fac, L_frame, &( st->mem_preemph_enc ) ); // using this to keep values alligned in Q-1
}
-#ifndef NONBE_FIX_ISSUE_2206
- /* Rescale Memory */
- Q_exp = sub( *Q_new, st->prev_Q_new );
- move16();
-
- Scale_sig( st->old_inp_16k_fx, L_INP_MEM, sub( *Q_new, sub( Q15, st->exp_old_inp_16k ) ) ); // *Q_new
- st->exp_old_inp_16k = sub( Q15, *Q_new );
- move16();
- IF( Q_exp != 0 )
- {
-#ifndef NONBE_FIX_ISSUE_2206
- Scale_sig( st->buf_speech_enc_pe, st->encoderPastSamples_enc + st->encoderLookahead_enc, sub( Q_exp, sub( Q15, st->exp_buf_speech_enc_pe ) ) ); // *Q_new
- st->exp_buf_speech_enc_pe = sub( Q15, Q_exp );
- move16();
-#endif
- Scale_sig( &( st->mem_wsp_enc ), 1, Q_exp ); // *Q_new
- }
-#endif
IF( EQ_16( hTcxEnc->tcxMode, TCX_10 ) )
{
diff --git a/lib_enc/fd_cng_enc_fx.c b/lib_enc/fd_cng_enc_fx.c
index 0c0b95ab96bf73d3fb724f8a7e2772267474db2b..fc39c40b9c6fdbe7a641113610a097190d24288d 100644
--- a/lib_enc/fd_cng_enc_fx.c
+++ b/lib_enc/fd_cng_enc_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
@@ -1163,103 +1166,6 @@ void generate_comfort_noise_enc_fx(
return;
}
-#ifndef HARMONIZE_2539_cng_energy
-/*-------------------------------------------------------------------*
- * cng_energy_fx()
- *
- *
- *-------------------------------------------------------------------*/
-
-/*! r: CNG energy */
-Word16 cng_energy_fx(
- const Word16 element_mode, /* i : element mode Q0*/
- const Word16 bwidth, /* i : audio bandwidh Q0*/
- const Word16 CNG_mode, /* i : mode for DTX configuration Q0*/
- const Word16 CNG_att, /* i : attenuation factor for CNG Q7*/
- const Word16 *exc, /* i : input signal Q_new*/
- const Word16 len, /* i : vector length Q0*/
- const Word16 Q_new /* i : Input scaling */
-)
-{
- Word16 i, maxv, scale;
- Word16 hi, lo, enr, tmp16, att;
- const Word16 *pt_res;
- Word32 L_ener, L_tmp;
-
- maxv = 0;
- move16();
- FOR( i = 0; i < len; i++ )
- {
- maxv = s_max( maxv, abs_s( exc[i] ) );
- }
- scale = norm_s( maxv );
- pt_res = exc;
- L_ener = L_deposit_l( 1 );
- IF( EQ_16( len, L_FRAME ) )
- {
- FOR( i = 0; i < 128; i++ )
- {
- tmp16 = shl( *pt_res, scale );
- L_tmp = L_mult0( tmp16, tmp16 );
- pt_res++;
- tmp16 = shl( *pt_res, scale );
- L_tmp = L_mac0_sat( L_tmp, tmp16, tmp16 ); /* 2*(Q_new+scale) */
- pt_res++;
- L_ener = L_add( L_ener, L_shr( L_tmp, 7 ) ); /* 2*(Q_new+scale)+1, divide by L_frame done here */
- }
- }
- ELSE /* L_FRAME16k */
- {
- FOR( i = 0; i < 160; i++ )
- {
- tmp16 = shl( *pt_res, scale );
- L_tmp = L_mult0( tmp16, tmp16 );
- pt_res++;
- tmp16 = shl( *pt_res, scale );
- L_tmp = L_mac0_sat( L_tmp, tmp16, tmp16 ); /* 2*(Q_new+scale) */
- pt_res++;
- L_ener = L_add( L_ener, L_shr( Mult_32_16( L_tmp, 26214 /* 256/320, Q15 */ ), 7 ) ); /* 2*(Q_new+scale)+15+1-16+1, divide by L_frame done here */
- }
- }
-
- hi = norm_l( L_ener );
- lo = Log2_norm_lc( L_shl( L_ener, hi ) );
- hi = sub( 30, add( hi, shl( add( Q_new, scale ), 1 ) ) ); /* log2 exp in Q2*(Q_new+scale) */
- L_tmp = L_Comp( hi, lo ); /* Q16 */
- enr = round_fx( L_shl( L_tmp, 8 ) ); /* Q8 (16+8-16) */
-
- /* decrease the energy in case of WB input */
- test();
- IF( EQ_16( element_mode, IVAS_CPE_DFT ) || EQ_16( element_mode, IVAS_CPE_TD ) )
- {
- (void) CNG_att;
- }
- ELSE IF( NE_16( bwidth, NB ) )
- {
- IF( EQ_16( bwidth, WB ) )
- {
- IF( CNG_mode >= 0 )
- {
- /* Bitrate adapted attenuation */
- att = ENR_ATT_fx[CNG_mode];
- }
- ELSE
- {
- /* Use least attenuation for higher bitrates */
- att = ENR_ATT_fx[4];
- }
- }
- ELSE
- {
- att = 384;
- move16(); /*Q8*/
- }
- enr = sub( enr, att );
- }
-
- return enr;
-}
-#endif
/*-------------------------------------------------------------------*
* cng_energy_ivas_fx()
@@ -1268,11 +1174,7 @@ Word16 cng_energy_fx(
*-------------------------------------------------------------------*/
/*! r: CNG energy */
-#ifdef HARMONIZE_2539_cng_energy
Word16 cng_energy_fx(
-#else
-Word16 cng_energy_ivas_fx(
-#endif
const Word16 element_mode, /* i : element mode Q0*/
const Word16 bwidth, /* i : audio bandwidh Q0*/
const Word16 CNG_mode, /* i : mode for DTX configuration Q0*/
@@ -1286,13 +1188,11 @@ Word16 cng_energy_ivas_fx(
Word16 hi, lo, enr, tmp16, att;
const Word16 *pt_res;
Word32 L_ener, L_tmp;
-#ifdef HARMONIZE_2539_cng_energy
Word64 W_ener = W_shr( W_deposit32_h( 1 ), 1 );
if ( EQ_16( element_mode, EVS_MONO ) )
{
W_ener = W_neg( W_ener );
}
-#endif
maxv = 0;
move16();
@@ -1304,7 +1204,6 @@ Word16 cng_energy_ivas_fx(
pt_res = exc;
L_ener = L_deposit_l( 1 );
-#ifdef HARMONIZE_2539_cng_energy
Word16 scale_tmp;
Word32 scale_tmp32;
@@ -1317,13 +1216,11 @@ Word16 cng_energy_ivas_fx(
move16();
scale_tmp32 = L_shr( 0x40000000, 7 - 1 );
}
-#endif
IF( EQ_16( len, L_FRAME ) )
{
FOR( i = 0; i < 128; i++ )
{
-#ifdef HARMONIZE_2539_cng_energy
tmp16 = shl( *pt_res, scale_tmp );
L_tmp = L_mult0( tmp16, tmp16 );
pt_res++;
@@ -1331,22 +1228,12 @@ Word16 cng_energy_ivas_fx(
L_tmp = L_mac0_sat( L_tmp, tmp16, tmp16 );
pt_res++;
W_ener = W_msu0_32_32( W_ener, L_tmp, scale_tmp32 ); /* 2*(Q_new+scale)+1, divide by L_frame done here */
-#else
- tmp16 = shl( *pt_res, sub( scale, 4 ) ); // Q_new + scale - 4
- L_tmp = L_mult0( tmp16, tmp16 );
- pt_res++;
- tmp16 = shl( *pt_res, sub( scale, 4 ) ); // Q_new + scale - 4
- L_tmp = L_mac0( L_tmp, tmp16, tmp16 ); /* 2*(Q_new+scale) + 7 */
- pt_res++;
- L_ener = L_add( L_ener, L_tmp ); /* 2*(Q_new+scale)+1, divide by L_frame done here */
-#endif
}
}
ELSE /* L_FRAME16k */
{
FOR( i = 0; i < 160; i++ )
{
-#ifdef HARMONIZE_2539_cng_energy
tmp16 = shl( *pt_res, scale_tmp );
L_tmp = L_mult0( tmp16, tmp16 );
pt_res++;
@@ -1354,18 +1241,8 @@ Word16 cng_energy_ivas_fx(
L_tmp = L_mac0_sat( L_tmp, tmp16, tmp16 );
pt_res++;
W_ener = W_msu0_32_32( W_ener, Mult_32_16( L_tmp, 26214 /* 256/320, Q15 */ ), scale_tmp32 ); /* 2*(Q_new+scale)+15+1-16+1, divide by L_frame done here */
-#else
- tmp16 = shl( *pt_res, sub( scale, 4 ) ); // Q_new + scale - 4
- L_tmp = L_mult( tmp16, tmp16 );
- pt_res++;
- tmp16 = shl( *pt_res, sub( scale, 4 ) ); // Q_new + scale - 4
- L_tmp = L_mac( L_tmp, tmp16, tmp16 ); /* 2*(Q_new+scale) - 7 */
- pt_res++;
- L_ener = L_add( L_ener, Mult_32_16( L_tmp, 26214 /* 256/320, Q15 */ ) ); /* 2*(Q_new+scale)+15+1-16+1, divide by L_frame done here */
-#endif
}
}
-#ifdef HARMONIZE_2539_cng_energy
L_ener = L_shl( W_extract_h( W_ener ), 1 );
if ( EQ_16( element_mode, EVS_MONO ) )
{
@@ -1376,7 +1253,6 @@ Word16 cng_energy_ivas_fx(
{
L_ener = L_shl( L_ener, 1 );
}
-#endif
hi = norm_l( L_ener );
lo = Log2_norm_lc( L_shl( L_ener, hi ) );
diff --git a/lib_enc/find_tar_fx.c b/lib_enc/find_tar_fx.c
index 9a236731f51865204b2cfdcd8f9a5b65b6aec7fe..6770ea26454e940de53c7f2e607fab464469fd4b 100644
--- a/lib_enc/find_tar_fx.c
+++ b/lib_enc/find_tar_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/find_tilt_fx.c b/lib_enc/find_tilt_fx.c
index ef0f639a98d6c232f8aacd0da9400e10bcbe4c78..33e3a1162187ac56d52eefffd51a2128de924064 100644
--- a/lib_enc/find_tilt_fx.c
+++ b/lib_enc/find_tilt_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/find_uv_fx.c b/lib_enc/find_uv_fx.c
index 063989affe6fee9784922d101ecaa172c316fd8c..e1e3d9b2c69a1ebd7b2db728865dbdd86e89f89d 100644
--- a/lib_enc/find_uv_fx.c
+++ b/lib_enc/find_uv_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/find_wsp_fx.c b/lib_enc/find_wsp_fx.c
index a16f1a95c1a0f5fc4fe36566d4d8a53b20136797..9c3b38a6041d56c0fa982928538e6487c89839f9 100644
--- a/lib_enc/find_wsp_fx.c
+++ b/lib_enc/find_wsp_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/frame_spec_dif_cor_rate_fx.c b/lib_enc/frame_spec_dif_cor_rate_fx.c
index ea810ab67df717a24556c908ace623c724c0c76d..910999c3e3891c3d087d6cc9ce59044212d0543c 100644
--- a/lib_enc/frame_spec_dif_cor_rate_fx.c
+++ b/lib_enc/frame_spec_dif_cor_rate_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/gain_enc_fx.c b/lib_enc/gain_enc_fx.c
index 3e3c763230a571a5cd5e0486d3452c7a955585a7..32e4c72d436769fd77d3a4b64bea633b9749c738 100644
--- a/lib_enc/gain_enc_fx.c
+++ b/lib_enc/gain_enc_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/gaus_enc_fx.c b/lib_enc/gaus_enc_fx.c
index 5c53881cd0943f595f435c5d628ce3646b1cfbb2..0588cc06480babb5a1d6d23341ca02f3e5db4a4c 100644
--- a/lib_enc/gaus_enc_fx.c
+++ b/lib_enc/gaus_enc_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/gp_clip_fx.c b/lib_enc/gp_clip_fx.c
index 11f5fe90c065742fa8f21e9ab0ae3bd667d88a5f..308a531d995bc4c2331328af3f42f3e3d6b56438 100644
--- a/lib_enc/gp_clip_fx.c
+++ b/lib_enc/gp_clip_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
diff --git a/lib_enc/gs_enc_fx.c b/lib_enc/gs_enc_fx.c
index 1e614638f58280c1e54fea9451d7b73a65779782..63415ec01472f35f59dc2f7f759c36cb6c3b508b 100644
--- a/lib_enc/gs_enc_fx.c
+++ b/lib_enc/gs_enc_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/guided_plc_enc_fx.c b/lib_enc/guided_plc_enc_fx.c
index 826d8e0f3561b00825bcc16480fa4162230f7637..855465f6bf220256dfe3fbb05c140bd825f137bc 100644
--- a/lib_enc/guided_plc_enc_fx.c
+++ b/lib_enc/guided_plc_enc_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/hf_cod_amrwb_fx.c b/lib_enc/hf_cod_amrwb_fx.c
index 84ba1b48438deae3fed33092423cbf1bcfee29fe..3071c8f7fcd4cccce69593e65cd374b9bdfa4797 100644
--- a/lib_enc/hf_cod_amrwb_fx.c
+++ b/lib_enc/hf_cod_amrwb_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/hq_classifier_enc_fx.c b/lib_enc/hq_classifier_enc_fx.c
index 642c503fec5f8a346719a7a26986959bcbea5f55..81e08a53e62bd0a855f8ef357805488261c4add6 100644
--- a/lib_enc/hq_classifier_enc_fx.c
+++ b/lib_enc/hq_classifier_enc_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/hq_core_enc_fx.c b/lib_enc/hq_core_enc_fx.c
index 9b79782558cef87b7bf1e736e4b8d6495e145eb7..02e4b872fb8ff0b5a1e58c19136b09ac5e530060 100644
--- a/lib_enc/hq_core_enc_fx.c
+++ b/lib_enc/hq_core_enc_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
@@ -70,12 +73,8 @@ void HQ_core_enc_init_fx(
*--------------------------------------------------------------------------*/
void hq_core_enc_fx(
- Encoder_State *st, /* i/o: encoder state structure */
-#ifdef SIMPLIFY_CORE_ENC
- Word16 *audio_fx, /* i : input audio signal Q0*/
-#else
- const Word16 *audio_fx, /* i : input audio signal Q0*/
-#endif
+ Encoder_State *st, /* i/o: encoder state structure */
+ Word16 *audio_fx, /* i : input audio signal Q0*/
const Word16 input_frame_orig, /* i : frame length Q0*/
const Word16 hq_core_type, /* i : HQ core type Q0*/
const Word16 Voicing_flag, /* i : Voicing flag for FER method selection Q0*/
@@ -127,7 +126,6 @@ void hq_core_enc_fx(
st->hTcxCfg->tcx_curr_overlap_mode = ALDO_WINDOW;
move16();
-#ifdef SIMPLIFY_CORE_ENC
/*--------------------------------------------------------------------------
* Scaling of buffers
*--------------------------------------------------------------------------*/
@@ -145,7 +143,6 @@ void hq_core_enc_fx(
move16();
}
-#endif
/*--------------------------------------------------------------------------
* Preprocessing in the first HQ frame after ACELP frame
* Find the number of bits for PVQ coding
diff --git a/lib_enc/hq_env_enc_fx.c b/lib_enc/hq_env_enc_fx.c
index 6374a89e81d71fe8e3c79b2288ef641b249bedf5..b2f03d0e7763b93f24a520f7f047417f5beb6339 100644
--- a/lib_enc/hq_env_enc_fx.c
+++ b/lib_enc/hq_env_enc_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/hq_hr_enc_fx.c b/lib_enc/hq_hr_enc_fx.c
index 91df70552a8225792ae6ff7a8f24a329731b547b..bf5c8fc14f1d3999015be84627b1ba710eb79ca0 100644
--- a/lib_enc/hq_hr_enc_fx.c
+++ b/lib_enc/hq_hr_enc_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/hq_lr_enc_fx.c b/lib_enc/hq_lr_enc_fx.c
index 9165eb8423403618d01f77721c1c124a90363877..46f1ca07bc6e7412361c9f4f717356fffd89ea3c 100644
--- a/lib_enc/hq_lr_enc_fx.c
+++ b/lib_enc/hq_lr_enc_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/hvq_enc_fx.c b/lib_enc/hvq_enc_fx.c
index c570a6e49596ffd27709fba8fba1bae2aeabbacc..4c49f3bea50ab221b0735eabf6cbaff68d3a88dd 100644
--- a/lib_enc/hvq_enc_fx.c
+++ b/lib_enc/hvq_enc_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
diff --git a/lib_enc/igf_enc_fx.c b/lib_enc/igf_enc_fx.c
index 845994f0b8f4d2ea8bac74adbe9f6eb66bf1c531..9a20804bdfdd3ee202cb7661a6fa1be2417d13be 100644
--- a/lib_enc/igf_enc_fx.c
+++ b/lib_enc/igf_enc_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
@@ -65,189 +68,6 @@ static void IGF_write_bits(
return;
}
-#ifndef FIX_2346_DUPLICATED_IGF_FUNCTIONS_2
-/**********************************************************************/ /*
- envelope estimation
- **************************************************************************/
-
-static void IGF_CalculateEnvelope(
- const IGF_ENC_INSTANCE_HANDLE hInstance, /**< in: | instance handle of IGF Encoder */
- Word32 *pMDCTSpectrum, /**< in: Q31 | MDCT spectrum */
- Word16 MDCTSpectrum_e, /**< in: | exponent of MDCT spectrum */
- Word32 *pPowerSpectrum, /**< in: Q31 | MDCT^2 + MDST^2 spectrum, or estimate */
- Word16 PowerSpectrum_e, /**< in: | exponent of MDCT^2 + MDST^2 spectrum, or estimate */
- const Word16 igfGridIdx /**< in: Q0 | IGF grid index */
-
-)
-{
- IGF_ENC_PRIVATE_DATA_HANDLE hPrivateData;
- H_IGF_GRID hGrid;
- Word16 *swb_offset;
- Word16 sfb; /* this is the actual scalefactor band */
- Word16 width; /* this is width in subbands of the actual scalefactor band */
- Word16 tile_idx;
- Word16 strt_cpy;
- Word16 gain; /* the gain which has to be applied to the source tile to get the destination energy */
- Word16 gain_exp;
- Word16 tb;
- Word16 zeroNrg; /* Q0 | flag indicating if the signal contains almost no energy */
- Word32 sfbEnergyR[IGF_MAX_SFB];
- Word16 sfbEnergyR_exp[IGF_MAX_SFB];
- Word32 sfbEnergyC[IGF_MAX_SFB]; /* the energy of the destination region of the tile */
- Word16 sfbEnergyC_exp[IGF_MAX_SFB];
- Word32 sfbEnergyTileR[IGF_MAX_SFB];
- Word16 sfbEnergyTileR_exp[IGF_MAX_SFB];
- Word32 sfbEnergyTileC[IGF_MAX_SFB]; /* the energy of the destination region of the tile */
- Word16 sfbEnergyTileC_exp[IGF_MAX_SFB];
- Word32 LFMDCTSpectrum[N_MAX];
- Word16 LFMDCTSpectrum_exp;
- Word32 LFPowerSpectrum[N_MAX];
- Word16 tmp;
- Word16 tmp_exp;
- Word32 L_tmp;
- Word16 shift;
-
- /* initialize variables */
- Copy32( pMDCTSpectrum + IGF_START_MN, hInstance->spec_be_igf, hInstance->infoStopLine - IGF_START_MN );
- hPrivateData = &hInstance->igfData;
- hGrid = &hPrivateData->igfInfo.grid[igfGridIdx];
- swb_offset = hGrid->swb_offset;
- move16();
- hInstance->spec_be_igf_e = MDCTSpectrum_e;
- move16();
- zeroNrg = 0;
- move16();
-
- IF( pPowerSpectrum != NULL )
- {
- FOR( tile_idx = 0; tile_idx < hGrid->nTiles; tile_idx++ )
- {
- strt_cpy = hGrid->sbWrap[tile_idx];
- move16();
- FOR( sfb = hGrid->sfbWrap[tile_idx]; sfb < hGrid->sfbWrap[tile_idx + 1]; sfb++ )
- {
- FOR( tb = swb_offset[sfb]; tb < swb_offset[sfb + 1]; tb++ )
- {
- LFMDCTSpectrum[tb] = pMDCTSpectrum[strt_cpy];
- move32();
- LFPowerSpectrum[tb] = pPowerSpectrum[strt_cpy];
- move32();
- strt_cpy = add( strt_cpy, 1 );
- }
- }
- }
-
- IGFCommonFuncsCalcSfbEnergyPowerSpec( hGrid->startSfb, hGrid->stopSfb, hGrid->swb_offset, pPowerSpectrum, &PowerSpectrum_e, sfbEnergyC, sfbEnergyC_exp );
-
- IGFCommonFuncsCalcSfbEnergyPowerSpec( hGrid->startSfb, hGrid->stopSfb, hGrid->swb_offset, LFPowerSpectrum, &PowerSpectrum_e, sfbEnergyTileC, sfbEnergyTileC_exp );
-
- IGFCommonFuncsMDCTSquareSpec( hGrid->startLine, hGrid->stopLine, LFMDCTSpectrum, MDCTSpectrum_e, LFMDCTSpectrum, &LFMDCTSpectrum_exp, 0, EVS_MONO );
-
- IGFCommonFuncsCalcSfbEnergyPowerSpec( hGrid->startSfb, hGrid->stopSfb, hGrid->swb_offset, LFMDCTSpectrum, &LFMDCTSpectrum_exp, sfbEnergyTileR, sfbEnergyTileR_exp );
- }
- ELSE
- {
- IGFCommonFuncsMDCTSquareSpec( hGrid->startLine, hGrid->stopLine, pMDCTSpectrum, MDCTSpectrum_e, LFMDCTSpectrum, &LFMDCTSpectrum_exp, 0, EVS_MONO );
-
- IGFCommonFuncsCalcSfbEnergyPowerSpec( hGrid->startSfb, hGrid->stopSfb, hGrid->swb_offset, LFMDCTSpectrum, &LFMDCTSpectrum_exp, sfbEnergyR, sfbEnergyR_exp );
- }
-
- FOR( tile_idx = 0; tile_idx < hGrid->nTiles; tile_idx++ )
- {
-
- FOR( sfb = hGrid->sfbWrap[tile_idx]; sfb < hGrid->sfbWrap[tile_idx + 1]; sfb++ )
- {
- width = sub( swb_offset[sfb + 1], swb_offset[sfb] );
- L_tmp = 0;
- move16();
- gain_exp = 0;
- move16();
-
- IF( pPowerSpectrum )
- {
- IF( sfbEnergyTileR[sfb] == 0 )
- {
- sfbEnergyTileR[sfb] = 0x00010000;
- move32();
- sfbEnergyTileR_exp[sfb] = 0;
- move16();
- zeroNrg = 1;
- move16();
- }
- IF( sfbEnergyTileC[sfb] == 0 )
- {
- sfbEnergyTileC[sfb] = 0x00010000;
- move32();
- sfbEnergyTileC_exp[sfb] = 0;
- move16();
- zeroNrg = 1;
- move16();
- }
- IF( sfbEnergyC[sfb] == 0 )
- {
- sfbEnergyC[sfb] = 0x00010000;
- move32();
- sfbEnergyC_exp[sfb] = 0;
- move16();
- zeroNrg = 1;
- move16();
- }
-
- BASOP_Util_Divide_MantExp( round_fx_sat( sfbEnergyTileR[sfb] ), sfbEnergyTileR_exp[sfb], width, 15, &gain, &gain_exp );
- BASOP_Util_Divide_MantExp( round_fx_sat( sfbEnergyC[sfb] ), sfbEnergyC_exp[sfb], round_fx_sat( sfbEnergyTileC[sfb] ), sfbEnergyTileC_exp[sfb], &tmp, &tmp_exp );
- L_tmp = L_mult( gain, tmp );
- gain_exp = add( gain_exp, tmp_exp );
- }
- ELSE
- {
- IF( sfbEnergyR[sfb] == 0 )
- {
- sfbEnergyR[sfb] = 0x00010000;
- move32();
- sfbEnergyR_exp[sfb] = 0;
- move16();
- zeroNrg = 1;
- move16();
- }
- BASOP_Util_Divide_MantExp( round_fx_sat( sfbEnergyR[sfb] ), sfbEnergyR_exp[sfb], width, 15, &gain, &gain_exp );
- L_tmp = L_deposit_h( gain );
- }
-
- /* gain = 0.5f + (float)((2.885390081777927f * log(gain) + 16.f)); */
- L_tmp = BASOP_Util_Log2( L_tmp );
- L_tmp = L_add( L_tmp, L_deposit_h( shl( gain_exp, 15 - 6 ) ) );
- shift = norm_l( L_tmp );
- gain = round_fx_sat( L_shl( L_tmp, shift ) );
- gain_exp = sub( 7, shift );
- gain_exp = BASOP_Util_Add_MantExp( gain, gain_exp, 32767 /*16 Q11*/, 4, &gain );
- gain_exp = BASOP_Util_Add_MantExp( gain, gain_exp, 0x4000, 0, &gain );
- gain = shr( gain, s_min( sub( 15, gain_exp ), 15 ) );
-
- if ( gain > 91 )
- {
- gain = s_min( gain, 91 ); /* 13+15+63, see arithocde encode residual */
- }
- if ( gain < 0 )
- {
- gain = s_max( gain, 0 );
- }
-
- /* set gain to zero if the signal contains too less energy */
- if ( zeroNrg != 0 )
- {
- gain = 0;
- move16();
- }
-
- hPrivateData->igfScfQuantized[sfb] = gain;
- move16();
- }
- }
-
- return;
-}
-#endif
-
/*-------------------------------------------------------------------*
* IGF_WriteEnvelope()
@@ -2011,11 +1831,7 @@ static Word32 IGF_getTNR_ivas_fx(
* envelope estimation
*-------------------------------------------------------------------*/
-#ifdef FIX_2346_DUPLICATED_IGF_FUNCTIONS_2
static void IGF_CalculateEnvelope_fx(
-#else
-static void IGF_CalculateEnvelope_ivas_fx(
-#endif
const IGF_ENC_INSTANCE_HANDLE hIGFEnc, /* i : instance handle of IGF Encoder */
Word32 *pMDCTSpectrum_fx, /* i : MDCT spectrum */
Word16 e_mdct, /* i : exp of MDCT spectrum */
@@ -2062,25 +1878,21 @@ static void IGF_CalculateEnvelope_ivas_fx(
Word16 crest_exp; /*Stores the exponent of the result(return value)*/
Word16 sfm_exp; /*stores exponent for ouput from sfm*/
Word16 tmp_e;
-#ifdef FIX_2346_DUPLICATED_IGF_FUNCTIONS_2
Word32 LFMDCTSpectrum[N_MAX];
Word16 sfbEnergyTileR16;
Word16 sfbEnergyR16;
Word16 gain16; /* the EVS gain which has to be applied to the source tile to get the destination energy */
Word16 zeroNrg; /* flag indicating if the signal contains almost no energy */
-#endif
hPrivateData = &hIGFEnc->igfData;
hGrid = &hPrivateData->igfInfo.grid[(Word16) igfGridIdx];
swb_offset = hGrid->swb_offset;
-#ifdef FIX_2346_DUPLICATED_IGF_FUNCTIONS_2
zeroNrg = 0;
sfbEnergyTileR16 = 0;
temp = 0;
move16();
move16();
move16();
-#endif
IF( element_mode > EVS_MONO )
{
@@ -2114,7 +1926,6 @@ static void IGF_CalculateEnvelope_ivas_fx(
}
}
}
-#ifdef FIX_2346_DUPLICATED_IGF_FUNCTIONS_2
ELSE
{
Copy32( pMDCTSpectrum_fx + IGF_START_MN, hIGFEnc->spec_be_igf, hIGFEnc->infoStopLine - IGF_START_MN );
@@ -2137,13 +1948,8 @@ static void IGF_CalculateEnvelope_ivas_fx(
}
}
}
-#endif
-#ifdef FIX_2346_DUPLICATED_IGF_FUNCTIONS_2
IF( pPowerSpectrum_fx && ( element_mode > EVS_MONO ) )
-#else
- IF( pPowerSpectrum_fx )
-#endif
{
FOR( sb = hGrid->sbWrap[0]; sb < swb_offset[hGrid->sfbWrap[hGrid->nTiles]]; sb++ )
{
@@ -2185,10 +1991,8 @@ static void IGF_CalculateEnvelope_ivas_fx(
{
tmp = strt_cpy;
move16();
-#ifdef FIX_2346_DUPLICATED_IGF_FUNCTIONS_2
IF( element_mode > EVS_MONO )
{
-#endif
FOR( sb = swb_offset[sfb]; sb < swb_offset[sfb + 1]; sb++ )
{
Word16 shift = norm_l( pPowerSpectrum_fx[sb] );
@@ -2207,7 +2011,6 @@ static void IGF_CalculateEnvelope_ivas_fx(
sfbEnergyTileR = L_deposit_h( BASOP_Util_Divide3232_Scale( sfbEnergyTileR, width, &tmp_e ) );
sfbEnergyTileR_e = add( sub( sfbEnergyTileR_e, Q31 ), tmp_e );
-#ifdef FIX_2346_DUPLICATED_IGF_FUNCTIONS_2
}
ELSE
{
@@ -2248,7 +2051,6 @@ static void IGF_CalculateEnvelope_ivas_fx(
strt_cpy += swb_offset[sfb + 1] - swb_offset[sfb];
}
-#endif
IF( sfbEnergyTileR == 0 )
{
@@ -2259,37 +2061,24 @@ static void IGF_CalculateEnvelope_ivas_fx(
}
IF( sfbEnergyC == 0 )
{
-#ifdef FIX_2346_DUPLICATED_IGF_FUNCTIONS_2
sfbEnergyC = ( element_mode > EVS_MONO ) ? EPSILON_FX : 0x00010000;
-#else
- sfbEnergyC = EPSILON_FX;
-#endif
sfbEnergyC_e = 0;
move32();
move16();
-#ifdef FIX_2346_DUPLICATED_IGF_FUNCTIONS_2
IF( element_mode == EVS_MONO )
{
zeroNrg = 1;
move16();
}
-#endif
}
IF( sfbEnergyTileC == 0 )
{
-#ifdef FIX_2346_DUPLICATED_IGF_FUNCTIONS_2
sfbEnergyTileC = ( element_mode > EVS_MONO ) ? EPSILON_FX : 0x00010000;
-#else
- sfbEnergyTileC = EPSILON_FX;
-#endif
sfbEnergyTileC_e = 0;
-#ifdef FIX_2346_DUPLICATED_IGF_FUNCTIONS_2
IF( element_mode > EVS_MONO )
{
-#endif
temp = BASOP_Util_Divide3232_Scale( sfbEnergyC, sfbEnergyTileC, &tmp_e );
tmp_e = add( tmp_e, sub( sfbEnergyC_e, sfbEnergyTileC_e ) );
-#ifdef FIX_2346_DUPLICATED_IGF_FUNCTIONS_2
}
ELSE
{
@@ -2297,40 +2086,31 @@ static void IGF_CalculateEnvelope_ivas_fx(
zeroNrg = 1;
move16();
}
-#endif
move32();
move16();
}
ELSE
{
/*gain = (float) ( sfbEnergyTileR * ( sfbEnergyC / sfbEnergyTileC ) );*/
-#ifdef FIX_2346_DUPLICATED_IGF_FUNCTIONS_2
IF( element_mode > EVS_MONO )
{
-#endif
temp = BASOP_Util_Divide3232_Scale( sfbEnergyC, sfbEnergyTileC, &tmp_e );
tmp_e = add( tmp_e, sub( sfbEnergyC_e, sfbEnergyTileC_e ) );
-#ifdef FIX_2346_DUPLICATED_IGF_FUNCTIONS_2
}
ELSE
{
BASOP_Util_Divide_MantExp( round_fx_sat( sfbEnergyC ), sfbEnergyC_e, round_fx_sat( sfbEnergyTileC ), sfbEnergyTileC_e, &tmp, &tmp_e );
}
-#endif
}
-#ifdef FIX_2346_DUPLICATED_IGF_FUNCTIONS_2
IF( element_mode > EVS_MONO )
{
-#endif
gain = Mult_32_16( sfbEnergyTileR, temp ); // gain_e
-#ifdef FIX_2346_DUPLICATED_IGF_FUNCTIONS_2
}
ELSE
{
gain = L_mult( sfbEnergyTileR16, tmp ); // gain_e
}
-#endif
gain_e = add( tmp_e, sfbEnergyTileR_e );
IF( element_mode > EVS_MONO )
@@ -2647,10 +2427,8 @@ static void IGF_CalculateEnvelope_ivas_fx(
}
ELSE
{
-#ifdef FIX_2346_DUPLICATED_IGF_FUNCTIONS_2
IF( element_mode > EVS_MONO )
{
-#endif
tmp_e = e_mdct;
move16();
sfbEnergyR = add_sat( EPSILON_FX, BASOP_Util_Divide3216_Scale( sum2_32_fx( pMDCTSpectrum_fx + swb_offset[sfb], width, &tmp_e ) /*exp: tmp_e*/, width, &sfbEnergyR_e ) ); // sfbEnergyR_e
@@ -2680,7 +2458,6 @@ static void IGF_CalculateEnvelope_ivas_fx(
move16();
move16();
move16();
-#ifdef FIX_2346_DUPLICATED_IGF_FUNCTIONS_2
}
ELSE
{
@@ -2713,21 +2490,14 @@ static void IGF_CalculateEnvelope_ivas_fx(
BASOP_Util_Divide_MantExp( round_fx_sat( sfbEnergyR ), sfbEnergyR_e, width, 15, &sfbEnergyR16, &gain_e );
gain = L_deposit_h( sfbEnergyR16 );
}
-#endif
}
-#ifdef FIX_2346_DUPLICATED_IGF_FUNCTIONS_2
IF( element_mode > EVS_MONO )
{
-#endif
gain = Mult_32_16( gain, att ); // gain_e
gain_e = add( gain_e, 0 );
-#ifdef FIX_2346_DUPLICATED_IGF_FUNCTIONS_2
/*gain=0.5f+log2f(gain)*2+16 because 2.885390081777927f=2*1/loge(2) so 2*1/loge(2)*loge(x) can be written as 2*log2(x)*/
-#else
- /*gain=0.5f+log2f(gain)*2+16 becuase 2.885390081777927f=2*1/loge(2) so 2*1/loge(2)*loge(x) can be written as 2*log2(x)*/
-#endif
gain = L_add( ONE_IN_Q22, L_add( L_add( L_shr( BASOP_Util_Log2( gain ), 1 ), L_shl( gain_e, Q24 ) ), L_shl( 16, Q23 ) ) ); /*Q23*/
test();
test();
@@ -2747,7 +2517,6 @@ static void IGF_CalculateEnvelope_ivas_fx(
move16();
hPrivateData->igfScfQuantized[sfb] = extract_l( L_shr( gain, Q23 ) ); /*Q0*/
move16();
-#ifdef FIX_2346_DUPLICATED_IGF_FUNCTIONS_2
}
ELSE
{
@@ -2781,7 +2550,6 @@ static void IGF_CalculateEnvelope_ivas_fx(
hPrivateData->igfScfQuantized[sfb] = gain16;
move16();
}
-#endif
}
}
@@ -3553,18 +3321,7 @@ void IGFEncApplyMono_fx(
calculate_hangover_attenuation_gain_fx( st, &att_fx, vad_hover_flag );
}
-#ifdef FIX_2346_DUPLICATED_IGF_FUNCTIONS_2
IGF_CalculateEnvelope_fx( st->hIGFEnc, pMDCTSpectrum_fx, e_mdct, pPowerSpectrumParameter_fx, pPowerSpectrumParameter_exp, igfGridIdx, st->hTranDet->transientDetector.bIsAttackPresent, last_core_acelp, st->element_mode, att_fx );
-#else
- IF( EQ_16( st->element_mode, EVS_MONO ) )
- {
- IGF_CalculateEnvelope( st->hIGFEnc, pMDCTSpectrum_fx, e_mdct, pPowerSpectrumParameter_fx, *e_ps, igfGridIdx );
- }
- ELSE
- {
- IGF_CalculateEnvelope_ivas_fx( st->hIGFEnc, pMDCTSpectrum_fx, e_mdct, pPowerSpectrumParameter_fx, pPowerSpectrumParameter_exp, igfGridIdx, st->hTranDet->transientDetector.bIsAttackPresent, last_core_acelp, st->element_mode, att_fx );
- }
-#endif
IF( isTCX20 )
{
diff --git a/lib_enc/igf_scf_enc_fx.c b/lib_enc/igf_scf_enc_fx.c
index 9f55aafd40a8aadbc18081c156cf88b8a0af6a2e..476e1f814bd591aff3c18150e35a90315828f9df 100644
--- a/lib_enc/igf_scf_enc_fx.c
+++ b/lib_enc/igf_scf_enc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
@@ -129,11 +101,7 @@ static void arith_encode_bits(
FOR( i = nBits - 1; i >= 0; --i ) /* nBits > 0 */
{
bit = s_and( shr( x, i ), 1 );
-#ifdef FIX_2402_REPL_EVS_ARI_CODEC_ENC
hPrivateData->ptrBitIndex = ari_encode_14bits_sign_fx( ptr, hPrivateData->ptrBitIndex, MAX16B /* disable the bit count limitation */, &hPrivateData->acState_ivas_fx, bit );
-#else
- hPrivateData->ptrBitIndex = ari_encode_14bits_sign_fx( ptr, hPrivateData->ptrBitIndex, MAX16B /* disable the bit count limitation */, &hPrivateData->acState_fx, bit );
-#endif
move16();
}
}
@@ -142,11 +110,7 @@ static void arith_encode_bits(
FOR( i = nBits - 1; i >= 0; --i ) /* nBits > 0 */
{
bit = s_and( shr( x, i ), 1 );
-#ifdef FIX_2402_REPL_EVS_ARI_CODEC_ENC
hPrivateData->ptrBitIndex = ari_encode_14bits_sign_fx( ptr, hPrivateData->ptrBitIndex, MAX16B /* disable the bit count limitation */, &hPrivateData->acState, bit );
-#else
- hPrivateData->ptrBitIndex = ari_encode_14bits_sign_ivas_fx( ptr, hPrivateData->ptrBitIndex, MAX16B /* disable the bit count limitation */, &hPrivateData->acState, bit );
-#endif
move16();
}
}
@@ -177,35 +141,19 @@ static void arith_encode_residual(
/* encode one of the IGF_SYMBOLS_IN_TABLE == 27 alphabet symbols using the new raw AC function */
IF( EQ_16( element_mode, EVS_MONO ) )
{
-#ifdef FIX_2402_REPL_EVS_ARI_CODEC_ENC
hPrivateData->ptrBitIndex = ari_encode_14bits_ext_fx( ptr,
hPrivateData->ptrBitIndex,
&hPrivateData->acState_ivas_fx,
x,
cumulativeFrequencyTable );
-#else
- hPrivateData->ptrBitIndex = ari_encode_14bits_ext_fx( ptr,
- hPrivateData->ptrBitIndex,
- &hPrivateData->acState_fx,
- x,
- cumulativeFrequencyTable );
-#endif
}
ELSE
{
-#ifdef FIX_2402_REPL_EVS_ARI_CODEC_ENC
hPrivateData->ptrBitIndex = ari_encode_14bits_ext_fx( ptr,
hPrivateData->ptrBitIndex,
&hPrivateData->acState,
x,
cumulativeFrequencyTable );
-#else
- hPrivateData->ptrBitIndex = ari_encode_14bits_ext_ivas_fx( ptr,
- hPrivateData->ptrBitIndex,
- &hPrivateData->acState,
- x,
- cumulativeFrequencyTable );
-#endif
}
move16();
@@ -218,35 +166,19 @@ static void arith_encode_residual(
extra = sub( IGF_MIN_ENC_SEPARATE - 1, x );
IF( EQ_16( element_mode, EVS_MONO ) )
{
-#ifdef FIX_2402_REPL_EVS_ARI_CODEC_ENC
hPrivateData->ptrBitIndex = ari_encode_14bits_ext_fx( ptr,
hPrivateData->ptrBitIndex,
&hPrivateData->acState_ivas_fx,
0,
cumulativeFrequencyTable );
-#else
- hPrivateData->ptrBitIndex = ari_encode_14bits_ext_fx( ptr,
- hPrivateData->ptrBitIndex,
- &hPrivateData->acState_fx,
- 0,
- cumulativeFrequencyTable );
-#endif
}
ELSE
{
-#ifdef FIX_2402_REPL_EVS_ARI_CODEC_ENC
hPrivateData->ptrBitIndex = ari_encode_14bits_ext_fx( ptr,
hPrivateData->ptrBitIndex,
&hPrivateData->acState,
0,
cumulativeFrequencyTable );
-#else
- hPrivateData->ptrBitIndex = ari_encode_14bits_ext_ivas_fx( ptr,
- hPrivateData->ptrBitIndex,
- &hPrivateData->acState,
- 0,
- cumulativeFrequencyTable );
-#endif
}
move16();
@@ -258,35 +190,19 @@ static void arith_encode_residual(
IF( EQ_16( element_mode, EVS_MONO ) )
{
-#ifdef FIX_2402_REPL_EVS_ARI_CODEC_ENC
hPrivateData->ptrBitIndex = ari_encode_14bits_ext_fx( ptr,
hPrivateData->ptrBitIndex,
&hPrivateData->acState_ivas_fx,
IGF_SYMBOLS_IN_TABLE - 1,
cumulativeFrequencyTable );
-#else
- hPrivateData->ptrBitIndex = ari_encode_14bits_ext_fx( ptr,
- hPrivateData->ptrBitIndex,
- &hPrivateData->acState_fx,
- IGF_SYMBOLS_IN_TABLE - 1,
- cumulativeFrequencyTable );
-#endif
}
ELSE
{
-#ifdef FIX_2402_REPL_EVS_ARI_CODEC_ENC
hPrivateData->ptrBitIndex = ari_encode_14bits_ext_fx( ptr,
hPrivateData->ptrBitIndex,
&hPrivateData->acState,
IGF_SYMBOLS_IN_TABLE - 1,
cumulativeFrequencyTable );
-#else
- hPrivateData->ptrBitIndex = ari_encode_14bits_ext_ivas_fx( ptr,
- hPrivateData->ptrBitIndex,
- &hPrivateData->acState,
- IGF_SYMBOLS_IN_TABLE - 1,
- cumulativeFrequencyTable );
-#endif
}
move16();
}
@@ -363,35 +279,19 @@ static void encode_sfe_vector(
/* encode one of the IGF_SYMBOLS_IN_TABLE == 27 alphabet symbols using the new raw AC function */
IF( EQ_16( element_mode, EVS_MONO ) )
{
-#ifdef FIX_2402_REPL_EVS_ARI_CODEC_ENC
hPrivateData->ptrBitIndex = ari_encode_14bits_ext_fx( ptr,
hPrivateData->ptrBitIndex,
&hPrivateData->acState_ivas_fx,
shr( x[f], 2 ),
(const UWord16 *) hPrivateData->cf_se00 );
-#else
- hPrivateData->ptrBitIndex = ari_encode_14bits_ext_fx( ptr,
- hPrivateData->ptrBitIndex,
- &hPrivateData->acState_fx,
- shr( x[f], 2 ),
- (const UWord16 *) hPrivateData->cf_se00 );
-#endif
}
ELSE
{
-#ifdef FIX_2402_REPL_EVS_ARI_CODEC_ENC
hPrivateData->ptrBitIndex = ari_encode_14bits_ext_fx( ptr,
hPrivateData->ptrBitIndex,
&hPrivateData->acState,
shr( x[f], 2 ),
(const UWord16 *) hPrivateData->cf_se00 );
-#else
- hPrivateData->ptrBitIndex = ari_encode_14bits_ext_ivas_fx( ptr,
- hPrivateData->ptrBitIndex,
- &hPrivateData->acState,
- shr( x[f], 2 ),
- (const UWord16 *) hPrivateData->cf_se00 );
-#endif
}
move16();
arith_encode_bits( hPrivateData, ptr, x[f] & 3, 2, element_mode ); /* LSBs as 2 bit raw */
@@ -481,19 +381,11 @@ Word16 IGFSCFEncoderEncode_fx(
/* start AC encoding */
IF( EQ_16( element_mode, EVS_MONO ) )
{
-#ifdef FIX_2402_REPL_EVS_ARI_CODEC_ENC
ari_start_encoding_14bits_fx( &hPublicData->acState_ivas_fx );
-#else
- ari_start_encoding_14bits_fx( &hPublicData->acState_fx );
-#endif
}
ELSE
{
-#ifdef FIX_2402_REPL_EVS_ARI_CODEC_ENC
ari_start_encoding_14bits_fx( &hPublicData->acState );
-#else
- ari_start_encoding_14bits_ivas_fx( &hPublicData->acState );
-#endif
}
/* check if coder needs a reset and do it if necessary */
@@ -508,19 +400,11 @@ Word16 IGFSCFEncoderEncode_fx(
/* finish AC encoding */
IF( EQ_16( element_mode, EVS_MONO ) )
{
-#ifdef FIX_2402_REPL_EVS_ARI_CODEC_ENC
hPublicData->ptrBitIndex = ari_done_encoding_14bits_fx( ptr, hPublicData->ptrBitIndex, &hPublicData->acState_ivas_fx );
-#else
- hPublicData->ptrBitIndex = ari_done_encoding_14bits_fx( ptr, hPublicData->ptrBitIndex, &hPublicData->acState_fx );
-#endif
}
ELSE
{
-#ifdef FIX_2402_REPL_EVS_ARI_CODEC_ENC
hPublicData->ptrBitIndex = ari_done_encoding_14bits_fx( ptr, hPublicData->ptrBitIndex, &hPublicData->acState );
-#else
- hPublicData->ptrBitIndex = ari_done_encoding_14bits_ivas_fx( ptr, hPublicData->ptrBitIndex, &hPublicData->acState );
-#endif
}
hPublicData->bitCount = add( hPublicData->bitCount, hPublicData->ptrBitIndex );
move16();
diff --git a/lib_enc/init_enc_fx.c b/lib_enc/init_enc_fx.c
index 52fb9b6252e45c2fcab9025193443c7955e0bef6..55d83982ccc884207fc89262cf76aa5ed8eba4c7 100644
--- a/lib_enc/init_enc_fx.c
+++ b/lib_enc/init_enc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
@@ -249,13 +221,11 @@ ivas_error init_encoder_fx(
st->prev_Q_new = 0;
move16();
-#ifdef NONBE_FIX_ISSUE_2518
if ( st->element_mode > EVS_MONO )
{
st->prev_Q_new = Q15;
move16();
}
-#endif
IF( EQ_32( st->input_Fs, 8000 ) )
{
@@ -396,12 +366,10 @@ ivas_error init_encoder_fx(
st->Bin_E_old_fx = st->hSignalBuf->Bin_E_old_fx;
st->mem_decim_fx = st->hSignalBuf->mem_decim_fx;
st->mem_decim16k_fx = st->hSignalBuf->mem_decim16k_fx;
-#ifdef NONBE_FIX_ISSUE_2206
st->q_mem_decim_fx = Q15;
move16();
st->q_mem_decim16k_fx = Q15;
move16();
-#endif
st->old_inp_12k8_fx = st->hSignalBuf->old_inp_12k8_fx;
st->old_inp_16k_fx = st->hSignalBuf->old_inp_16k_fx;
st->buf_speech_enc_pe = st->hSignalBuf->buf_speech_enc_pe;
@@ -1151,13 +1119,6 @@ ivas_error init_encoder_fx(
init_coder_ace_plus_ivas_fx( st, st->last_total_brate, igf_brate, 0 );
}
-#ifndef NONBE_FIX_ISSUE_2518
- IF( st->hLPDmem != NULL )
- {
- st->hLPDmem->q_lpd_old_exc = st->prev_Q_new;
- move16();
- }
-#endif
/*-----------------------------------------------------------------*
* FD-CNG encoder
@@ -1242,10 +1203,6 @@ ivas_error init_encoder_fx(
move16();
st->old_wsp_shift = 0;
move16();
-#ifdef DEBUGGING
- st->id_element = -1; /* element ID */
- move16();
-#endif
return IVAS_ERR_OK;
}
diff --git a/lib_enc/inov_enc_fx.c b/lib_enc/inov_enc_fx.c
index 95c7bf160630f3ba7cb69b25bdc76556759c5664..41520336333b68c4692a07ec721359575d4cbe1b 100644
--- a/lib_enc/inov_enc_fx.c
+++ b/lib_enc/inov_enc_fx.c
@@ -1,3 +1,6 @@
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
/*====================================================================================
EVS Codec 3GPP TS26.452 Nov 04, 2021. Version 16.4.0
====================================================================================*/
@@ -421,12 +424,6 @@ Word16 inov_encode_fx(
set16_fx( y2, 0, L_SUBFR );
}
}
-#ifdef DEBUGGING
- else
- {
- IVAS_ERROR( IVAS_ERR_INTERNAL_FATAL, "invalid mode for acelp frame!\n" );
- }
-#endif
}
ELSE
{
diff --git a/lib_enc/isf_enc_amr_wb_fx.c b/lib_enc/isf_enc_amr_wb_fx.c
index bbb734f9c38d29ccc72586a203f5544c9537160d..1fb67e1ff0785ec8b377b09ab719cf59f37d2108 100644
--- a/lib_enc/isf_enc_amr_wb_fx.c
+++ b/lib_enc/isf_enc_amr_wb_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h" /* Compilation switches */
diff --git a/lib_enc/ivas_agc_enc_fx.c b/lib_enc/ivas_agc_enc_fx.c
index 4d003b56855c5ac3eaed71baea7dd6ac78e637fc..a8c46d8919a03f4d1fa77910c99478dfd8c3ad4d 100644
--- a/lib_enc/ivas_agc_enc_fx.c
+++ b/lib_enc/ivas_agc_enc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
diff --git a/lib_enc/ivas_core_enc_fx.c b/lib_enc/ivas_core_enc_fx.c
index b734fce5223b569dbb8e7f4934e0004a8d112ed3..3d8a1b3e904c210bc91807024ed88fc463cdac10 100644
--- a/lib_enc/ivas_core_enc_fx.c
+++ b/lib_enc/ivas_core_enc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
@@ -37,9 +9,6 @@
#include "wmc_auto.h"
#include "prot_fx_enc.h"
#include "ivas_prot_fx.h"
-#ifdef DEBUGGING
-#include "debug.h"
-#endif
/*-------------------------------------------------------------------*
@@ -49,16 +18,12 @@
*-------------------------------------------------------------------*/
ivas_error ivas_core_enc_fx(
- SCE_ENC_HANDLE hSCE, /* i/o: SCE encoder structure */
- CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder structure */
- MCT_ENC_HANDLE hMCT, /* i/o: MCT encoder structure */
- const Word16 n_CoreChannels, /* i : number of core channels to be coded Q0*/
- Word16 old_inp_12k8_fx[][L_INP_12k8], /* i : buffer of old input signal Q_new-1*/
-#ifdef NONBE_FIX_ISSUE_2206
- Word16 old_inp_16k_fx[][L_INP], /* i : buffer of old input signal Q_new-1*/
-#else
- Word16 old_inp_16k_fx[][L_INP], /* i : buffer of old input signal Q-1*/
-#endif
+ SCE_ENC_HANDLE hSCE, /* i/o: SCE encoder structure */
+ CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder structure */
+ MCT_ENC_HANDLE hMCT, /* i/o: MCT encoder structure */
+ const Word16 n_CoreChannels, /* i : number of core channels to be coded Q0*/
+ Word16 old_inp_12k8_fx[][L_INP_12k8], /* i : buffer of old input signal Q_new-1*/
+ Word16 old_inp_16k_fx[][L_INP], /* i : buffer of old input signal Q_new-1*/
Word16 Q_new[], /* i : Q factor of speech buffers */
Word32 ener_fx[], /* i : residual energy from Levinson-Durbin epsP_fx_q*/
Word16 A_fx[][NB_SUBFR16k * ( M + 1 )], /* i : A(z) unquantized for the 4 subframes Q12*/
@@ -94,9 +59,7 @@ ivas_error ivas_core_enc_fx(
Word16 *inp_fx[CPE_CHANNELS];
Word16 *shb_speech_fx;
Word16 new_inp_resamp16k_fx[CPE_CHANNELS][L_FRAME16k]; /* new input signal @16kHz, non pre-emphasised, used by the WB TBE/BWE */
-#ifdef NONBE_FIX_ISSUE_2206
Word16 q_new_inp_resamp16k_fx[CPE_CHANNELS];
-#endif
Word16 *hb_speech_fx;
Word32 bwe_exc_extended_fx[CPE_CHANNELS][L_FRAME32k + NL_BUFF_OFFSET]; /* 2 * Q_new */
Word16 old_syn_12k8_16k_fx[CPE_CHANNELS][L_FRAME16k]; /* ACELP core synthesis at 12.8kHz or 16kHz to be used by the SWB BWE */
@@ -111,11 +74,7 @@ ivas_error ivas_core_enc_fx(
Word16 diff_nBits;
ivas_error error;
Word16 max_num_indices_BWE;
-#ifdef SIMPLIFY_CORE_ENC
Word16 i, shift;
-#else
- Word16 i, shift, Q_min;
-#endif
FOR( i = 0; i < CPE_CHANNELS; i++ )
{
@@ -209,22 +168,6 @@ ivas_error ivas_core_enc_fx(
* Pre-processing, incl. Decision matrix
*---------------------------------------------------------------------*/
-#ifndef SIMPLIFY_CORE_ENC
- IF( st->cldfbAnaEnc )
- {
- Word16 tmp_shift = L_norm_arr( enerBuffer_fx[n], st->cldfbAnaEnc->no_channels );
- tmp_shift = sub( tmp_shift, 5 );
- IF( tmp_shift < 0 )
- {
- scale_sig32( enerBuffer_fx[n], st->cldfbAnaEnc->no_channels, tmp_shift ); /* enerBuffer_fx_exp[n] - tmp_shift */
- enerBuffer_fx_exp[n] = sub( enerBuffer_fx_exp[n], tmp_shift );
- move16();
- }
- }
-
- Scale_sig( fft_buff_fx[n], ( 2 * L_FFT ), -1 ); // To create 1 headroom for addition of magnitude square spectrum
- // fft_buff_fx_exp = add(fft_buff_fx_exp,1);
-#endif
FOR( i = 0; i < st->nb_subfr; i++ )
{
Scale_sig( &Aw_fx[n][i * ( M + 1 )], M + 1, sub( norm_s( Aw_fx[n][i * ( M + 1 )] ), 2 ) ); // scaling to Q12
@@ -238,15 +181,9 @@ ivas_error ivas_core_enc_fx(
move32();
}
-#ifdef NONBE_FIX_ISSUE_2206
pre_proc_ivas_fx( st, last_element_mode, element_brate, last_element_brate_tmp, input_frame, old_inp_12k8_fx[n] /* i/o: Q_new - 1 */, old_inp_16k_fx[n] /* i/o: Q_new - 1 */,
&inp_fx[n], &ener_fx[n], A_fx[n], Aw_fx[n], epsP_fx[n], &epsP_fx_q[n], lsp_new_fx[n], lsp_mid_fx[n], new_inp_resamp16k_fx[n], &q_new_inp_resamp16k_fx[n], &Voicing_flag[n], old_wsp_fx[n], e_old_wsp[n], loc_harm[n],
vad_flag_dtx[n], MCT_flag, vad_hover_flag[n], flag_16k_smc, enerBuffer_fx[n], enerBuffer_fx_exp[n], fft_buff_fx[n], cor_map_sum_fx[n], &Q_new[n] );
-#else
- pre_proc_ivas_fx( st, last_element_mode, element_brate, last_element_brate_tmp, input_frame, old_inp_12k8_fx[n] /* i: -1, o: Q_new - 1 */, old_inp_16k_fx[n] /* i: -1, o: Q_new - 1 */,
- &inp_fx[n], &ener_fx[n], A_fx[n], Aw_fx[n], epsP_fx[n], &epsP_fx_q[n], lsp_new_fx[n], lsp_mid_fx[n], new_inp_resamp16k_fx[n], &Voicing_flag[n], old_wsp_fx[n], e_old_wsp[n], loc_harm[n],
- vad_flag_dtx[n], MCT_flag, vad_hover_flag[n], flag_16k_smc, enerBuffer_fx[n], enerBuffer_fx_exp[n], fft_buff_fx[n], cor_map_sum_fx[n], &Q_new[n] );
-#endif
test();
IF( EQ_16( st->element_mode, IVAS_CPE_MDCT ) || EQ_16( st->element_mode, IVAS_SCE ) )
@@ -331,89 +268,12 @@ ivas_error ivas_core_enc_fx(
IF( ( EQ_16( st->core, TCX_20_CORE ) || EQ_16( st->core, TCX_10_CORE ) ) && NE_16( st->element_mode, IVAS_CPE_MDCT ) )
{
/* TCX core encoder */
-#ifdef SIMPLIFY_CORE_ENC
stereo_tcx_core_enc( st, old_inp_12k8_fx[n] + L_INP_MEM, old_inp_16k_fx[n] + L_INP_MEM, Aw_fx[n], lsp_new_fx[n], lsp_mid_fx[n], pitch_buf_fx[n], last_element_mode, vad_hover_flag[0], Q_new[n] );
-#else
- TCX_ENC_HANDLE hTcxEnc = st->hTcxEnc;
- Word16 Q_spec_old, L_spec;
-
-#ifdef NONBE_FIX_ISSUE_2206
- Scale_sig( st->hTcxEnc->Txnq, L_FRAME32k / 2 + 64, sub( negate( 1 ), st->hTcxEnc->q_Txnq ) ); /* Q(-1) */
- st->hTcxEnc->q_Txnq = -Q1;
- move16();
-
- Q_spec_old = hTcxEnc->spectrum_long_e;
- move16();
-
- /* TCX core encoder */
- stereo_tcx_core_enc( st, old_inp_12k8_fx[n] + L_INP_MEM, old_inp_16k_fx[n] + L_INP_MEM, Aw_fx[n], lsp_new_fx[n], lsp_mid_fx[n], pitch_buf_fx[n], last_element_mode, vad_hover_flag[0], Q_new[n] );
-#else
- Scale_sig( old_inp_12k8_fx[n], L_INP_12k8, sub( Q1, Q_new[n] ) ); // Q0
- Scale_sig( old_inp_16k_fx[n], L_INP, sub( Q1, Q_new[n] ) ); // Q0
-
- Scale_sig( st->hTcxEnc->Txnq, L_FRAME32k / 2 + 64, sub( negate( 1 ), st->hTcxEnc->q_Txnq ) ); /* Q(-1) */
- st->hTcxEnc->q_Txnq = -Q1;
- move16();
- Q_spec_old = st->hTcxEnc->spectrum_long_e;
- move16();
-
- /* TCX core encoder */
- stereo_tcx_core_enc( st, old_inp_12k8_fx[n] + L_INP_MEM, old_inp_16k_fx[n] + L_INP_MEM, Aw_fx[n], lsp_new_fx[n], lsp_mid_fx[n], pitch_buf_fx[n], last_element_mode, vad_hover_flag[0], 0 );
-
- Scale_sig( old_inp_12k8_fx[n], L_INP_12k8, sub( Q_new[n], Q1 ) ); // Q_new[n] - 1
- Scale_sig( old_inp_16k_fx[n], L_INP, sub( Q_new[n], Q1 ) ); // Q_new[n] - 1
-
- Scale_sig( st->hTcxEnc->old_out_fx, L_FRAME32k, negate( st->hTcxEnc->Q_old_out ) ); // scaling back to Q0
- st->hTcxEnc->Q_old_out = 0;
- move16();
-#endif
-
- IF( EQ_16( hTcxEnc->tcxMode, TCX_20 ) )
- {
- L_spec = st->hTcxCfg->tcx_coded_lines;
- move16();
- Word16 e_max = s_max( hTcxEnc->spectrum_e[0], Q_spec_old );
- e_max = sub( e_max, L_norm_arr( hTcxEnc->spectrum_long_fx, N_MAX ) );
- scale_sig32( hTcxEnc->spectrum_fx[0], L_spec, sub( hTcxEnc->spectrum_e[0], e_max ) ); // exp(e_max)
- scale_sig32( hTcxEnc->spectrum_long_fx + L_spec, sub( N_MAX, L_spec ), sub( Q_spec_old, e_max ) ); // exp(e_max)
-
- hTcxEnc->spectrum_long_e = e_max;
- move16();
- }
- ELSE
- {
- Word16 e_max = s_max( Q_spec_old, s_max( hTcxEnc->spectrum_e[0], hTcxEnc->spectrum_e[1] ) );
- e_max = sub( e_max, L_norm_arr( hTcxEnc->spectrum_long_fx, N_MAX ) );
- L_spec = shr( st->hTcxCfg->tcx_coded_lines, 1 );
- scale_sig32( hTcxEnc->spectrum_fx[0], L_spec, sub( hTcxEnc->spectrum_e[0], e_max ) ); // exp(e_max)
- scale_sig32( hTcxEnc->spectrum_fx[1], L_spec, sub( hTcxEnc->spectrum_e[1], e_max ) ); // exp(e_max)
- scale_sig32( hTcxEnc->spectrum_fx[0] + L_spec, sub( N_TCX10_MAX, L_spec ), sub( Q_spec_old, e_max ) ); // exp(e_max)
- scale_sig32( hTcxEnc->spectrum_fx[1] + L_spec, sub( N_MAX - N_TCX10_MAX, L_spec ), sub( Q_spec_old, e_max ) ); // exp(e_max)
-
- hTcxEnc->spectrum_long_e = s_max( Q_spec_old, s_max( hTcxEnc->spectrum_e[0], hTcxEnc->spectrum_e[1] ) );
- move16();
- }
- hTcxEnc->spectrum_e[0] = hTcxEnc->spectrum_long_e;
- move16();
- hTcxEnc->spectrum_e[1] = hTcxEnc->spectrum_long_e;
- move16();
-#endif
}
IF( EQ_16( st->core, HQ_CORE ) )
{
/* HQ core encoder */
-#ifndef SIMPLIFY_CORE_ENC
- Scale_sig( st->input_fx, input_frame, negate( st->q_inp ) ); // Q0
- st->q_inp = 0;
- move16();
- Scale_sig( st->old_input_signal_fx, input_frame, negate( st->q_old_inp ) ); // Q0
- st->q_old_inp = 0;
- move16();
- Scale_sig( st->hTcxEnc->Txnq, L_FRAME32k / 2 + 64, sub( 0, st->hTcxEnc->q_Txnq ) ); // Q0
- st->hTcxEnc->q_Txnq = 0;
- move16();
-#endif
hq_core_enc_fx( st, st->input_fx, input_frame, NORMAL_HQ_CORE, Voicing_flag[n], vad_hover_flag[0] );
}
@@ -442,84 +302,23 @@ ivas_error ivas_core_enc_fx(
{
Word16 mdst_spectrum_e[CPE_CHANNELS][NB_DIV];
Word16 orig_spectrum_e[CPE_CHANNELS][NB_DIV];
-#ifdef SIMPLIFY_CORE_ENC
Word16 Q_spec_old[CPE_CHANNELS];
-#else
- Word16 pitch_buf_fx_new[CPE_CHANNELS][NB_SUBFR16k]; /* Q6 */
- FOR( n = 0; n < n_CoreChannels; n++ )
- {
- st = sts[n];
-#ifndef NONBE_FIX_ISSUE_2206_MDCT_STEREO_FIX_2549
- Scale_sig( old_inp_16k_fx[n], L_INP, sub( Q1, Q_new[n] ) ); // Q0
-#endif
-#ifndef NONBE_FIX_ISSUE_2518
- IF( NE_16( st->element_mode, IVAS_CPE_DFT ) && NE_16( st->element_mode, IVAS_CPE_MDCT ) )
- {
- st->hTcxEnc->exp_buf_speech_ltp = st->exp_buf_speech_enc;
- move16();
- }
-#endif
- }
- Word16 Q_spec_old[2], L_spec;
-#endif
Q_spec_old[0] = hCPE->hCoreCoder[0]->hTcxEnc->spectrum_long_e;
move16();
Q_spec_old[1] = hCPE->hCoreCoder[1]->hTcxEnc->spectrum_long_e;
move16();
-#ifdef SIMPLIFY_CORE_ENC
-#ifndef NONBE_FIX_ISSUE_2206
- ivas_mdct_core_whitening_enc_fx( hCPE, old_inp_16k_fx, old_wsp_fx, pitch_buf_fx_new, hMCT->p_mdst_spectrum_long_fx[cpe_id], hMCT->tnsBits[cpe_id], hMCT->p_orig_spectrum_long_fx[cpe_id],
- hMCT->tnsSize[cpe_id], hMCT->p_param[cpe_id], hMCT->hBstr, 1, hMCT->nchan_out_woLFE, mdst_spectrum_e, orig_spectrum_e );
-#else
-#ifdef NONBE_FIX_ISSUE_2206_MDCT_STEREO_FIX_2549
ivas_mdct_core_whitening_enc_fx( hCPE, old_inp_16k_fx, Q_new, old_wsp_fx, pitch_buf_fx, hMCT->p_mdst_spectrum_long_fx[cpe_id], hMCT->tnsBits[cpe_id], hMCT->p_orig_spectrum_long_fx[cpe_id],
hMCT->tnsSize[cpe_id], hMCT->p_param[cpe_id], hMCT->hBstr, 1, hMCT->nchan_out_woLFE, mdst_spectrum_e, orig_spectrum_e );
-#else
- ivas_mdct_core_whitening_enc_fx( hCPE, old_inp_16k_fx, old_wsp_fx, pitch_buf_fx, hMCT->p_mdst_spectrum_long_fx[cpe_id], hMCT->tnsBits[cpe_id], hMCT->p_orig_spectrum_long_fx[cpe_id],
- hMCT->tnsSize[cpe_id], hMCT->p_param[cpe_id], hMCT->hBstr, 1, hMCT->nchan_out_woLFE, mdst_spectrum_e, orig_spectrum_e );
-#endif
-#endif
-#else
-#ifdef NONBE_FIX_ISSUE_2206_MDCT_STEREO_FIX_2549
- ivas_mdct_core_whitening_enc_fx( hCPE, old_inp_16k_fx, Q_new, old_wsp_fx, pitch_buf_fx_new, hMCT->p_mdst_spectrum_long_fx[cpe_id], hMCT->tnsBits[cpe_id], hMCT->p_orig_spectrum_long_fx[cpe_id],
- hMCT->tnsSize[cpe_id], hMCT->p_param[cpe_id], hMCT->hBstr, 1, hMCT->nchan_out_woLFE, mdst_spectrum_e, orig_spectrum_e );
-#else
- ivas_mdct_core_whitening_enc_fx( hCPE, old_inp_16k_fx, old_wsp_fx, pitch_buf_fx_new, hMCT->p_mdst_spectrum_long_fx[cpe_id], hMCT->tnsBits[cpe_id], hMCT->p_orig_spectrum_long_fx[cpe_id],
- hMCT->tnsSize[cpe_id], hMCT->p_param[cpe_id], hMCT->hBstr, 1, hMCT->nchan_out_woLFE, mdst_spectrum_e, orig_spectrum_e );
-#endif
-#endif
FOR( i = 0; i < CPE_CHANNELS; i++ )
{
-#ifndef SIMPLIFY_CORE_ENC
- st = sts[i];
- Word16 nSubframes = NB_DIV;
- move16();
-#ifndef NONBE_FIX_ISSUE_2206_MDCT_STEREO_FIX_2549
- Scale_sig( old_inp_16k_fx[i], L_INP, sub( Q_new[i], Q1 ) ); // Q_new[n] - 1
-#endif
- if ( EQ_16( st->hTcxEnc->tcxMode, TCX_20 ) )
- {
- nSubframes = 1;
- move16();
- }
-#endif
hMCT->q_mdst_spectrum_long_fx[cpe_id][i][0] = sub( Q31, mdst_spectrum_e[i][0] );
move16();
-#ifdef SIMPLIFY_CORE_ENC
IF( NE_16( sts[i]->hTcxEnc->tcxMode, TCX_20 ) )
-#else
- IF( EQ_16( nSubframes, NB_DIV ) )
-#endif
{
hMCT->q_mdst_spectrum_long_fx[cpe_id][i][1] = sub( Q31, mdst_spectrum_e[i][1] );
move16();
-#ifndef SIMPLIFY_CORE_ENC
- }
- IF( EQ_16( nSubframes, NB_DIV ) )
- {
-#endif
Word16 max_e = s_max( orig_spectrum_e[i][0], orig_spectrum_e[i][1] );
scale_sig32( hMCT->p_orig_spectrum_long_fx[cpe_id][i], N_TCX10_MAX, sub( orig_spectrum_e[i][0], max_e ) ); // exp(max_e)
scale_sig32( hMCT->p_orig_spectrum_long_fx[cpe_id][i] + N_TCX10_MAX, N_TCX10_MAX, sub( orig_spectrum_e[i][1], max_e ) ); // exp(max_e)
@@ -532,135 +331,12 @@ ivas_error ivas_core_enc_fx(
move16();
}
-#ifdef SIMPLIFY_CORE_ENC
stereo_tcx_enc_scale_buffers( sts[i], CPE_CHANNELS, Q_spec_old[i] );
-#else
- IF( EQ_16( st->hTcxEnc->tcxMode, TCX_20 ) )
- {
- Word16 e_max = s_max( st->hTcxEnc->spectrum_e[0], Q_spec_old[i] );
- e_max = sub( e_max, L_norm_arr( st->hTcxEnc->spectrum_long_fx, N_MAX ) );
- L_spec = st->hTcxEnc->L_frameTCX;
- move16();
- scale_sig32( st->hTcxEnc->spectrum_fx[0], L_spec, sub( st->hTcxEnc->spectrum_e[0], e_max ) ); // exp(e_max)
- scale_sig32( st->hTcxEnc->spectrum_long_fx + L_spec, sub( N_MAX, L_spec ), sub( Q_spec_old[i], e_max ) ); // exp(e_max)
-
- st->hTcxEnc->spectrum_long_e = e_max;
- move16();
- }
- ELSE
- {
- Word16 e_max = s_max( s_max( st->hTcxEnc->spectrum_e[0], st->hTcxEnc->spectrum_e[1] ), Q_spec_old[i] );
- e_max = sub( e_max, L_norm_arr( st->hTcxEnc->spectrum_long_fx, N_MAX ) );
- L_spec = shr( st->hTcxEnc->L_frameTCX, 1 );
- scale_sig32( st->hTcxEnc->spectrum_fx[0], L_spec, sub( st->hTcxEnc->spectrum_e[0], e_max ) ); // exp(e_max)
- scale_sig32( st->hTcxEnc->spectrum_fx[0] + L_spec, sub( N_TCX10_MAX, L_spec ), sub( Q_spec_old[i], e_max ) ); // exp(e_max)
- scale_sig32( st->hTcxEnc->spectrum_fx[1], L_spec, sub( st->hTcxEnc->spectrum_e[1], e_max ) ); // exp(e_max)
- scale_sig32( st->hTcxEnc->spectrum_fx[1] + L_spec, sub( ( N_MAX - N_TCX10_MAX ), L_spec ), sub( Q_spec_old[i], e_max ) ); // exp(e_max)
-
- st->hTcxEnc->spectrum_long_e = e_max;
- move16();
- }
-
- st->hTcxEnc->spectrum_e[0] = st->hTcxEnc->spectrum_long_e;
- move16();
- st->hTcxEnc->spectrum_e[1] = st->hTcxEnc->spectrum_long_e;
- move16();
-#endif
}
}
ELSE
{
-#ifdef SIMPLIFY_CORE_ENC
-#if !defined( NONBE_FIX_ISSUE_2206 ) || defined( NONBE_FIX_ISSUE_2206_MDCT_STEREO_FIX_2549 )
- stereo_mdct_core_enc_fx( hCPE, old_inp_16k_fx, Q_new, old_wsp_fx, pitch_buf_fx );
-#else
- stereo_mdct_core_enc_fx( hCPE, old_inp_16k_fx, old_wsp_fx, pitch_buf_fx );
-#endif
-#else
- FOR( i = 0; i < CPE_CHANNELS; i++ )
- {
- st = sts[i];
-#ifndef NONBE_FIX_ISSUE_2206_MDCT_STEREO_FIX_2549
- Scale_sig( old_inp_16k_fx[i], L_INP, sub( Q1, Q_new[i] ) ); // Q0
-#endif
-
-#ifndef NONBE_FIX_ISSUE_2518
- test();
- IF( NE_16( st->element_mode, IVAS_CPE_DFT ) && NE_16( st->element_mode, IVAS_CPE_MDCT ) )
- {
- st->hTcxEnc->exp_buf_speech_ltp = st->exp_buf_speech_enc;
- move16();
- }
-#endif
- shift = norm_arr( st->input_fx, input_frame );
-#ifdef NONBE_FIX_ISSUE_2206
- Q_min = add( st->q_inp, shift );
-#else
- Q_min = s_max( -2, add( st->q_inp, shift ) );
-#endif
- scale_sig( st->input_fx, input_frame, sub( Q_min, st->q_inp ) );
- st->q_inp = Q_min;
- move16();
-
- shift = norm_arr( st->input_fx - input_frame, input_frame );
-#ifdef NONBE_FIX_ISSUE_2206
- Q_min = add( st->q_old_inp, shift );
-#else
- Q_min = s_max( -2, add( st->q_old_inp, shift ) );
-#endif
- scale_sig( st->input_fx - input_frame, input_frame, sub( Q_min, st->q_old_inp ) );
- st->q_old_inp = Q_min;
- move16();
- }
-
- Word16 Q_spec_old[2], L_spec;
- Q_spec_old[0] = hCPE->hCoreCoder[0]->hTcxEnc->spectrum_long_e;
- move16();
- Q_spec_old[1] = hCPE->hCoreCoder[1]->hTcxEnc->spectrum_long_e;
- move16();
-
-#ifdef NONBE_FIX_ISSUE_2206_MDCT_STEREO_FIX_2549
stereo_mdct_core_enc_fx( hCPE, old_inp_16k_fx, Q_new, old_wsp_fx, pitch_buf_fx );
-#else
- stereo_mdct_core_enc_fx( hCPE, old_inp_16k_fx, old_wsp_fx, pitch_buf_fx );
-#endif
-
- FOR( i = 0; i < CPE_CHANNELS; i++ )
- {
-#ifndef NONBE_FIX_ISSUE_2206_MDCT_STEREO_FIX_2549
- Scale_sig( old_inp_16k_fx[i], L_INP, sub( Q_new[i], Q1 ) ); // Q_new[n] - 1
-#endif
- st = sts[i];
- IF( EQ_16( st->hTcxEnc->tcxMode, TCX_20 ) )
- {
- L_spec = st->hTcxEnc->L_frameTCX;
- move16();
- Word16 e_max = s_max( st->hTcxEnc->spectrum_e[0], Q_spec_old[i] );
- e_max = sub( e_max, L_norm_arr( st->hTcxEnc->spectrum_long_fx, N_MAX ) );
- scale_sig32( st->hTcxEnc->spectrum_fx[0], L_spec, sub( st->hTcxEnc->spectrum_e[0], e_max ) ); // exp(e_max)
- scale_sig32( st->hTcxEnc->spectrum_long_fx + L_spec, sub( N_MAX, L_spec ), sub( Q_spec_old[i], e_max ) ); // exp(e_max)
- st->hTcxEnc->spectrum_long_e = e_max;
- move16();
- }
- ELSE
- {
- L_spec = shr( st->hTcxEnc->L_frameTCX, 1 );
- Word16 e_max = s_max( s_max( st->hTcxEnc->spectrum_e[1], st->hTcxEnc->spectrum_e[0] ), Q_spec_old[i] );
- e_max = sub( e_max, L_norm_arr( st->hTcxEnc->spectrum_long_fx, N_MAX ) );
- scale_sig32( st->hTcxEnc->spectrum_fx[0], L_spec, sub( st->hTcxEnc->spectrum_e[0], e_max ) ); // exp(e_max)
- scale_sig32( st->hTcxEnc->spectrum_fx[0] + L_spec, sub( N_TCX10_MAX, L_spec ), sub( Q_spec_old[i], e_max ) ); // exp(e_max)
- scale_sig32( st->hTcxEnc->spectrum_fx[1], L_spec, sub( st->hTcxEnc->spectrum_e[1], e_max ) ); // exp(e_max)
- scale_sig32( st->hTcxEnc->spectrum_fx[1] + L_spec, sub( ( N_MAX - N_TCX10_MAX ), L_spec ), sub( Q_spec_old[i], e_max ) ); // exp(e_max)
- st->hTcxEnc->spectrum_long_e = e_max;
- move16();
- }
-
- st->hTcxEnc->spectrum_e[0] = st->hTcxEnc->spectrum_long_e;
- move16();
- st->hTcxEnc->spectrum_e[1] = st->hTcxEnc->spectrum_long_e;
- move16();
- }
-#endif
}
}
ELSE IF( EQ_32( sts[0]->core_brate, SID_2k40 ) && EQ_32( sts[1]->core_brate, SID_2k40 ) )
@@ -704,19 +380,10 @@ ivas_error ivas_core_enc_fx(
IF( st->hBWE_FD != NULL )
{
-#ifdef NONBE_FIX_ISSUE_2206
Word16 tmp = norm_arr( st->hBWE_FD->L_old_wtda_swb_fx, L_FRAME48k );
scale_sig( st->hBWE_FD->L_old_wtda_swb_fx, L_FRAME48k, tmp );
st->Q_old_wtda = add( st->Q_old_wtda, tmp );
move16();
-#else
- Scale_sig( st->hBWE_FD->L_old_wtda_swb_fx, L_FRAME48k, sub( negate( 1 ), st->Q_old_wtda ) ); // Q(-1)
- st->Q_old_wtda = -1; // This reset is required for resolving crash issue. Needs to be looked into further
- move16();
- Scale_sig( st->hBWE_FD->old_input_lp_fx, NS2SA( 16000, ACELP_LOOK_NS + DELAY_FD_BWE_ENC_NS ), sub( sub( Q_new[n], 1 ), st->hBWE_FD->prev_Q_input_lp ) ); /* Q_new[n] - 1 */
- st->hBWE_FD->prev_Q_input_lp = sub( Q_new[n], 1 );
- move16();
-#endif
}
/*---------------------------------------------------------------------*
@@ -737,11 +404,7 @@ ivas_error ivas_core_enc_fx(
IF( GE_32( input_Fs, 16000 ) && LT_16( st->bwidth, SWB ) && st->hBWE_TD != NULL )
{
/* Common pre-processing for WB TBE and WB BWE */
-#ifdef NONBE_FIX_ISSUE_2206
wb_pre_proc_fx( st, last_element_mode, new_inp_resamp16k_fx[n], hb_speech_fx, q_new_inp_resamp16k_fx[n] );
-#else
- wb_pre_proc_fx( st, last_element_mode, new_inp_resamp16k_fx[n], hb_speech_fx );
-#endif
}
test();
@@ -749,20 +412,12 @@ ivas_error ivas_core_enc_fx(
IF( EQ_16( st->extl, WB_TBE ) )
{
/* WB TBE encoder */
-#ifdef NONBE_FIX_ISSUE_2206
wb_tbe_enc_fx( st, hb_speech_fx, q_new_inp_resamp16k_fx[n], bwe_exc_extended_fx[n], Q_new[n], voice_factors_fx[n], pitch_buf_fx[n] );
-#else
- wb_tbe_enc_fx( st, hb_speech_fx, bwe_exc_extended_fx[n], Q_new[n], voice_factors_fx[n], pitch_buf_fx[n] );
-#endif
}
ELSE IF( EQ_16( st->extl, WB_BWE ) && n == 0 && NE_16( st->element_mode, IVAS_CPE_MDCT ) )
{
/* WB BWE encoder */
-#ifdef NONBE_FIX_ISSUE_2206
wb_bwe_enc_fx( st, new_inp_resamp16k_fx[n], q_new_inp_resamp16k_fx[n] );
-#else
- wb_bwe_enc_fx( st, new_inp_resamp16k_fx[n] );
-#endif
}
/*---------------------------------------------------------------------*
@@ -770,7 +425,6 @@ ivas_error ivas_core_enc_fx(
* SWB(FB) BWE encoding
*---------------------------------------------------------------------*/
-#ifdef NONBE_FIX_ISSUE_2206
test();
IF( GE_32( input_Fs, 32000 ) && st->hBWE_TD != NULL )
{
@@ -787,40 +441,20 @@ ivas_error ivas_core_enc_fx(
st->q_inp = tmp;
move16();
}
-#else
- Word16 q_inp_orig;
- q_inp_orig = st->q_inp;
- move16();
- test();
- IF( GE_32( input_Fs, 32000 ) && st->hBWE_TD != NULL )
- {
- st->q_inp = -1;
- st->q_old_inp = -1;
- move16();
- move16();
- Scale_sig( st->input_fx - input_frame, shl( input_frame, 1 ), sub( st->q_inp, q_inp_orig ) );
- }
-#endif
new_swb_speech_fx_16 = new_swb_speech_buffer_fx_16 + STEREO_DFT_OVL_MAX;
set16_fx( new_swb_speech_buffer_fx_16, 0, L_FRAME48k + STEREO_DFT_OVL_MAX );
shb_speech_fx = new_inp_resamp16k_fx[n]; /* reuse existing buffer: shb_speech[L_FRAME16k] */
-#ifdef NONBE_FIX_ISSUE_2206_SWB_EXPERIMENT
Word16 shb_speech_q = Q15;
move16();
-#endif
test();
IF( GE_32( input_Fs, 32000 ) && st->hBWE_TD != NULL )
{
/* Common pre-processing for SWB(FB) TBE and SWB(FB) BWE */
-#ifdef NONBE_FIX_ISSUE_2206_SWB_EXPERIMENT
shb_speech_q = st->hBWE_TD->old_speech_shb_q;
move16();
swb_pre_proc_fx( st, new_swb_speech_fx_16, shb_speech_fx, &shb_speech_q, realBuffer_fx[n], imagBuffer_fx[n], q_re_im_buf[n], NULL, hCPE );
-#else
- swb_pre_proc_fx( st, new_swb_speech_fx_16, shb_speech_fx, realBuffer_fx[n], imagBuffer_fx[n], q_re_im_buf[n], NULL, hCPE );
-#endif
}
ELSE IF( GE_32( input_Fs, 32000 ) )
{
@@ -849,11 +483,7 @@ ivas_error ivas_core_enc_fx(
Word16 Q_fb_exc;
Word16 fb_exc_fx[L_FRAME16k];
-#ifdef NONBE_FIX_ISSUE_2206_SWB_EXPERIMENT
swb_tbe_enc_fx( st, hStereoICBWE, shb_speech_fx, bwe_exc_extended_fx[n], voice_factors_fx[n], fb_exc_fx, &Q_fb_exc, Q_new[n], shb_speech_q, st->voicing_fx, pitch_buf_fx[n] );
-#else
- swb_tbe_enc_fx( st, hStereoICBWE, shb_speech_fx, bwe_exc_extended_fx[n], voice_factors_fx[n], fb_exc_fx, &Q_fb_exc, Q_new[n], 0, st->voicing_fx, pitch_buf_fx[n] );
-#endif
IF( EQ_16( st->extl, FB_TBE ) )
{
@@ -865,16 +495,11 @@ ivas_error ivas_core_enc_fx(
ELSE IF( EQ_16( st->extl, SWB_BWE ) || EQ_16( st->extl, FB_BWE ) )
{
/* SWB(FB) BWE encoder */
-#ifdef NONBE_FIX_ISSUE_2206_SWB_EXPERIMENT
swb_bwe_enc_fx( st, last_element_mode, old_inp_12k8_fx[n], old_inp_16k_fx[n], old_syn_12k8_16k_fx[n], new_swb_speech_fx_16, st->q_inp, shb_speech_fx, shb_speech_q, sub( Q_new[n], 1 ) );
-#else
- swb_bwe_enc_fx( st, last_element_mode, old_inp_12k8_fx[n], old_inp_16k_fx[n], old_syn_12k8_16k_fx[n], new_swb_speech_fx_16, st->q_inp, shb_speech_fx, 0, sub( Q_new[n], 1 ) );
-#endif
}
Scale_sig( old_syn_12k8_16k_fx[n], L_FRAME16k, sub( Q1, Q_new[n] ) ); // Q0
-#ifdef NONBE_FIX_ISSUE_2206
test();
IF( GE_32( input_Fs, 32000 ) && st->hBWE_TD != NULL )
{
@@ -883,14 +508,6 @@ ivas_error ivas_core_enc_fx(
st->q_inp = add( st->q_inp, 1 );
move16();
}
-#else
- IF( GE_32( input_Fs, 32000 ) && st->hBWE_TD != NULL )
- {
- Scale_sig( st->input_fx, input_frame, sub( q_inp_orig, st->q_inp ) );
- st->q_inp = q_inp_orig;
- move16();
- }
-#endif
/*---------------------------------------------------------------------*
* SWB DTX/CNG encoding
@@ -902,11 +519,7 @@ ivas_error ivas_core_enc_fx(
IF( st->hTdCngEnc != NULL && st->Opt_DTX_ON && ( GE_16( input_frame, L_FRAME32k ) || EQ_16( st->element_mode, IVAS_CPE_DFT ) ) )
{
/* SHB DTX/CNG encoder */
-#ifdef NONBE_FIX_ISSUE_2206_SWB_EXPERIMENT
swb_CNG_enc_fx( st, shb_speech_fx, shb_speech_q, old_syn_12k8_16k_fx[n] );
-#else
- swb_CNG_enc_fx( st, shb_speech_fx, old_syn_12k8_16k_fx[n] );
-#endif
}
/*-------------------------------------------------------------------*
@@ -919,11 +532,7 @@ ivas_error ivas_core_enc_fx(
{
stereo_icBWE_preproc_fx( hCPE, input_frame, new_swb_speech_buffer_fx_16 /*tmp buffer*/, st->q_inp );
-#ifdef NONBE_FIX_ISSUE_2206_SWB_EXPERIMENT
stereo_icBWE_enc_fx( hCPE, shb_speech_fx, shb_speech_q, new_swb_speech_buffer_fx_16, st->q_inp, voice_factors_fx[0] );
-#else
- stereo_icBWE_enc_fx( hCPE, shb_speech_fx, new_swb_speech_buffer_fx_16, st->q_inp, voice_factors_fx[0] );
-#endif
}
/*---------------------------------------------------------------------*
@@ -957,42 +566,6 @@ ivas_error ivas_core_enc_fx(
diff_nBits = sub( diff_nBits, n );
}
}
-#ifdef DEBUG_MODE_INFO
- for ( n = 0; n < n_CoreChannels; n++ )
- {
- float tmpF;
- short tmpS, id;
-
- st = sts[n];
- id = st->id_element;
-
- dbgwrite( &st->core, sizeof( short ), 1, input_frame, fname( debug_dir, "core", n, id, ENC ) );
- dbgwrite( &st->extl, sizeof( short ), 1, input_frame, fname( debug_dir, "extl", n, id, ENC ) );
- dbgwrite( &st->bwidth, sizeof( short ), 1, input_frame, fname( debug_dir, "bwidth", n, id, ENC ) );
- tmpF = st->total_brate / 1000.0f;
- dbgwrite( &tmpF, sizeof( float ), 1, input_frame, fname( debug_dir, "total_brate", n, id, ENC ) );
- tmpS = st->bits_frame_nominal;
- dbgwrite( &tmpS, sizeof( short ), 1, input_frame, fname( debug_dir, "bits_nominal", n, id, ENC ) );
- tmpF = st->core_brate / 1000.0f;
- dbgwrite( &tmpF, sizeof( float ), 1, input_frame, fname( debug_dir, "core_brate", n, id, ENC ) );
- tmpF = st->extl_brate / 1000.0f;
- dbgwrite( &tmpF, sizeof( float ), 1, input_frame, fname( debug_dir, "extl_brate", n, id, ENC ) );
-
- dbgwrite( &st->coder_type, sizeof( short ), 1, input_frame, fname( debug_dir, "coder_type", n, id, ENC ) );
- dbgwrite( &st->clas, sizeof( short ), 1, input_frame, fname( debug_dir, "clas", n, id, ENC ) );
- dbgwrite( &st->cng_type, sizeof( short ), 1, input_frame, fname( debug_dir, "cng_type", n, id, ENC ) );
- dbgwrite( &st->L_frame, sizeof( short ), 1, input_frame, fname( debug_dir, "L_frame", n, id, ENC ) );
- dbgwrite( &st->vad_flag, sizeof( short ), 1, input_frame, fname( debug_dir, "vad_flag", n, id, ENC ) );
- dbgwrite( &st->localVAD, sizeof( short ), 1, input_frame, fname( debug_dir, "localVAD", n, id, ENC ) );
-
- dbgwrite( &st->count_WB, sizeof( int16_t ), 1, input_frame, fname( debug_dir, "count_WB", n, id, ENC ) );
- dbgwrite( &st->count_SWB, sizeof( int16_t ), 1, input_frame, fname( debug_dir, "count_SWB", n, id, ENC ) );
-
- dbgwrite( &st->sp_aud_decision0, sizeof( int16_t ), 1, input_frame, fname( debug_dir, "sp_aud_decision0", n, id, ENC ) );
- dbgwrite( &st->sp_aud_decision1, sizeof( int16_t ), 1, input_frame, fname( debug_dir, "sp_aud_decision1", n, id, ENC ) );
- dbgwrite( &st->sp_aud_decision2, sizeof( int16_t ), 1, input_frame, fname( debug_dir, "sp_aud_decision2", n, id, ENC ) );
- }
-#endif
pop_wmops();
diff --git a/lib_enc/ivas_core_pre_proc_front_fx.c b/lib_enc/ivas_core_pre_proc_front_fx.c
index 92f753704dee43cdf59c331724bbab92b1d68383..edc2a42772f083bbb89a501c334f4e84d937ce7d 100644
--- a/lib_enc/ivas_core_pre_proc_front_fx.c
+++ b/lib_enc/ivas_core_pre_proc_front_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
@@ -37,10 +9,6 @@
#include "prot_fx_enc.h"
#include "ivas_prot_fx.h"
#include "wmc_auto.h"
-#ifdef DEBUGGING
-#include "debug.h"
-#include "string.h"
-#endif
/*---------------------------------------------------------------*
@@ -77,18 +45,14 @@ static Word16 get_zero_flag( const Word32 arr[], const Word16 len )
*--------------------------------------------------------------------*/
void pre_proc_front_ivas_fx(
- SCE_ENC_HANDLE hSCE, /* i/o: SCE encoder structure */
- CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder structure */
- const Word32 element_brate, /* i : SCE/CPE element bitrate Q0*/
- const Word16 nb_bits_metadata, /* i : number of metadata bits Q0*/
- const Word16 input_frame, /* i : frame length Q0*/
- const Word16 n, /* i : channel number Q0*/
- Word16 old_inp_12k8_fx[], /* o : buffer of old input signal (st->Q_inp until preemph, then Q_new, then Q_new-1 towards the end)*/
-#ifdef NONBE_FIX_ISSUE_2206
- Word16 old_inp_16k_fx[], /* o : buffer of old input signal @16kHz (st->Q_inp until preemph, then Q_new, then Q_new-1 towards the end)*/
-#else
- Word16 old_inp_16k_fx[], /* o : buffer of old input signal @16kHz Q_new-1*/
-#endif
+ SCE_ENC_HANDLE hSCE, /* i/o: SCE encoder structure */
+ CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder structure */
+ const Word32 element_brate, /* i : SCE/CPE element bitrate Q0*/
+ const Word16 nb_bits_metadata, /* i : number of metadata bits Q0*/
+ const Word16 input_frame, /* i : frame length Q0*/
+ const Word16 n, /* i : channel number Q0*/
+ Word16 old_inp_12k8_fx[], /* o : buffer of old input signal (st->Q_inp until preemph, then Q_new, then Q_new-1 towards the end)*/
+ Word16 old_inp_16k_fx[], /* o : buffer of old input signal @16kHz (st->Q_inp until preemph, then Q_new, then Q_new-1 towards the end)*/
Word32 *ener_fx, /* o : residual energy from Levinson-Durbin epsP_fx_q*/
Word16 *relE_fx, /* o : frame relative energy Q8*/
Word16 A_fx[NB_SUBFR16k * ( M + 1 )], /* o : A(z) unquantized for the 4 subframes Q12*/
@@ -211,15 +175,9 @@ void pre_proc_front_ivas_fx(
Word16 sf_energySum[CLDFB_NO_CHANNELS_MAX];
Word16 Q_inp_const = -1;
move16();
-#ifdef NONBE_FIX_ISSUE_2518
Word16 preemp_len;
Word16 *preemp_start_idx = NULL;
Word32 sig_out[STEREO_DFT_OVL_16k + L_FRAME16k /* = max( L_FRAME16k + STEREO_DFT_OVL_16k, L_FRAME16k + L_FILT16k + lMemRecalc_16k ) */];
-#else
- Word16 headroom, preemp_len, inp_max;
- Word16 *preemp_start_idx = NULL;
- Word32 sig_out[STEREO_DFT_OVL_16k + L_FRAME16k /* = max( L_FRAME16k + STEREO_DFT_OVL_16k, L_FRAME16k + L_FILT16k + lMemRecalc_16k ) */], max_32;
-#endif
push_wmops( "pre_proc_front" );
/*------------------------------------------------------------------*
@@ -350,7 +308,6 @@ void pre_proc_front_ivas_fx(
move16();
}
-#ifdef NONBE_FIX_ISSUE_2206
Word16 Q_old_in = st->q_inp;
move16();
@@ -358,13 +315,11 @@ void pre_proc_front_ivas_fx(
Q_min = add( sub( 15, st->exp_old_inp_12k8 ), norm_arr( st->old_inp_12k8_fx, L_INP_MEM ) );
input_frame_full = shl( input_frame, 1 ); //(old frame input length + new frame input length)
Q_min = s_min( Q_min, sub( add( L_norm_arr( st->input32_fx - input_frame, input_frame_full ), st->q_inp32 ), 16 ) );
-#ifdef NONBE_FIX_ISSUE_2206_TV1
/* Take into account resampling memory for Q_min, and 1 bit headroom for resampling overshoot. */
IF( NE_32( input_Fs, INT_FS_12k8 ) )
{
Q_min = sub( s_min( Q_min, add( st->mem_q, norm_arr( st->mem_decim_fx_q_inp, 2 * L_FILT_MAX ) ) ), Q1 );
}
-#endif
/* Limit Q_min to avoid rescale larger than 15 against Q-1 */
Q_min = s_min( Q14, Q_min );
Copy_Scale_sig_32_16_nosat( st->input32_fx - input_frame, st->input_fx - input_frame, input_frame_full, s_max( -31, sub( Q_min, st->q_inp32 ) ) ); // Q_min
@@ -375,17 +330,6 @@ void pre_proc_front_ivas_fx(
scale_sig( old_inp_12k8_fx, L_INP_12k8, sub( st->q_inp, Q_old_in ) );
scale_sig( old_inp_16k_fx, L_INP, sub( st->q_inp, Q_old_in ) );
-#else
- Q_min = add( sub( 15, st->exp_old_inp_12k8 ), norm_arr( st->old_inp_12k8_fx, L_INP_MEM ) );
- input_frame_full = shl( input_frame, 1 ); //(old frame input length + new frame input length)
- Q_min = s_min( Q_min, sub( add( getScaleFactor32( st->input32_fx - input_frame, input_frame_full ), st->q_inp32 ), 16 ) );
- Q_min = s_max( -2, Q_min );
- Copy_Scale_sig_32_16( st->input32_fx - input_frame, st->input_fx - input_frame, input_frame_full, sub( Q_min, st->q_inp32 ) ); // Q_min
- st->q_inp = Q_min;
- move16();
- st->q_old_inp = Q_min;
- move16();
-#endif
L_look = L_LOOK_12k8; /* lookahead at 12.8kHz */
move16();
@@ -400,27 +344,15 @@ void pre_proc_front_ivas_fx(
IF( EQ_16( element_mode, IVAS_CPE_DFT ) )
{
-#ifdef NONBE_FIX_ISSUE_2206
Copy_Scale_sig_nosat( st->old_inp_12k8_fx, old_inp_12k8_fx, L_INP_MEM - STEREO_DFT_OVL_12k8, sub( st->q_inp, sub( Q15, st->exp_old_inp_12k8 ) ) ); /* st->q_inp */
-#else
- Copy_Scale_sig( st->old_inp_12k8_fx, old_inp_12k8_fx, L_INP_MEM - STEREO_DFT_OVL_12k8, sub( st->q_inp, sub( Q15, st->exp_old_inp_12k8 ) ) ); /* st->q_inp */
-#endif
}
ELSE IF( EQ_16( element_mode, IVAS_CPE_TD ) )
{
-#ifdef NONBE_FIX_ISSUE_2206
Copy_Scale_sig_nosat( st->old_inp_12k8_fx, old_inp_12k8_fx, sub( L_INP_MEM - L_FILT, lMemRecalc_12k8 ), sub( st->q_inp, sub( Q15, st->exp_old_inp_12k8 ) ) ); /* st->q_inp */
-#else
- Copy_Scale_sig( st->old_inp_12k8_fx, old_inp_12k8_fx, sub( L_INP_MEM - L_FILT, lMemRecalc_12k8 ), sub( st->q_inp, sub( Q15, st->exp_old_inp_12k8 ) ) ); /* st->q_inp */
-#endif
}
ELSE
{
-#ifdef NONBE_FIX_ISSUE_2206
Copy_Scale_sig_nosat( st->old_inp_12k8_fx, old_inp_12k8_fx, L_INP_MEM - L_FILT, sub( st->q_inp, sub( Q15, st->exp_old_inp_12k8 ) ) ); /* st->q_inp */
-#else
- Copy_Scale_sig( st->old_inp_12k8_fx, old_inp_12k8_fx, L_INP_MEM - L_FILT, sub( st->q_inp, sub( Q15, st->exp_old_inp_12k8 ) ) ); /* st->q_inp */
-#endif
}
Copy( st->old_wsp_fx, old_wsp_fx, L_WSP_MEM ); /* exp(st->exp_old_wsp) */
@@ -484,38 +416,20 @@ void pre_proc_front_ivas_fx(
* (if not available from downsampled DMX)
*----------------------------------------------------------------*/
-#ifdef NONBE_FIX_ISSUE_2206
scale_sig( st->mem_decim_fx_q_inp, 2 * L_FILT_MAX, sub( st->q_inp, st->mem_q ) ); /* st->q_inp */
st->mem_q = st->q_inp;
move16();
-#else
- Scale_sig( st->mem_decim_fx_q_inp, 2 * L_FILT_MAX, sub( st->q_inp, st->mem_q ) ); /* st->q_inp */
-#endif
test();
IF( EQ_16( element_mode, IVAS_SCE ) )
{
new_inp_out_size = modify_Fs_fx( signal_in_fx, input_frame, input_Fs, new_inp_12k8_fx, INT_FS_12k8, st->mem_decim_fx_q_inp, ( st->max_bwidth == NB ), &Q_new_inp, &mem_decim_size ); /* st->q_inp */
-#ifdef NONBE_FIX_ISSUE_2206
- scale_sig( new_inp_12k8_fx, new_inp_out_size, negate( Q_new_inp ) ); /* scaling back to st->q_inp*/
-#else
- Scale_sig( new_inp_12k8_fx, new_inp_out_size, negate( Q_new_inp ) ); /* scaling back to st->q_inp*/
- st->mem_q = st->q_inp;
- move16();
-#endif
+ scale_sig( new_inp_12k8_fx, new_inp_out_size, negate( Q_new_inp ) ); /* scaling back to st->q_inp*/
-#ifdef NONBE_FIX_ISSUE_2206
Copy( st->mem_decim_fx_q_inp, mem_decim_dummy_fx, 2 * L_FILT_MAX ); /* q_inp */
-#else
- Copy( st->mem_decim_fx_q_inp, mem_decim_dummy_fx, 2 * L_FILT_MAX ); /* Q(-1) */
-#endif
set16_fx( temp1F_icatdmResampBuf_fx, 0, L_FILT_MAX );
new_inp_out_size = modify_Fs_fx( temp1F_icatdmResampBuf_fx, NS2SA_FX2( input_Fs, DELAY_FIR_RESAMPL_NS ), input_Fs, new_inp_12k8_fx + L_FRAME, INT_FS_12k8, mem_decim_dummy_fx, 0, &Q_new_inp, &mem_decim_size ); /* st->q_inp */
-#ifdef NONBE_FIX_ISSUE_2206
- scale_sig( new_inp_12k8_fx + L_FRAME, new_inp_out_size, negate( Q_new_inp ) ); /* scaling back to st->q_inp*/
-#else
- Scale_sig( new_inp_12k8_fx + L_FRAME, new_inp_out_size, negate( Q_new_inp ) ); /* scaling back to st->q_inp*/
-#endif
+ scale_sig( new_inp_12k8_fx + L_FRAME, new_inp_out_size, negate( Q_new_inp ) ); /* scaling back to st->q_inp*/
}
ELSE IF( EQ_16( element_mode, IVAS_CPE_TD ) || EQ_16( element_mode, IVAS_CPE_MDCT ) )
{
@@ -527,24 +441,12 @@ void pre_proc_front_ivas_fx(
Word16 length_12k8 = NS2SA( INT_FS_12k8, L_MEM_RECALC_SCH_NS );
new_inp_out_size = modify_Fs_fx( signal_in_fx - lMemRecalc - length_inp, length_inp, input_Fs, new_inp_12k8_fx - lMemRecalc_12k8 - length_12k8, INT_FS_12k8, st->mem_decim_fx_q_inp, 0, &Q_new_inp, &mem_decim_size ); /* st->q_inp */
-#ifdef NONBE_FIX_ISSUE_2206
- scale_sig( new_inp_12k8_fx - lMemRecalc_12k8 - length_12k8, new_inp_out_size, negate( Q_new_inp ) ); /* scaling back to st->q_inp*/
-#else
- Scale_sig( new_inp_12k8_fx - lMemRecalc_12k8 - length_12k8, new_inp_out_size, negate( Q_new_inp ) ); /* scaling back to st->q_inp*/
-#endif
+ scale_sig( new_inp_12k8_fx - lMemRecalc_12k8 - length_12k8, new_inp_out_size, negate( Q_new_inp ) ); /* scaling back to st->q_inp*/
}
new_inp_out_size = modify_Fs_fx( signal_in_fx - lMemRecalc, input_frame, input_Fs, new_inp_12k8_fx - lMemRecalc_12k8, INT_FS_12k8, st->mem_decim_fx_q_inp, ( st->max_bwidth == NB ), &Q_new_inp, &mem_decim_size ); /* st->q_inp */
-#ifndef NONBE_FIX_ISSUE_2206
- st->mem_q = st->q_inp;
- move16();
-#endif
- Copy( st->mem_decim_fx_q_inp, mem_decim_dummy_fx, 2 * L_FILT_MAX ); /* st->q_inp */
-#ifdef NONBE_FIX_ISSUE_2206
- scale_sig( new_inp_12k8_fx - lMemRecalc_12k8, new_inp_out_size, negate( Q_new_inp ) ); /* scaling back to st->q_inp*/
-#else
- Scale_sig( new_inp_12k8_fx - lMemRecalc_12k8, new_inp_out_size, negate( Q_new_inp ) ); /* scaling back to st->q_inp*/
-#endif
+ Copy( st->mem_decim_fx_q_inp, mem_decim_dummy_fx, 2 * L_FILT_MAX ); /* st->q_inp */
+ scale_sig( new_inp_12k8_fx - lMemRecalc_12k8, new_inp_out_size, negate( Q_new_inp ) ); /* scaling back to st->q_inp*/
IF( lMemRecalc > 0 )
{
@@ -553,40 +455,17 @@ void pre_proc_front_ivas_fx(
}
set16_fx( temp1F_icatdmResampBuf_fx, 0, L_FILT_MAX );
new_inp_out_size = modify_Fs_fx( temp1F_icatdmResampBuf_fx, NS2SA_FX2( input_Fs, DELAY_FIR_RESAMPL_NS ), input_Fs, new_inp_12k8_fx + L_FRAME, INT_FS_12k8, mem_decim_dummy_fx, 0, &Q_new_inp, &mem_decim_size ); /* st->q_inp */
-#ifdef NONBE_FIX_ISSUE_2206
/* The scaling below can saturate if Q_new_inp <= -2 */
scale_sig( new_inp_12k8_fx + L_FRAME, new_inp_out_size, negate( Q_new_inp ) ); /* scaling back to st->q_inp*/
-#else
- Scale_sig( new_inp_12k8_fx + L_FRAME, new_inp_out_size, negate( Q_new_inp ) ); /* scaling back to st->q_inp*/
-#endif
}
ELSE /* DFT stereo */
{
/* update the FIR resampling filter memory, needed for switching to time-domain (FIR) resampling */
Copy( signal_in_fx + sub( input_frame, add( NS2SA_FX2( input_Fs, L_MEM_RECALC_NS ), 2 * NS2SA_FX2( input_Fs, DELAY_FIR_RESAMPL_NS ) ) ), st->mem_decim_fx_q_inp, 2 * NS2SA_FX2( input_Fs, DELAY_FIR_RESAMPL_NS ) ); /* st->q_inp */
-#ifndef NONBE_FIX_ISSUE_2206
- st->mem_q = st->q_inp;
- move16();
- scale_sig( old_inp_12k8_fx, L_INP_MEM - STEREO_DFT_OVL_12k8, sub( Q_inp_const, st->q_inp ) );
- scale_sig( st->input_fx - input_frame, input_frame_full, sub( Q_inp_const, st->q_inp ) );
- Copy_Scale_sig( st->mem_decim_fx_q_inp, st->mem_decim_fx, 2 * L_FILT_MAX, sub( Q_inp_const, st->q_inp ) ); /* Q(-1) */
- // Scale_sig( st->mem_decim_fx, 2 * L_FILT_MAX, sub( Q_inp_const, st->q_inp ) ); /* Q(-1) */
- st->q_inp = Q_inp_const;
- move16();
- st->q_old_inp = Q_inp_const;
- move16();
-#endif
}
-#ifdef NONBE_FIX_ISSUE_2206
-#ifdef NONBE_FIX_ISSUE_2518
st->q_mem_decim_fx = add( st->q_inp, norm_arr( st->mem_decim_fx_q_inp, 2 * L_FILT_MAX ) );
move16();
Copy_Scale_sig_nosat( st->mem_decim_fx_q_inp, st->mem_decim_fx, 2 * L_FILT_MAX, sub( st->q_mem_decim_fx, st->q_inp ) );
-#else
- Copy( st->mem_decim_fx_q_inp, st->mem_decim_fx, 2 * L_FILT_MAX );
- st->q_mem_decim_fx = st->q_inp;
- move16();
-#endif
Word16 q_buf_speech_enc;
@@ -609,50 +488,11 @@ void pre_proc_front_ivas_fx(
{
Copy_Scale_sig_nosat( new_inp_12k8_fx, st->buf_speech_enc + L_FRAME32k, L_FRAME, sub( q_buf_speech_enc, st->q_inp ) ); /* q_buf_speech_enc */
}
-#else
- IF( NE_16( Q_inp_const, st->q_inp ) )
- {
- Copy_Scale_sig( st->mem_decim_fx_q_inp, st->mem_decim_fx, 2 * L_FILT_MAX, sub( Q_inp_const, st->q_inp ) ); /* Q(-1) */
- }
-
- Scale_sig( st->buf_speech_enc, L_PAST_MAX_32k + L_FRAME32k + L_NEXT_MAX_32k, sub( -1, sub( 15, st->exp_buf_speech_enc ) ) ); /* Q(-1) */
- st->exp_buf_speech_enc = 16;
- move16();
-
- /* save input resampled at 12.8kHz, non-preemhasised */
- test();
- IF( EQ_16( element_mode, IVAS_CPE_DFT ) )
- {
- Copy_Scale_sig( new_inp_12k8_fx - STEREO_DFT_OVL_12k8, st->buf_speech_enc + L_FRAME32k - STEREO_DFT_OVL_12k8, L_FRAME + STEREO_DFT_OVL_12k8, sub( Q_inp_const, st->q_inp ) ); /* Q_inp_const */
- }
- ELSE IF( EQ_16( element_mode, IVAS_CPE_TD ) || EQ_16( element_mode, IVAS_CPE_MDCT ) )
- {
- Copy_Scale_sig( new_inp_12k8_fx - lMemRecalc_12k8, st->buf_speech_enc + L_FRAME32k - lMemRecalc_12k8 - L_FILT, add( L_FRAME + L_FILT, lMemRecalc_12k8 ), sub( Q_inp_const, st->q_inp ) ); /* Q_inp_const */
- }
- ELSE
- {
- Copy_Scale_sig( new_inp_12k8_fx, st->buf_speech_enc + L_FRAME32k, L_FRAME, sub( Q_inp_const, st->q_inp ) ); /* Q_inp_const */
- }
-#endif
/*------------------------------------------------------------------*
* Perform fixed preemphasis (12.8 kHz signal) through 1 - g*z^-1
*-----------------------------------------------------------------*/
-#ifndef NONBE_FIX_ISSUE_2518
-#ifdef NONBE_FIX_ISSUE_2206
- headroom = 0;
- move16();
- if ( NE_32( input_Fs, st->sr_core ) )
- {
- /* Increase headroom because of modify_Fs_fx() in ivas_core_pre_proc */
- headroom = add( headroom, 1 );
- }
-#else
- headroom = 2;
- move16();
-#endif
-#endif
preemp_len = 0;
move16();
@@ -748,16 +588,13 @@ void pre_proc_front_ivas_fx(
move16();
st->mem_preemph_q = st->q_inp;
move16();
-#ifdef NONBE_FIX_ISSUE_2518
Word16 shift = L_norm_arr( sig_out, preemp_len );
shift = s_min( shift, norm_arr( old_inp_12k8_fx, (Word16) ( preemp_start_idx - old_inp_12k8_fx ) ) );
shift = add( shift, st->q_inp );
/* Avoid saturation of resampling/delay decimation buffer. */
shift = s_min( shift, st->q_mem_decim16k_fx );
-#ifdef NONBE_FIX_ISSUE_2569
shift = s_min( shift, add( -1, norm_arr( &st->mem_preemph16k_fx, 1 ) ) );
-#endif
/* Limit Q_new here to st->q_inp because inside ivas_compute_core_buffers_fx() st->input is rescaled to Q_new */
shift = s_min( shift, st->q_inp );
@@ -770,59 +607,10 @@ void pre_proc_front_ivas_fx(
*Q_new = s_min( shift, Q_MAX );
move16();
-#else
- maximum_abs_32_fx( sig_out, preemp_len, &max_32 );
- inp_max = s_max( extract_h( max_32 ), 1 );
- Word16 shift = add( sub( norm_s( inp_max ), headroom ), st->q_inp );
-#ifdef NONBE_FIX_ISSUE_2206
- shift = s_min( shift, add( norm_arr( old_inp_12k8_fx, (Word16) ( preemp_start_idx - old_inp_12k8_fx ) ), st->q_inp ) );
- *Q_new = s_min( shift, Q_MAX );
- move16();
-#else
- shift = s_max( shift, 0 );
- shift = s_min( shift, Q_MAX );
- minimum_fx( st->Q_max, L_Q_MEM, &Q_min );
- *Q_new = s_min( shift, Q_min );
- move16();
-#ifdef NONBE_FIX_ISSUE_2206
- IF( shr( inp_max, sub( st->q_inp, -1 ) ) == 0 )
-#else
- IF( inp_max == 0 )
-#endif
- {
- IF( NE_16( st->last_coder_type, UNVOICED ) )
- {
- *Q_new = s_min( *Q_new, 1 );
- move16();
- }
- }
-
- FOR( i = L_Q_MEM - 1; i > 0; i-- )
- {
- st->Q_max[i] = st->Q_max[i - 1];
- move16();
- }
- st->Q_max[i] = shift;
- move16();
-#endif
-#endif
-
-#ifndef NONBE_FIX_ISSUE_2518
-#ifdef NONBE_FIX_ISSUE_2206
- /* Avoid saturation of resampling decimation buffer inside ivas_compute_core_buffers_fx(). */
- *Q_new = s_min( *Q_new, st->q_mem_decim16k_fx );
- /* Limit Q_new here to st->q_inp because inside ivas_compute_core_buffers_fx() st->input is rescaled to Q_new */
- *Q_new = s_min( *Q_new, st->q_inp );
-#endif
- *Q_new = add( *Q_new, Q_inp_const );
- move16();
-#endif
Copy_Scale_sig32_16( sig_out, preemp_start_idx, preemp_len, sub( add( *Q_new, 1 ), st->q_inp ) ); /* Q_new */
Scale_sig( old_inp_12k8_fx, (Word16) ( preemp_start_idx - old_inp_12k8_fx ), sub( *Q_new, st->q_inp ) ); /* Q_new */
-#ifdef NONBE_FIX_ISSUE_2206
- scale_sig( old_inp_16k_fx, L_INP, sub( *Q_new, st->q_inp ) ); /* Q_new */
-#endif
+ scale_sig( old_inp_16k_fx, L_INP, sub( *Q_new, st->q_inp ) ); /* Q_new */
cldfbScale.hb_scale = cldfbScale.lb_scale;
move16();
@@ -948,11 +736,7 @@ void pre_proc_front_ivas_fx(
IF( st->idchan == 0 && NE_16( element_mode, IVAS_CPE_MDCT ) )
{
Word16 input_fx_tmp[480];
-#ifdef NONBE_FIX_ISSUE_2206
Copy_Scale_sig( st->input_fx, input_fx_tmp, shr( input_frame, 1 ), negate( st->q_inp ) ); /*scaling from st->q_inp to q0*/
-#else
- Copy_Scale_sig( st->input_fx, input_fx_tmp, shr( input_frame, 1 ), negate( st->q_inp ) ); /*scaling from Q_inp_const to q0*/
-#endif
bw_detect_fx( st, input_fx_tmp, NULL, enerBuffer_fx, sf_energySum, ivas_format, 0, 0 );
}
@@ -1193,7 +977,6 @@ void pre_proc_front_ivas_fx(
move16();
}
-#ifdef FIX_BASOP_2517_CLICK_IN_OMASA_LTV
Word16 inp_local[L_INP_12k8];
Word16 Q_local;
Word16 offset = (Word16) ( inp_12k8_fx - old_inp_12k8_fx );
@@ -1210,9 +993,6 @@ void pre_proc_front_ivas_fx(
{
analy_lp_fx( inp_12k8_fx, L_FRAME, L_look, ener_fx, A_fx, epsP_h, epsP_l, lsp_new_fx, lsp_mid_fx, st->lsp_old1_fx, alw_pitch_lag_12k8, alw_voicing_fx, INT_FS_12k8, element_mode, i, *Q_new, Q_r );
}
-#else
- analy_lp_fx( inp_12k8_fx, L_FRAME, L_look, ener_fx, A_fx, epsP_h, epsP_l, lsp_new_fx, lsp_mid_fx, st->lsp_old1_fx, alw_pitch_lag_12k8, alw_voicing_fx, INT_FS_12k8, element_mode, i, *Q_new, Q_r );
-#endif
FOR( Word16 idx = 0; idx < M + 1; idx++ )
{
@@ -1496,21 +1276,6 @@ void pre_proc_front_ivas_fx(
smc_dec = ivas_smc_gmm_fx( st, hStereoClassif, localVAD_HE_SAD, extract_h( Etot_fx ), lsp_new_fx, *cor_map_sum_fx /*Q8*/, epsP_fx, PS_fx, non_staX_fx, *relE_fx, &high_lpn_flag, flag_spitch, Qfact_PS, *epsP_fx_q, st->hSpMusClas->past_PS_Q ); /* Q0 */
-#ifdef DEBUGGING
- if ( st->idchan == 0 )
- {
- if ( st->force == FORCE_SPEECH )
- {
- /* enforce speech */
- st->sp_aud_decision0 = 0;
- }
- else if ( st->force == FORCE_MUSIC )
- {
- /* enforce music */
- st->sp_aud_decision0 = 1;
- }
- }
-#endif
/*----------------------------------------------------------------*
* VAD energy updates
@@ -1603,49 +1368,14 @@ void pre_proc_front_ivas_fx(
IF( flag_16k_smc )
{
-#ifdef NONBE_FIX_ISSUE_2206
Word16 Q_old_inp_16k = sub( *Q_new, 1 );
move16();
Word16 Q_old_inp_12k8 = sub( *Q_new, 1 );
move16();
-#else
- Word16 Q_old_inp_16k = -1;
- move16();
-
- Scale_sig( st->old_inp_16k_fx, L_INP_MEM, sub( Q_old_inp_16k, sub( Q15, st->exp_old_inp_16k ) ) ); /* Q15 - Q_old_inp_16k */
- st->exp_old_inp_16k = sub( Q15, Q_old_inp_16k );
- move16();
-
- IF( st->hBWE_FD != NULL )
- {
- Scale_sig( st->hBWE_FD->L_old_wtda_swb_fx, L_FRAME48k, sub( -1, st->Q_old_wtda ) ); /* Q(-1) */
- st->Q_old_wtda = -1; // This reset needs to be looked into
- move16();
- }
- st->mem_preemph_enc = shl( st->mem_preemph_enc, sub( Q_old_inp_16k, sub( Q15, st->exp_mem_preemph_enc ) ) ); /* Q15 - Q_old_inp_16k */
- move16();
- st->exp_mem_preemph_enc = sub( Q15, Q_old_inp_16k );
- move16();
- Scale_sig( st->buf_wspeech_enc, L_FRAME16k + L_SUBFR + L_FRAME16k + L_NEXT_MAX_16k + 320, sub( Q_old_inp_16k, sub( Q15, st->exp_buf_wspeech_enc ) ) ); /* Q15 - Q_old_inp_16k */
- st->mem_wsp_enc = shl( st->mem_wsp_enc, sub( Q_old_inp_16k, sub( Q15, st->exp_buf_wspeech_enc ) ) ); // Q_old_inp_16k
- move16();
- st->exp_buf_wspeech_enc = sub( Q15, Q_old_inp_16k );
- move16();
- Scale_sig( st->buf_speech_enc_pe, L_PAST_MAX_32k + L_FRAME32k + L_NEXT_MAX_32k, sub( Q_old_inp_16k, sub( Q15, st->exp_buf_speech_enc_pe ) ) ); /* Q15 - Q_old_inp_16k */
- st->exp_buf_speech_enc_pe = sub( Q15, Q_old_inp_16k );
- move16();
- Scale_sig( st->buf_speech_enc, L_PAST_MAX_32k + L_FRAME32k + L_NEXT_MAX_32k, sub( Q_old_inp_16k, sub( Q15, st->exp_buf_speech_enc ) ) ); /* Q15 - Q_old_inp_16k */
- st->exp_buf_speech_enc = sub( Q15, Q_old_inp_16k );
- move16();
-
- Word16 Q_old_inp_12k8 = *Q_new;
- move16();
-#endif
/* Compute core-coder buffers at internal sampling rate */
ivas_compute_core_buffers_fx( st, NULL, old_inp_16k_fx, NULL, input_frame, IVAS_SCE /*last_element_mode*/, INT_FS_16k /*sr_core_tmp*/, ener_fx, A_fx, Aw_fx, epsP_fx, lsp_new_fx, lsp_mid_fx, Q_old_inp_16k, Q_r, Q_new );
-#ifdef NONBE_FIX_ISSUE_2206
IF( GT_16( *Q_new, Q_old_inp_12k8 ) )
{
scale_sig( old_inp_16k_fx, L_INP, sub( Q_old_inp_12k8, *Q_new ) );
@@ -1657,47 +1387,21 @@ void pre_proc_front_ivas_fx(
*Q_new = *Q_new;
}
move16();
-#endif
*epsP_fx_q = add( Q_r[0], 1 );
move16();
-#ifndef NONBE_FIX_ISSUE_2206
- st->mem_wsp_enc = shl( st->mem_wsp_enc, sub( 0, sub( Q15, st->exp_buf_wspeech_enc ) ) ); // Q0
- move16();
-#endif
*Q_new = add( *Q_new, Q_inp_const ); // actual Q_new
move16();
-#ifdef NONBE_FIX_ISSUE_2206
assert( ( *Q_new - 1 ) <= Q_old_inp_12k8 );
scale_sig( old_inp_12k8_fx, L_INP_12k8, sub( sub( *Q_new, 1 ), Q_old_inp_12k8 ) ); /* Q_new-1 */
smc_dec = ivas_acelp_tcx20_switching_fx( st, st->speech_enc, sub( Q15, st->exp_buf_speech_enc ), st->wspeech_enc, sub( Q15, st->exp_buf_wspeech_enc ), non_staX_fx, pitch_fr_fx, voicing_fr_fx, currFlatness_fx, lsp_mid_fx, stab_fac_fx, res_cod_SNR_M_fx, res_cod_SNR_M_fx_e, flag_16k_smc );
-#else
- Scale_sig( old_inp_12k8_fx, L_INP_12k8, sub( *Q_new, Q_old_inp_12k8 ) ); /* Q_new */
-
- Scale_sig( st->buf_speech_enc, L_PAST_MAX_32k + L_FRAME32k + L_NEXT_MAX_32k, sub( 0, sub( Q15, st->exp_buf_speech_enc ) ) ); /* Q0 */
- st->exp_buf_speech_enc = Q15;
- move16();
- Scale_sig( st->buf_wspeech_enc, L_FRAME16k + L_SUBFR + L_FRAME16k + L_NEXT_MAX_16k + 320, sub( 0, sub( Q15, st->exp_buf_wspeech_enc ) ) ); /* Q0 */
- st->exp_buf_wspeech_enc = Q15;
- move16();
- smc_dec = ivas_acelp_tcx20_switching_fx( st, st->speech_enc, 0, st->wspeech_enc, non_staX_fx, pitch_fr_fx, voicing_fr_fx, currFlatness_fx, lsp_mid_fx, stab_fac_fx, res_cod_SNR_M_fx, res_cod_SNR_M_fx_e, flag_16k_smc ); /* Q0 */
-#endif
}
ELSE
{
-#ifdef NONBE_FIX_ISSUE_2206
smc_dec = ivas_acelp_tcx20_switching_fx( st, inp_12k8_fx, *Q_new, wsp_fx, *q_old_wsp, non_staX_fx, pitch_fr_fx, voicing_fr_fx, currFlatness_fx, lsp_mid_fx, stab_fac_fx, res_cod_SNR_M_fx, res_cod_SNR_M_fx_e, flag_16k_smc ); /* Q0 */
-#else
- Scale_sig( old_wsp_fx, L_WSP, sub( *Q_new, *q_old_wsp ) ); /* Q_new */
- *q_old_wsp = *Q_new;
- move16();
- Q_wsp = *Q_new;
- move16();
- smc_dec = ivas_acelp_tcx20_switching_fx( st, inp_12k8_fx, *Q_new, wsp_fx, non_staX_fx, pitch_fr_fx, voicing_fr_fx, currFlatness_fx, lsp_mid_fx, stab_fac_fx, res_cod_SNR_M_fx, res_cod_SNR_M_fx_e, flag_16k_smc ); /* Q0 */
-#endif
}
}
/* Switch to ACELP for non-harmonic transient signals */
diff --git a/lib_enc/ivas_core_pre_proc_fx.c b/lib_enc/ivas_core_pre_proc_fx.c
index f315da04b8cc46d89150d9d7fd496f135da4563b..9fb107b5c5e72bbc9719b5a0b9f126a2de0ab768 100644
--- a/lib_enc/ivas_core_pre_proc_fx.c
+++ b/lib_enc/ivas_core_pre_proc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
@@ -47,31 +19,23 @@
*--------------------------------------------------------------------*/
void pre_proc_ivas_fx(
- Encoder_State *st, /* i/o: encoder state structure */
- const Word16 last_element_mode, /* i : last element mode Q0*/
- const Word32 element_brate, /* i : element bitrate Q0*/
- const Word32 last_element_brate, /* i : last element bitrate Q0*/
- const Word16 input_frame, /* i : frame length Q0*/
- Word16 old_inp_12k8_fx[], /* i/o: buffer of old input signal Q_new-1 */
-#ifdef NONBE_FIX_ISSUE_2206
- Word16 old_inp_16k_fx[], /* i/o: buffer of old input signal @ 16kHz Q_new */
-#else
- Word16 old_inp_16k_fx[], /* i/o: buffer of old input signal @ 16kHz Q_new-1 */
-#endif
- Word16 **inp_fx, /* o : ptr. to inp. signal in the current frame Q_new*/
- Word32 *ener_fx, /* o : residual energy from Levinson-Durbin epsP_fx_q*/
- Word16 A_fx[NB_SUBFR16k * ( M + 1 )], /* i/o: A(z) unquantized for the 4 subframes Q12*/
- Word16 Aw_fx[NB_SUBFR16k * ( M + 1 )], /* i/o: weighted A(z) unquantized for subframes Q14*/
- Word32 epsP_fx[M + 1], /* i : LP prediction errors epsP_fx_q*/
- Word16 *epsP_fx_q, /* i : LP prediction errors */
- Word16 lsp_new_fx[M], /* i/o: LSPs at the end of the frame Q15*/
- Word16 lsp_mid_fx[M], /* i/o: LSPs in the middle of the frame Q15*/
-#ifdef NONBE_FIX_ISSUE_2206
- Word16 *new_inp_resamp16k_fx, /* o : new input signal @16kHz, non pre-emphasised, used by the WB TBE/BWE q_new_inp_resamp16k_fx*/
- Word16 *q_new_inp_resamp16k_fx, /* o : Q value of new input signal @16kHz, non pre-emphasised, used by the WB TBE/BWE */
-#else
- Word16 *new_inp_resamp16k_fx, /* o : new input signal @16kHz, non pre-emphasised, used by the WB TBE/BWE Q_new-1*/
-#endif
+ Encoder_State *st, /* i/o: encoder state structure */
+ const Word16 last_element_mode, /* i : last element mode Q0*/
+ const Word32 element_brate, /* i : element bitrate Q0*/
+ const Word32 last_element_brate, /* i : last element bitrate Q0*/
+ const Word16 input_frame, /* i : frame length Q0*/
+ Word16 old_inp_12k8_fx[], /* i/o: buffer of old input signal Q_new-1 */
+ Word16 old_inp_16k_fx[], /* i/o: buffer of old input signal @ 16kHz Q_new */
+ Word16 **inp_fx, /* o : ptr. to inp. signal in the current frame Q_new*/
+ Word32 *ener_fx, /* o : residual energy from Levinson-Durbin epsP_fx_q*/
+ Word16 A_fx[NB_SUBFR16k * ( M + 1 )], /* i/o: A(z) unquantized for the 4 subframes Q12*/
+ Word16 Aw_fx[NB_SUBFR16k * ( M + 1 )], /* i/o: weighted A(z) unquantized for subframes Q14*/
+ Word32 epsP_fx[M + 1], /* i : LP prediction errors epsP_fx_q*/
+ Word16 *epsP_fx_q, /* i : LP prediction errors */
+ Word16 lsp_new_fx[M], /* i/o: LSPs at the end of the frame Q15*/
+ Word16 lsp_mid_fx[M], /* i/o: LSPs in the middle of the frame Q15*/
+ Word16 *new_inp_resamp16k_fx, /* o : new input signal @16kHz, non pre-emphasised, used by the WB TBE/BWE q_new_inp_resamp16k_fx*/
+ Word16 *q_new_inp_resamp16k_fx, /* o : Q value of new input signal @16kHz, non pre-emphasised, used by the WB TBE/BWE */
Word16 *Voicing_flag, /* o : voicing flag for HQ FEC Q0*/
Word16 old_wsp_fx[], /* i : weighted input signal buffer e_old_wsp*/
const Word16 e_old_wsp, /* i : Q value of weighted input signal buffer */
@@ -81,14 +45,10 @@ void pre_proc_ivas_fx(
const Word16 vad_hover_flag, /* i : VAD hangover flag Q0*/
const Word16 flag_16k_smc, /* i : flag to indicate if the OL SMC is run at 16 kHz Q0*/
Word32 enerBuffer_fx[CLDFB_NO_CHANNELS_MAX], /* i : energy buffer e_enerBuffer */
-#ifdef SIMPLIFY_CORE_ENC
- Word16 e_enerBuffer, /* i : Q value of energy buffer */
-#else
- const Word16 e_enerBuffer, /* i : Q value of energy buffer */
-#endif
- Word16 fft_buff_fx[2 * L_FFT], /* i : FFT buffer Qx*/
- const Word16 cor_map_sum_fx, /* i : speech/music clasif. parameter Q8*/
- Word16 *Q_new /* i/o: Q factor of speech buffers */
+ Word16 e_enerBuffer, /* i : Q value of energy buffer */
+ Word16 fft_buff_fx[2 * L_FFT], /* i : FFT buffer Qx*/
+ const Word16 cor_map_sum_fx, /* i : speech/music clasif. parameter Q8*/
+ Word16 *Q_new /* i/o: Q factor of speech buffers */
)
{
Word16 L_look, element_mode, lMemRecalc_12k8;
@@ -98,7 +58,6 @@ void pre_proc_ivas_fx(
push_wmops( "pre_proc" );
-#ifdef SIMPLIFY_CORE_ENC
/*----------------------------------------------------------------*
* Scaling of buffers
*----------------------------------------------------------------*/
@@ -117,7 +76,6 @@ void pre_proc_ivas_fx(
Scale_sig( fft_buff_fx, ( 2 * L_FFT ), -1 ); // To create 1 headroom for addition of magnitude square spectrum
// fft_buff_fx_exp = add(fft_buff_fx_exp,1);
-#endif
/*----------------------------------------------------------------*
* Initialization
@@ -554,18 +512,13 @@ void pre_proc_ivas_fx(
inp_16k_fx = old_inp_16k_fx + L_INP_MEM - L_look;
-#ifdef NONBE_FIX_ISSUE_2206
Word16 Q_old_inp_16k = sub( *Q_new, 1 );
-#else
- Word16 Q_old_inp_16k = -1;
-#endif
move16();
Word16 Q_r[2] = { 0 };
move16();
move16();
inp_16k_fx = old_inp_16k_fx + L_INP_MEM - L_look;
-#ifdef NONBE_FIX_ISSUE_2206
Word16 shift = norm_arr( st->old_inp_12k8_fx, L_INP_MEM );
scale_sig( st->old_inp_12k8_fx, L_INP_MEM, shift ); /* exp(st->exp_old_inp_12k8 - shift) */
st->exp_old_inp_12k8 = sub( st->exp_old_inp_12k8, shift );
@@ -581,74 +534,28 @@ void pre_proc_ivas_fx(
st->Q_old_wtda = add( st->Q_old_wtda, shift );
move16();
}
-#else
- Word16 shift = getScaleFactor16( st->old_inp_12k8_fx, L_INP_MEM );
- Scale_sig( st->old_inp_12k8_fx, L_INP_MEM, shift ); /* exp(st->exp_old_inp_12k8 - shift) */
- st->exp_old_inp_12k8 = sub( st->exp_old_inp_12k8, shift );
- move16();
-
- Scale_sig( st->old_inp_16k_fx, L_INP_MEM, sub( Q_old_inp_16k, sub( Q15, st->exp_old_inp_16k ) ) ); /* Q15 - st->exp_old_inp_16k */
- st->exp_old_inp_16k = sub( Q15, Q_old_inp_16k );
- move16();
-
- IF( st->hBWE_FD != NULL )
- {
- Scale_sig( st->hBWE_FD->L_old_wtda_swb_fx, L_FRAME48k, sub( -1, st->Q_old_wtda ) ); /* -1Q */
- st->Q_old_wtda = -1; // This reset needs to be looked into
- move16();
- }
-
- st->mem_preemph_enc = shl( st->mem_preemph_enc, sub( Q_old_inp_16k, sub( Q15, st->exp_mem_preemph_enc ) ) ); /* Q15 - Q_old_inp_16k */
- move16();
- st->exp_mem_preemph_enc = sub( Q15, Q_old_inp_16k );
- move16();
- Scale_sig( st->buf_speech_enc, L_PAST_MAX_32k + L_FRAME32k + L_NEXT_MAX_32k, sub( Q_old_inp_16k, sub( Q15, st->exp_buf_speech_enc ) ) ); /* Q15 - Q_old_inp_16k */
- st->exp_buf_speech_enc = sub( Q15, Q_old_inp_16k );
- move16();
- Scale_sig( st->buf_speech_enc_pe, L_PAST_MAX_32k + L_FRAME32k + L_NEXT_MAX_32k, sub( Q_old_inp_16k, sub( Q15, st->exp_buf_speech_enc_pe ) ) ); /* Q15 - Q_old_inp_16k */
- st->exp_buf_speech_enc_pe = sub( Q15, Q_old_inp_16k );
- move16();
- Scale_sig( st->buf_wspeech_enc, L_FRAME16k + L_SUBFR + L_FRAME16k + L_NEXT_MAX_16k + 320, sub( Q_old_inp_16k, sub( Q15, st->exp_buf_wspeech_enc ) ) ); /* Q15 - Q_old_inp_16k */
- st->mem_wsp_enc = shl( st->mem_wsp_enc, sub( Q_old_inp_16k, sub( Q15, st->exp_buf_wspeech_enc ) ) ); // Q_old_inp_16k
- move16();
- st->exp_buf_wspeech_enc = sub( Q15, Q_old_inp_16k );
- move16();
-#endif
IF( !flag_16k_smc )
{
Word16 Q_inp_12k8 = *Q_new;
move16();
-#ifdef NONBE_FIX_ISSUE_2206
Word16 Q_inp_16k = *Q_new;
move16();
-#else
- Word16 Q_inp_16k;
-#endif
ivas_compute_core_buffers_fx( st, &inp_16k_fx, old_inp_16k_fx, new_inp_resamp16k_fx, input_frame, last_element_mode, sr_core_tmp, ener_fx, A_fx, Aw_fx, epsP_fx, lsp_new_fx, lsp_mid_fx, Q_old_inp_16k, Q_r, &Q_inp_16k );
IF( GT_16( Q_inp_16k, Q_inp_12k8 ) )
{
-#ifdef NONBE_FIX_ISSUE_2206
scale_sig( old_inp_16k_fx, L_INP, sub( Q_inp_12k8, Q_inp_16k ) );
-#else
- Scale_sig( old_inp_16k_fx, L_INP, sub( Q_inp_12k8, Q_inp_16k ) );
-#endif
*Q_new = Q_inp_12k8;
}
ELSE
{
-#ifdef NONBE_FIX_ISSUE_2206
scale_sig( old_inp_12k8_fx, L_INP_12k8, sub( Q_inp_16k, Q_inp_12k8 ) );
-#else
- Scale_sig( old_inp_12k8_fx, L_INP_12k8, sub( Q_inp_16k, Q_inp_12k8 ) );
-#endif
*Q_new = Q_inp_16k;
}
move16();
-#ifdef NONBE_FIX_ISSUE_2206
IF( ( EQ_32( sr_core_tmp, INT_FS_16k ) && NE_16( element_mode, IVAS_CPE_MDCT ) ) || ( GT_32( sr_core_tmp, INT_FS_16k ) ) )
{
shift = norm_arr( new_inp_resamp16k_fx, L_FRAME16k );
@@ -659,7 +566,6 @@ void pre_proc_ivas_fx(
move16();
}
-#endif
test();
IF( EQ_16( st->L_frame, L_FRAME16k ) && NE_16( element_mode, IVAS_CPE_MDCT ) )
{
@@ -672,7 +578,6 @@ void pre_proc_ivas_fx(
IF( !( EQ_16( st->L_frame, L_FRAME16k ) && NE_16( element_mode, IVAS_CPE_MDCT ) ) )
{
/* update signal buffers */
-#ifdef NONBE_FIX_ISSUE_2206
Word16 tmp;
tmp = add( norm_arr( new_inp_12k8_fx, L_FRAME ), sub( *Q_new, 1 ) );
tmp = s_min( tmp, add( norm_arr( st->buf_speech_enc_pe, st->L_frame ), sub( Q15, st->exp_buf_speech_enc_pe ) ) );
@@ -682,9 +587,6 @@ void pre_proc_ivas_fx(
scale_sig( st->buf_speech_enc_pe + st->L_frame + L_FRAME, L_PAST_MAX_32k + L_FRAME32k + L_NEXT_MAX_32k - st->L_frame - L_FRAME, sub( tmp, sub( Q15, st->exp_buf_speech_enc_pe ) ) );
Copy_Scale_sig_nosat( new_inp_12k8_fx, st->buf_speech_enc_pe + st->L_frame, L_FRAME, sub( tmp, sub( *Q_new, 1 ) ) );
st->exp_buf_speech_enc_pe = sub( Q15, tmp );
-#else
- Copy_Scale_sig( new_inp_12k8_fx, st->buf_speech_enc_pe + st->L_frame, L_FRAME, sub( sub( Q15, st->exp_buf_speech_enc_pe ), sub( *Q_new, Q1 ) ) );
-#endif
Copy( st->buf_speech_enc + L_FRAME32k, st->buf_speech_enc + st->L_frame, L_FRAME );
test();
@@ -703,14 +605,9 @@ void pre_proc_ivas_fx(
IF( st->tcxonly == 0 )
{
-#ifdef NONBE_FIX_ISSUE_2206
// L_FRAME16k + L_SUBFR + L_FRAME16k + L_NEXT_MAX_16k + 320 );
tmp = add( norm_arr( wsp_fx, L_FRAME + L_LOOK_12k8 ), sub( Q15, e_old_wsp ) );
-#ifdef NONBE_FIX_ISSUE_2569
tmp = s_min( tmp, add( norm_arr( &st->mem_wsp_enc, 1 ), sub( Q15, st->exp_buf_wspeech_enc ) ) );
-#else
- tmp = s_min( tmp, add( norm_s( st->mem_wsp_enc ), sub( Q15, st->exp_buf_wspeech_enc ) ) );
-#endif
tmp = s_min( tmp, add( norm_arr( st->buf_wspeech_enc, (Word16) ( st->wspeech_enc - st->buf_wspeech_enc ) ), sub( Q15, st->exp_buf_wspeech_enc ) ) );
tmp = s_min( tmp, add( norm_arr( st->wspeech_enc + L_FRAME + L_LOOK_12k8, /* L_NEXT_MAX_16k + */ 320 ), sub( Q15, st->exp_buf_wspeech_enc ) ) );
tmp = s_min( Q15, tmp );
@@ -720,21 +617,14 @@ void pre_proc_ivas_fx(
st->mem_wsp_enc = shl( st->mem_wsp_enc, sub( st->exp_buf_wspeech_enc, sub( Q15, tmp ) ) );
st->exp_buf_wspeech_enc = sub( Q15, tmp );
move16();
-#else
- Copy( wsp_fx, st->wspeech_enc, L_FRAME + L_LOOK_12k8 );
-#endif
}
}
IF( flag_16k_smc )
{
-#ifdef NONBE_FIX_ISSUE_2206
*q_new_inp_resamp16k_fx = sub( Q15, st->exp_buf_speech_enc );
move16();
Copy( st->buf_speech_enc + L_FRAME16k, new_inp_resamp16k_fx, L_FRAME16k ); /* q_new_inp_resamp16k_fx */
-#else
- Copy( st->buf_speech_enc + L_FRAME16k, new_inp_resamp16k_fx, L_FRAME16k ); /* Q_old_inp_16k */
-#endif
}
/*-----------------------------------------------------------------*
@@ -793,13 +683,9 @@ void pre_proc_ivas_fx(
*--------------------------------------------------------------------*/
void ivas_compute_core_buffers_fx(
- Encoder_State *st, /* i/o: encoder state structure */
- Word16 **inp16k_out_fx, /* o : ptr. to inp. signal in the current frame Q_new-1*/
-#ifdef NONBE_FIX_ISSUE_2206
- Word16 *old_inp_16k_fx, /* i/o: buffer of old input signal @ 16kHz in Q_old_inp_16k = Q_new, out Q_new-1 */
-#else
- Word16 *old_inp_16k_fx, /* i/o: buffer of old input signal @ 16kHz Q_new-1*/
-#endif
+ Encoder_State *st, /* i/o: encoder state structure */
+ Word16 **inp16k_out_fx, /* o : ptr. to inp. signal in the current frame Q_new-1*/
+ Word16 *old_inp_16k_fx, /* i/o: buffer of old input signal @ 16kHz in Q_old_inp_16k = Q_new, out Q_new-1 */
Word16 new_inp_resamp16k_out_fx[], /* o : new input signal @16kHz, non pre-emphasised, used by the WB TBE/BWE Q_old_inp_16k*/
const Word16 input_frame, /* i : frame length Q0*/
const Word16 last_element_mode, /* i : last element mode Q0*/
@@ -826,33 +712,16 @@ void ivas_compute_core_buffers_fx(
Word16 Q_tmp, mem_decim16k_size, size_modified;
Word16 epsP_h[M + 1];
Word16 epsP_l[M + 1];
-#ifdef NONBE_FIX_ISSUE_2206
Word16 i, shift;
-#else
- Word16 i, shift, Q_min;
-#endif
-#ifdef NONBE_FIX_ISSUE_2518
Word16 preemp_len;
Word16 *preemp_start_idx = NULL;
Word32 sig_out[STEREO_DFT_OVL_16k + L_FRAME16k + L_FILT16k];
-#else
- Word16 preemp_len, inp_max;
- Word16 *preemp_start_idx = NULL;
- Word32 sig_out[STEREO_DFT_OVL_16k + L_FRAME16k + L_FILT16k], max_32;
-#endif
-#ifdef NONBE_FIX_ISSUE_2206
assert( Q_old_inp_16k == ( *Q_new - 1 ) );
Copy_Scale_sig_nosat( st->input_fx - input_frame, input_buf_fx, input_frame, sub( Q_old_inp_16k, st->q_old_inp ) );
Copy_Scale_sig_nosat( st->input_fx, input_buf_fx + input_frame, input_frame, sub( Q_old_inp_16k, st->q_inp ) );
signal_in_fx = &input_buf_fx[input_frame]; /* Q_old_inp_16k */
-#else
- Copy_Scale_sig( st->input_fx - input_frame, input_buf_fx, input_frame, sub( -1, st->q_old_inp ) );
- Copy_Scale_sig( st->input_fx, input_buf_fx + input_frame, input_frame, sub( -1, st->q_inp ) );
-
- signal_in_fx = &input_buf_fx[input_frame]; /* st->q_inp */
-#endif
input_Fs = st->input_Fs; /* Q0 */
move32();
@@ -900,27 +769,15 @@ void ivas_compute_core_buffers_fx(
IF( EQ_16( element_mode, IVAS_CPE_DFT ) )
{
-#ifdef NONBE_FIX_ISSUE_2206
Copy_Scale_sig( st->old_inp_16k_fx, old_inp_16k_fx, L_INP_MEM - STEREO_DFT_OVL_16k, sub( Q_old_inp_16k, sub( Q15, st->exp_old_inp_16k ) ) ); /* Q_old_inp_16k */
-#else
- Copy( st->old_inp_16k_fx, old_inp_16k_fx, L_INP_MEM - STEREO_DFT_OVL_16k ); /* Q_new - 1 */
-#endif
}
ELSE IF( EQ_16( element_mode, IVAS_CPE_TD ) )
{
-#ifdef NONBE_FIX_ISSUE_2206
Copy_Scale_sig( st->old_inp_16k_fx, old_inp_16k_fx, L_INP_MEM - L_MEM_RECALC_16K - L_FILT16k, sub( Q_old_inp_16k, sub( Q15, st->exp_old_inp_16k ) ) ); /* Q_old_inp_16k */
-#else
- Copy( st->old_inp_16k_fx, old_inp_16k_fx, L_INP_MEM - L_MEM_RECALC_16K - L_FILT16k ); /* Q_new - 1 */
-#endif
}
ELSE
{
-#ifdef NONBE_FIX_ISSUE_2206
Copy_Scale_sig_nosat( st->old_inp_16k_fx, old_inp_16k_fx, L_INP_MEM - L_FILT16k, sub( Q_old_inp_16k, sub( Q15, st->exp_old_inp_16k ) ) ); /* Q_old_inp_16k */
-#else
- Copy( st->old_inp_16k_fx, old_inp_16k_fx, L_INP_MEM - L_FILT16k ); /* Q_new - 1 */
-#endif
}
/*---------------------------------------------------------------*
@@ -935,7 +792,6 @@ void ivas_compute_core_buffers_fx(
/* no resampling needed, only delay adjustment to account for the FIR resampling delay */
delay = NS2SA_FX2( input_Fs, DELAY_FIR_RESAMPL_NS );
move16();
-#ifdef NONBE_FIX_ISSUE_2206
Copy_Scale_sig_nosat( st->mem_decim16k_fx + delay, new_inp_16k_fx, delay, sub( Q_old_inp_16k, st->q_mem_decim16k_fx ) ); /* Q_old_inp_16k */
Copy( signal_in_fx, new_inp_16k_fx + delay, input_frame ); /* Q_old_inp_16k */
// Copy_Scale_sig( signal_in_fx + input_frame - shl( delay, 1 ), st->mem_decim16k_fx, shl( delay, 1 ), sub( -1, Q_old_inp_16k ) ); /* Q(-1) */
@@ -944,36 +800,21 @@ void ivas_compute_core_buffers_fx(
scale_sig( st->mem_decim16k_fx, shl( delay, 1 ), Q_tmp );
st->q_mem_decim16k_fx = add( Q_tmp, Q_old_inp_16k );
move16();
-#else
- Copy( st->mem_decim16k_fx + delay, new_inp_16k_fx, delay );
- Copy( signal_in_fx, new_inp_16k_fx + delay, input_frame ); /* st->q_inp */
- Copy( signal_in_fx + input_frame - shl( delay, 1 ), st->mem_decim16k_fx, shl( delay, 1 ) ); /* st->q_inp */
-#endif
}
ELSE IF( EQ_32( input_Fs, 32000 ) || EQ_32( input_Fs, 48000 ) )
{
-#ifdef NONBE_FIX_ISSUE_2206
- scale_sig( st->mem_decim16k_fx, 2 * L_FILT_MAX, sub( Q_old_inp_16k, st->q_mem_decim16k_fx ) ); /* Q_old_inp_16k */
-#endif
+ scale_sig( st->mem_decim16k_fx, 2 * L_FILT_MAX, sub( Q_old_inp_16k, st->q_mem_decim16k_fx ) ); /* Q_old_inp_16k */
size_modified = modify_Fs_fx( signal_in_fx, input_frame, input_Fs, new_inp_16k_fx, sr_core, st->mem_decim16k_fx, 0, &Q_tmp, &mem_decim16k_size ); /* Q0 */
-#ifdef NONBE_FIX_ISSUE_2206
- scale_sig( new_inp_16k_fx, size_modified, negate( Q_tmp ) ); /* scaling back to Q_old_inp_16k */
-#else
- Scale_sig( new_inp_16k_fx, size_modified, negate( Q_tmp ) ); /* scaling back to Q_old_inp_16k */
-#endif
+ scale_sig( new_inp_16k_fx, size_modified, negate( Q_tmp ) ); /* scaling back to Q_old_inp_16k */
Copy( st->mem_decim16k_fx, mem_decim16k_dummy_fx, 2 * L_FILT_MAX ); /* Q(-1) */
set16_fx( temp1F_icatdmResampBuf_fx, 0, L_FILT_MAX );
size_modified = modify_Fs_fx( temp1F_icatdmResampBuf_fx, NS2SA_FX2( input_Fs, DELAY_FIR_RESAMPL_NS ), input_Fs, new_inp_16k_fx + NS2SA_FX2( sr_core, FRAME_SIZE_NS ), sr_core, mem_decim16k_dummy_fx, 0, &Q_tmp, &mem_decim16k_size ); /* Q0 */
-#ifdef NONBE_FIX_ISSUE_2206
- scale_sig( new_inp_16k_fx + NS2SA_FX2( sr_core, FRAME_SIZE_NS ), size_modified, negate( Q_tmp ) ); /* scaling back to Q_old_inp_16k */
+ scale_sig( new_inp_16k_fx + NS2SA_FX2( sr_core, FRAME_SIZE_NS ), size_modified, negate( Q_tmp ) ); /* scaling back to Q_old_inp_16k */
Q_tmp = norm_arr( st->mem_decim16k_fx, mem_decim16k_size );
scale_sig( st->mem_decim16k_fx, mem_decim16k_size, Q_tmp );
st->q_mem_decim16k_fx = add( Q_tmp, Q_old_inp_16k );
move16();
-#else
- Scale_sig( new_inp_16k_fx + NS2SA_FX2( sr_core, FRAME_SIZE_NS ), size_modified, negate( Q_tmp ) ); /* scaling back to Q_old_inp_16k */
-#endif
}
}
ELSE IF( EQ_16( element_mode, IVAS_CPE_TD ) )
@@ -984,7 +825,6 @@ void ivas_compute_core_buffers_fx(
/* no resampling needed, only delay adjustment to account for the FIR resampling delay */
delay = NS2SA_FX2( input_Fs, DELAY_FIR_RESAMPL_NS );
move16();
-#ifdef NONBE_FIX_ISSUE_2206
Copy_Scale_sig_nosat( st->mem_decim16k_fx + delay, new_inp_16k_fx - add( lMemRecalc, sub( delay, L_FILT16k ) ), delay, sub( Q_old_inp_16k, st->q_mem_decim16k_fx ) ); /* Q_old_inp_16k */
Copy( signal_in_fx - lMemRecalc, new_inp_16k_fx - sub( lMemRecalc, L_FILT16k ), add( input_frame, lMemRecalc ) ); /* Q_old_inp_16k */
// Copy_Scale_sig( signal_in_fx + sub( sub( input_frame, lMemRecalc ), shl( delay, 1 ) ), st->mem_decim16k_fx, shl( delay, 1 ), sub( -1, Q_old_inp_16k ) ); /* Q(-1) */
@@ -993,17 +833,10 @@ void ivas_compute_core_buffers_fx(
scale_sig( st->mem_decim16k_fx, shl( delay, 1 ), Q_tmp );
st->q_mem_decim16k_fx = add( Q_tmp, Q_old_inp_16k );
move16();
-#else
- Copy( st->mem_decim16k_fx + delay, new_inp_16k_fx - add( lMemRecalc, sub( delay, L_FILT16k ) ), delay ); /* Q(-1) */
- Copy( signal_in_fx - lMemRecalc, new_inp_16k_fx - sub( lMemRecalc, L_FILT16k ), add( input_frame, lMemRecalc ) ); /* st->q_inp */
- Copy( signal_in_fx + sub( sub( input_frame, lMemRecalc ), shl( delay, 1 ) ), st->mem_decim16k_fx, shl( delay, 1 ) ); /* st->q_inp */
-#endif
}
ELSE IF( EQ_32( input_Fs, 32000 ) || EQ_32( input_Fs, 48000 ) )
{
-#ifdef NONBE_FIX_ISSUE_2206
scale_sig( st->mem_decim16k_fx, 2 * L_FILT_MAX, sub( Q_old_inp_16k, st->q_mem_decim16k_fx ) ); /* Q_old_inp_16k */
-#endif
/* reconstruct past segment of input signal when switching from MDCT stereo */
IF( EQ_16( last_element_mode, IVAS_CPE_MDCT ) /*|| st->idchan == 1*/ )
{
@@ -1014,51 +847,32 @@ void ivas_compute_core_buffers_fx(
Copy( signal_in_fx - lMemRecalc - length_inp - 2 * NS2SA_FX2( input_Fs, DELAY_FIR_RESAMPL_NS ), st->mem_decim16k_fx, 2 * NS2SA_FX2( input_Fs, DELAY_FIR_RESAMPL_NS ) ); /* st->q_inp */
size_modified = modify_Fs_fx( signal_in_fx - lMemRecalc - length_inp, length_inp, input_Fs, new_inp_16k_fx - lMemRecalc_16k - length_16k, sr_core, st->mem_decim16k_fx, 0, &Q_tmp, &mem_decim16k_size ); /* Q0 */
-#ifdef NONBE_FIX_ISSUE_2206
- scale_sig( new_inp_16k_fx - lMemRecalc_16k - length_16k, size_modified, negate( Q_tmp ) ); /* scaling back to Q_old_inp_16k */
-#else
- Scale_sig( new_inp_16k_fx - lMemRecalc_16k - length_16k, size_modified, negate( Q_tmp ) ); /* scaling back to Q_old_inp_16k */
-#endif
+ scale_sig( new_inp_16k_fx - lMemRecalc_16k - length_16k, size_modified, negate( Q_tmp ) ); /* scaling back to Q_old_inp_16k */
}
size_modified = modify_Fs_fx( signal_in_fx - lMemRecalc, input_frame, input_Fs, new_inp_16k_fx - lMemRecalc_16k, sr_core, st->mem_decim16k_fx, 0, &Q_tmp, &mem_decim16k_size ); /* Q0 */
-#ifdef NONBE_FIX_ISSUE_2206
- scale_sig( new_inp_16k_fx - lMemRecalc_16k, size_modified, negate( Q_tmp ) ); /* scaling back to Q_old_inp_16k */
-#else
- Scale_sig( new_inp_16k_fx - lMemRecalc_16k, size_modified, negate( Q_tmp ) ); /* scaling back to Q_old_inp_16k */
-#endif
+ scale_sig( new_inp_16k_fx - lMemRecalc_16k, size_modified, negate( Q_tmp ) ); /* scaling back to Q_old_inp_16k */
Copy( st->mem_decim16k_fx, mem_decim16k_dummy_fx, 2 * L_FILT_MAX );
-#ifdef NONBE_FIX_ISSUE_2206
// Scale_sig( st->mem_decim16k_fx, mem_decim16k_size, sub( -1, Q_old_inp_16k ) ); /* Q(-1) */
Q_tmp = norm_arr( st->mem_decim16k_fx, mem_decim16k_size );
scale_sig( st->mem_decim16k_fx, mem_decim16k_size, Q_tmp );
st->q_mem_decim16k_fx = add( Q_tmp, Q_old_inp_16k );
move16();
-#endif
IF( lMemRecalc > 0 )
{
size_modified = modify_Fs_fx( signal_in_fx - lMemRecalc + input_frame, lMemRecalc, input_Fs, new_inp_16k_fx + NS2SA_FX2( sr_core, FRAME_SIZE_NS ) - lMemRecalc_16k, sr_core, mem_decim16k_dummy_fx, 0, &Q_tmp, &mem_decim16k_size ); /* Q0 */
-#ifdef NONBE_FIX_ISSUE_2206
- scale_sig( new_inp_16k_fx + NS2SA_FX2( sr_core, FRAME_SIZE_NS ) - lMemRecalc_16k, size_modified, negate( Q_tmp ) ); /* scaling back to Q_old_inp_16k */
-#else
- Scale_sig( new_inp_16k_fx + NS2SA_FX2( sr_core, FRAME_SIZE_NS ) - lMemRecalc_16k, size_modified, negate( Q_tmp ) ); /* scaling back to Q_old_inp_16k */
-#endif
+ scale_sig( new_inp_16k_fx + NS2SA_FX2( sr_core, FRAME_SIZE_NS ) - lMemRecalc_16k, size_modified, negate( Q_tmp ) ); /* scaling back to Q_old_inp_16k */
}
set16_fx( temp1F_icatdmResampBuf_fx, 0, L_FILT_MAX );
size_modified = modify_Fs_fx( temp1F_icatdmResampBuf_fx, NS2SA_FX2( input_Fs, DELAY_FIR_RESAMPL_NS ), input_Fs, new_inp_16k_fx + NS2SA_FX2( sr_core, FRAME_SIZE_NS ), sr_core, mem_decim16k_dummy_fx, 0, &Q_tmp, &mem_decim16k_size ); /* Q0 */
-#ifdef NONBE_FIX_ISSUE_2206
- scale_sig( new_inp_16k_fx + NS2SA_FX2( sr_core, FRAME_SIZE_NS ), size_modified, negate( Q_tmp ) ); /* scaling back to Q_old_inp_16k */
-#else
- Scale_sig( new_inp_16k_fx + NS2SA_FX2( sr_core, FRAME_SIZE_NS ), size_modified, negate( Q_tmp ) ); /* scaling back to Q_old_inp_16k */
-#endif
+ scale_sig( new_inp_16k_fx + NS2SA_FX2( sr_core, FRAME_SIZE_NS ), size_modified, negate( Q_tmp ) ); /* scaling back to Q_old_inp_16k */
}
}
ELSE IF( st->idchan == 0 )
{
/* update the FIR resampling filter memory, needed for switching to time-domain (FIR) resampling */
-#ifdef NONBE_FIX_ISSUE_2206
// Copy_Scale_sig( signal_in_fx + input_frame - NS2SA_FX2( input_Fs, L_MEM_RECALC_NS ) - 2 * NS2SA_FX2( input_Fs, DELAY_FIR_RESAMPL_NS ), st->mem_decim16k_fx, 2 * NS2SA_FX2( input_Fs, DELAY_FIR_RESAMPL_NS ), sub( -1, Q_old_inp_16k ) ); /* Q(-1) */
mem_decim16k_size = 2 * NS2SA_FX2( input_Fs, DELAY_FIR_RESAMPL_NS );
move16();
@@ -1067,9 +881,6 @@ void ivas_compute_core_buffers_fx(
scale_sig( st->mem_decim16k_fx, mem_decim16k_size, Q_tmp );
st->q_mem_decim16k_fx = add( Q_tmp, Q_old_inp_16k );
move16();
-#else
- Copy( signal_in_fx + input_frame - NS2SA_FX2( input_Fs, L_MEM_RECALC_NS ) - 2 * NS2SA_FX2( input_Fs, DELAY_FIR_RESAMPL_NS ), st->mem_decim16k_fx, 2 * NS2SA_FX2( input_Fs, DELAY_FIR_RESAMPL_NS ) ); /* st->q_inp */
-#endif
}
/*------------------------------------------------*
@@ -1089,7 +900,6 @@ void ivas_compute_core_buffers_fx(
IF( EQ_16( st->bwidth, WB ) )
{
-#ifdef NONBE_FIX_ISSUE_2206
// Word16 wtda_q = s_min( st->Q_old_wtda, Q_old_inp_16k );
Word16 wtda_q = s_min( add( st->Q_old_wtda, norm_arr( st->hBWE_FD->L_old_wtda_swb_fx, L_FRAME48k ) ), Q_old_inp_16k );
Copy_Scale_sig_nosat( new_inp_16k_fx - delay, st->hBWE_FD->old_input_wb_fx, delay, sub( -1, Q_old_inp_16k ) ); /* Scaling to Q(-1) */
@@ -1097,13 +907,6 @@ void ivas_compute_core_buffers_fx(
Copy_Scale_sig_nosat( new_inp_16k_fx - STEREO_DFT_OVL_16k, st->hBWE_FD->L_old_wtda_swb_fx + L_FRAME16k - STEREO_DFT_OVL_16k + delay, sub( STEREO_DFT_OVL_16k, delay ), sub( wtda_q, Q_old_inp_16k ) );
st->Q_old_wtda = wtda_q;
move16();
-#else
- Copy_Scale_sig( new_inp_16k_fx - delay, st->hBWE_FD->old_input_wb_fx, delay, negate( add( Q_old_inp_16k, 1 ) ) ); /* Scaling to Q(-1) */
- scale_sig( st->hBWE_FD->L_old_wtda_swb_fx, L_FRAME48k, sub( Q_old_inp_16k, st->Q_old_wtda ) ); // st->Q_old_wtda->Q_old_inp_16k
- Copy( new_inp_16k_fx - STEREO_DFT_OVL_16k, st->hBWE_FD->L_old_wtda_swb_fx + L_FRAME16k - STEREO_DFT_OVL_16k + delay, sub( STEREO_DFT_OVL_16k, delay ) );
- st->Q_old_wtda = Q_old_inp_16k;
- move16();
-#endif
}
}
ELSE IF( EQ_16( element_mode, IVAS_CPE_TD ) )
@@ -1114,7 +917,6 @@ void ivas_compute_core_buffers_fx(
test();
IF( EQ_16( st->bwidth, WB ) && st->hBWE_FD != NULL )
{
-#ifdef NONBE_FIX_ISSUE_2206
// Word16 wtda_q = s_min( st->Q_old_wtda, Q_old_inp_16k );
Word16 wtda_q = s_min( add( st->Q_old_wtda, norm_arr( st->hBWE_FD->L_old_wtda_swb_fx, L_FRAME48k ) ), Q_old_inp_16k );
Copy_Scale_sig_nosat( new_inp_16k_fx + L_FILT16k - delay, st->hBWE_FD->old_input_wb_fx, delay, sub( -1, Q_old_inp_16k ) ); /* Scaling to Q(-1) */
@@ -1122,13 +924,6 @@ void ivas_compute_core_buffers_fx(
Copy_Scale_sig_nosat( new_inp_16k_fx - L_MEM_RECALC_16K, st->hBWE_FD->L_old_wtda_swb_fx + L_FRAME16k - L_MEM_RECALC_16K - L_FILT16k + delay, sub( L_MEM_RECALC_16K + L_FILT16k, delay ), sub( wtda_q, Q_old_inp_16k ) );
st->Q_old_wtda = wtda_q;
move16();
-#else
- Copy_Scale_sig( new_inp_16k_fx + L_FILT16k - delay, st->hBWE_FD->old_input_wb_fx, delay, negate( add( Q_old_inp_16k, 1 ) ) ); /* Scaling to Q(-1) */
- scale_sig( st->hBWE_FD->L_old_wtda_swb_fx, L_FRAME48k, sub( Q_old_inp_16k, st->Q_old_wtda ) ); // st->Q_old_wtda->Q_old_inp_16k
- Copy( new_inp_16k_fx - L_MEM_RECALC_16K, st->hBWE_FD->L_old_wtda_swb_fx + L_FRAME16k - L_MEM_RECALC_16K - L_FILT16k + delay, sub( L_MEM_RECALC_16K + L_FILT16k, delay ) );
- st->Q_old_wtda = Q_old_inp_16k;
- move16();
-#endif
}
}
ELSE IF( element_mode == IVAS_SCE )
@@ -1158,19 +953,11 @@ void ivas_compute_core_buffers_fx(
test();
if ( st->tcxonly == 0 && !( ( EQ_16( element_mode, IVAS_CPE_TD ) && EQ_16( st->idchan, 1 ) ) || EQ_16( element_mode, IVAS_CPE_MDCT ) ) )
{
-#ifdef NONBE_FIX_ISSUE_2206
st->mem_preemph_enc = new_inp_16k_fx[L_frame_tmp - 1]; /* Q_old_inp_16k */
st->exp_mem_preemph_enc = sub( Q15, Q_old_inp_16k );
-#else
- st->mem_preemph_enc = new_inp_16k_fx[L_frame_tmp - 1]; /* Q(-1) */
-#endif
move16();
}
-#ifndef NONBE_FIX_ISSUE_2206
- *Q_new = 0;
- move16();
-#endif
test();
IF( EQ_32( sr_core, INT_FS_16k ) && NE_16( element_mode, IVAS_CPE_MDCT ) )
@@ -1180,24 +967,15 @@ void ivas_compute_core_buffers_fx(
IF( EQ_16( element_mode, IVAS_CPE_DFT ) )
{
-#ifdef NONBE_FIX_ISSUE_2206
Copy_Scale_sig( new_inp_16k_fx - STEREO_DFT_OVL_16k + L_FRAME16k, st->inp_16k_mem_stereo_sw_fx, STEREO_DFT_OVL_16k - L_MEM_RECALC_16K - L_FILT16k, sub( -1, Q_old_inp_16k ) ); /* update for TD/DFT stereo switching Q(-1) */
-#else
- Copy( new_inp_16k_fx - STEREO_DFT_OVL_16k + L_FRAME16k, st->inp_16k_mem_stereo_sw_fx, STEREO_DFT_OVL_16k - L_MEM_RECALC_16K - L_FILT16k ); /* update for TD/DFT stereo switching Q(-1) */
-#endif
st->mem_preemph16k_fx = st->mem_preemph16k_DFT_fx; /* Q(-1) */
move16();
-#ifdef NONBE_FIX_ISSUE_2206
st->mem_preemph16k_DFT_fx = shl( old_inp_16k_fx[L_INP_MEM - STEREO_DFT_OVL_16k + L_FRAME16k - 1], sub( -1, Q_old_inp_16k ) ); /* Q_old_inp_16k -> Q(-1) */
-#else
- st->mem_preemph16k_DFT_fx = old_inp_16k_fx[L_INP_MEM - STEREO_DFT_OVL_16k + L_FRAME16k - 1]; /* Q_new - 1 */
-#endif
move16();
IF( EQ_16( st->L_frame, L_FRAME16k ) )
{
-#ifdef NONBE_FIX_ISSUE_2206
Word16 buf_speech_enc_q;
buf_speech_enc_q = s_min( sub( Q15, st->exp_buf_speech_enc ), Q_old_inp_16k );
@@ -1207,21 +985,14 @@ void ivas_compute_core_buffers_fx(
scale_sig( st->buf_speech_enc + L_FRAME16k + L_FRAME16k, L_PAST_MAX_32k + L_NEXT_MAX_32k, sub( buf_speech_enc_q, sub( Q15, st->exp_buf_speech_enc ) ) );
st->exp_buf_speech_enc = sub( Q15, buf_speech_enc_q );
move16();
-#else
- Copy( new_inp_16k_fx - STEREO_DFT_OVL_16k, st->buf_speech_enc + L_FRAME16k - STEREO_DFT_OVL_16k, L_FRAME16k + STEREO_DFT_OVL_16k ); /* Q(-1) */
-#endif
}
-#ifdef NONBE_FIX_ISSUE_2206
st->mem_preemph16k_fx = shl( st->mem_preemph16k_fx, sub( Q_old_inp_16k, -1 ) );
move16();
-#endif
preemph_copy_32fx2( new_inp_16k_fx - STEREO_DFT_OVL_16k, sig_out, PREEMPH_FAC_16k, L_FRAME16k, &( st->mem_preemph16k_fx ) ); /* Q(-1) */
tmp_fx = st->mem_preemph16k_fx;
move16();
-#ifdef NONBE_FIX_ISSUE_2206
st->mem_preemph16k_fx = shl( tmp_fx, sub( -1, Q_old_inp_16k ) );
move16();
-#endif
preemph_copy_32fx2( new_inp_16k_fx - STEREO_DFT_OVL_16k + L_FRAME16k, sig_out + L_FRAME16k, PREEMPH_FAC_16k, STEREO_DFT_OVL_16k, &tmp_fx ); /* Q(-1) */
preemp_start_idx = new_inp_16k_fx - STEREO_DFT_OVL_16k;
@@ -1231,33 +1002,21 @@ void ivas_compute_core_buffers_fx(
}
ELSE IF( EQ_16( st->element_mode, IVAS_CPE_TD ) )
{
-#ifdef NONBE_FIX_ISSUE_2206
st->mem_preemph16k_fx = shl( st->mem_preemph16k_fx, sub( Q_old_inp_16k, -1 ) );
move16();
-#endif
IF( EQ_16( last_element_mode, IVAS_CPE_DFT ) )
{
-#ifdef NONBE_FIX_ISSUE_2206
st->mem_preemph16k_fx = shl( st->mem_preemph16k_DFT_fx, sub( Q_old_inp_16k, -1 ) );
move16();
Copy_Scale_sig( st->inp_16k_mem_stereo_sw_fx, new_inp_16k_fx - L_MEM_RECALC_16K - ( STEREO_DFT_OVL_16k - L_MEM_RECALC_16K - L_FILT16k ), STEREO_DFT_OVL_16k - L_MEM_RECALC_16K - L_FILT16k, sub( Q_old_inp_16k, -1 ) ); /* Q(-1) */
-#else
- st->mem_preemph16k_fx = st->mem_preemph16k_DFT_fx;
- move16();
- Copy( st->inp_16k_mem_stereo_sw_fx, new_inp_16k_fx - L_MEM_RECALC_16K - ( STEREO_DFT_OVL_16k - L_MEM_RECALC_16K - L_FILT16k ), STEREO_DFT_OVL_16k - L_MEM_RECALC_16K - L_FILT16k ); /* Q(-1) */
-#endif
- preemph_copy_32fx2( new_inp_16k_fx - L_MEM_RECALC_16K - ( STEREO_DFT_OVL_16k - L_MEM_RECALC_16K - L_FILT16k ), sig_out, PREEMPH_FAC_16k, STEREO_DFT_OVL_16k - L_MEM_RECALC_16K - L_FILT16k, &st->mem_preemph16k_fx ); /* Q(-1) */
+ preemph_copy_32fx2( new_inp_16k_fx - L_MEM_RECALC_16K - ( STEREO_DFT_OVL_16k - L_MEM_RECALC_16K - L_FILT16k ), sig_out, PREEMPH_FAC_16k, STEREO_DFT_OVL_16k - L_MEM_RECALC_16K - L_FILT16k, &st->mem_preemph16k_fx ); /* Q(-1) */
preemp_start_idx = new_inp_16k_fx - L_MEM_RECALC_16K - ( STEREO_DFT_OVL_16k - L_MEM_RECALC_16K - L_FILT16k );
move16();
preemp_len = STEREO_DFT_OVL_16k - L_MEM_RECALC_16K - L_FILT16k;
move16();
}
-#ifdef NONBE_FIX_ISSUE_2206
st->mem_preemph16k_DFT_fx = shl( old_inp_16k_fx[L_INP_MEM - STEREO_DFT_OVL_16k + L_FRAME16k - 1], sub( -1, Q_old_inp_16k ) ); /* Q(-1) */
-#else
- st->mem_preemph16k_DFT_fx = old_inp_16k_fx[L_INP_MEM - STEREO_DFT_OVL_16k + L_FRAME16k - 1]; /* Q_new - 1 */
-#endif
move16();
/* preemphasise past segment of input signal when switching from MDCT stereo */
@@ -1274,8 +1033,6 @@ void ivas_compute_core_buffers_fx(
IF( EQ_16( st->L_frame, L_FRAME16k ) )
{
-#ifdef NONBE_FIX_ISSUE_2206
-#ifdef NONBE_FIX_ISSUE_2569
Word16 buf_speech_enc_q;
buf_speech_enc_q = s_min( sub( Q15, st->exp_buf_speech_enc ), Q_old_inp_16k );
@@ -1285,20 +1042,12 @@ void ivas_compute_core_buffers_fx(
scale_sig( st->buf_speech_enc + L_FRAME16k + L_FRAME16k, L_PAST_MAX_32k + L_NEXT_MAX_32k, sub( buf_speech_enc_q, sub( Q15, st->exp_buf_speech_enc ) ) );
st->exp_buf_speech_enc = sub( Q15, buf_speech_enc_q );
move16();
-#else
- Copy_Scale_sig_nosat( new_inp_16k_fx - lMemRecalc_16k, st->buf_speech_enc + sub( L_FRAME16k - L_FILT16k, lMemRecalc_16k ), add( lMemRecalc_16k, L_FRAME16k + L_FILT16k ), sub( sub( Q15, st->exp_buf_speech_enc ), Q_old_inp_16k ) ); /* Q_new - 1 */
-#endif
-#else
- Copy( new_inp_16k_fx - lMemRecalc_16k, st->buf_speech_enc + sub( L_FRAME16k - L_FILT16k, lMemRecalc_16k ), add( lMemRecalc_16k, L_FRAME16k + L_FILT16k ) ); /* Q_new - 1 */
-#endif
}
preemph_copy_32fx2( new_inp_16k_fx - lMemRecalc_16k, sig_out + preemp_len, PREEMPH_FAC_16k, L_FRAME16k, &( st->mem_preemph16k_fx ) ); /* Q(-1) */
tmp_fx = st->mem_preemph16k_fx;
move16();
-#ifdef NONBE_FIX_ISSUE_2206
st->mem_preemph16k_fx = shl( st->mem_preemph16k_fx, sub( -1, Q_old_inp_16k ) );
move16();
-#endif
preemph_copy_32fx2( new_inp_16k_fx - lMemRecalc_16k + L_FRAME16k, sig_out + preemp_len + L_FRAME16k, PREEMPH_FAC_16k, lMemRecalc_16k + L_FILT16k, &tmp_fx ); /* Q(-1) */
IF( preemp_start_idx && preemp_len )
{
@@ -1314,32 +1063,23 @@ void ivas_compute_core_buffers_fx(
}
ELSE IF( EQ_16( element_mode, IVAS_SCE ) )
{
-#ifdef NONBE_FIX_ISSUE_2206
st->mem_preemph16k_fx = shl( st->mem_preemph16k_fx, sub( Q_old_inp_16k, -1 ) );
move16();
-#endif
preemph_copy_32fx2( new_inp_16k_fx, sig_out, PREEMPH_FAC_16k, L_FRAME16k, &( st->mem_preemph16k_fx ) ); /* Q(-1) */
tmp_fx = st->mem_preemph16k_fx;
move16();
-#ifdef NONBE_FIX_ISSUE_2206
/* Saturation can occur. To avoid that the format of st->mem_preemph16k_fx needs to become variable. */
st->mem_preemph16k_fx = shl_sat( st->mem_preemph16k_fx, sub( -1, Q_old_inp_16k ) );
move16();
-#endif
preemph_copy_32fx2( new_inp_16k_fx + L_FRAME16k, sig_out + L_FRAME16k, PREEMPH_FAC_16k, L_FILT16k, &tmp_fx ); /* Q(-1) */
preemp_start_idx = new_inp_16k_fx;
preemp_len = L_FRAME16k + L_FILT16k;
move16();
}
-#ifdef NONBE_FIX_ISSUE_2518
shift = L_norm_arr( sig_out, preemp_len );
shift = s_min( shift, norm_arr( old_inp_16k_fx, (Word16) ( preemp_start_idx - old_inp_16k_fx ) ) );
shift = add( shift, Q_old_inp_16k );
-#ifndef NONBE_FIX_ISSUE_2569
- /* Avoid saturation of resampling/delay decimation buffer. */
- shift = s_min( shift, add( st->q_mem_decim16k_fx, 1 ) );
-#endif
IF( st->hLPDmem != NULL )
{
@@ -1349,56 +1089,9 @@ void ivas_compute_core_buffers_fx(
}
*Q_new = s_min( shift, Q_MAX );
move16();
-#else
- maximum_abs_32_fx( sig_out, preemp_len, &max_32 );
- inp_max = s_max( extract_h( max_32 ), 1 );
-
-#ifdef NONBE_FIX_ISSUE_2206
- shift = add( norm_s( inp_max ), Q_old_inp_16k );
- shift = s_min( shift, add( norm_arr( old_inp_16k_fx, (Word16) ( preemp_start_idx - old_inp_16k_fx ) ), Q_old_inp_16k ) );
-#else
- shift = sub( norm_s( inp_max ), 1 /* headroom */ );
-#endif
-
-#ifdef NONBE_FIX_ISSUE_2206
- *Q_new = s_min( shift, Q_MAX );
- move16();
-#else
- shift = s_max( shift, 0 );
- shift = s_min( shift, Q_MAX );
- minimum_fx( st->Q_max_16k, L_Q_MEM, &Q_min );
- *Q_new = s_min( shift, Q_min );
- move16();
-#ifdef NONBE_FIX_ISSUE_2206
- IF( shr( inp_max, sub( Q_old_inp_16k, -1 ) ) == 0 )
-#else
- IF( inp_max == 0 )
-#endif
- {
- IF( NE_16( st->last_coder_type, UNVOICED ) )
- {
- *Q_new = s_min( *Q_new, 1 );
- move16();
- }
- }
-
- FOR( i = L_Q_MEM - 1; i > 0; i-- )
- {
- st->Q_max_16k[i] = st->Q_max_16k[i - 1];
- move16();
- }
- st->Q_max_16k[i] = shift;
- move16();
-#endif
-#endif
-#ifndef NONBE_FIX_ISSUE_2206
- Copy_Scale_sig32_16( sig_out, preemp_start_idx, preemp_len, add( *Q_new, 1 ) );
- Scale_sig( old_inp_16k_fx, (Word16) ( preemp_start_idx - old_inp_16k_fx ), *Q_new );
-#else
Copy_Scale_sig32_16( sig_out, preemp_start_idx, preemp_len, sub( *Q_new, Q_old_inp_16k ) );
scale_sig( old_inp_16k_fx, (Word16) ( preemp_start_idx - old_inp_16k_fx ), sub( sub( *Q_new, 1 ), Q_old_inp_16k ) ); /* *Q_new-1 */
-#endif
}
ELSE /* keep memory up-to-date in case of bitrate switching */
{
@@ -1409,18 +1102,10 @@ void ivas_compute_core_buffers_fx(
}
ELSE /* SCE */
{
-#ifdef NONBE_FIX_ISSUE_2206
st->mem_preemph16k_fx = shl( new_inp_16k_fx[L_frame_tmp - 1], sub( -1, Q_old_inp_16k ) ); /* Q(-1)) */
-#else
- st->mem_preemph16k_fx = new_inp_16k_fx[L_frame_tmp - 1]; /* Q_new - 1 */
-#endif
move16();
}
-#ifdef NONBE_FIX_ISSUE_2206
st->mem_preemph16k_DFT_fx = st->mem_preemph16k_fx; /* Q(-1)) */
-#else
- st->mem_preemph16k_DFT_fx = st->mem_preemph16k_fx; /* Q_new - 1 */
-#endif
move16();
}
@@ -1432,7 +1117,6 @@ void ivas_compute_core_buffers_fx(
test();
IF( EQ_16( st->L_frame, L_FRAME16k ) && NE_16( element_mode, IVAS_CPE_MDCT ) )
{
-#ifdef NONBE_FIX_ISSUE_2206
/* update signal buffers */
IF( EQ_16( element_mode, IVAS_CPE_DFT ) )
{
@@ -1479,24 +1163,6 @@ void ivas_compute_core_buffers_fx(
Copy_Scale_sig_nosat( new_inp_16k_fx, st->buf_speech_enc_pe + L_FRAME16k, L_FRAME16k, sub( tmp, sub( *Q_new, 1 ) ) );
st->exp_buf_speech_enc_pe = sub( Q15, tmp );
}
-#else
- /* update signal buffers */
- shift = negate( *Q_new );
- move16();
- IF( EQ_16( element_mode, IVAS_CPE_DFT ) )
- {
- Copy_Scale_sig( new_inp_16k_fx - STEREO_DFT_OVL_16k, st->buf_speech_enc_pe + L_FRAME16k - STEREO_DFT_OVL_16k, L_FRAME16k + STEREO_DFT_OVL_16k, shift ); // Q-1
- }
- ELSE IF( EQ_16( element_mode, IVAS_CPE_TD ) )
- {
- Copy_Scale_sig( new_inp_16k_fx - lMemRecalc_16k, st->buf_speech_enc_pe + L_FRAME16k - lMemRecalc_16k - L_FILT16k, L_FRAME16k + lMemRecalc_16k + L_FILT16k, shift ); // Q-1
- }
- ELSE
- {
- Copy( new_inp_resamp16k_fx, st->buf_speech_enc + L_FRAME16k, L_FRAME16k );
- Copy_Scale_sig( new_inp_16k_fx, st->buf_speech_enc_pe + L_FRAME16k, L_FRAME16k, shift ); // Q-1
- }
-#endif
/*--------------------------------------------------------------*
* LPC analysis
@@ -1526,13 +1192,10 @@ void ivas_compute_core_buffers_fx(
/*--------------------------------------------------------------*
* Compute Weighted Input
*---------------------------------------------------------------*/
-#ifdef NONBE_FIX_ISSUE_2206
st->mem_wsp_enc = shl( st->mem_wsp_enc, sub( st->exp_buf_wspeech_enc, st->exp_buf_speech_enc_pe ) );
-#endif
find_wsp_fx( A_fx, st->speech_enc_pe, st->wspeech_enc, &st->mem_wsp_enc, PREEMPH_FAC_16k, L_FRAME16k, L_LOOK_16k, L_SUBFR, Aw_fx, st->gamma, NB_SUBFR16k );
-#ifdef NONBE_FIX_ISSUE_2206
Word16 tmp;
// L_FRAME16k + L_SUBFR / L_FRAME16k + L_NEXT_MAX_16k + 320
// L_FRAME16k + L_LOOK_16k
@@ -1547,7 +1210,6 @@ void ivas_compute_core_buffers_fx(
st->exp_buf_wspeech_enc = sub( Q15, tmp );
st->mem_wsp_enc = shl( st->mem_wsp_enc, sub( st->exp_buf_speech_enc_pe, st->exp_buf_wspeech_enc ) );
move16();
-#endif
}
/*-----------------------------------------------------------------*
@@ -1572,14 +1234,8 @@ void ivas_compute_core_buffers_fx(
ELSE
{
lerp( st->old_inp_12k8_fx + L_INP_MEM - L_INP_MEM * 4 / 5, st->old_inp_16k_fx, L_INP_MEM, L_INP_MEM * 4 / 5 );
-#ifdef NONBE_FIX_ISSUE_2206
st->exp_old_inp_16k = st->exp_old_inp_12k8;
move16();
-#else
- Scale_sig( st->old_inp_16k_fx, L_INP_MEM, sub( -1 /* Q st->old_inp_16k_fx = -1 */, sub( 15, st->exp_old_inp_12k8 ) ) );
- st->exp_old_inp_16k = Q16; // Q-1
- move16();
-#endif
}
IF( inp16k_out_fx != NULL )
diff --git a/lib_enc/ivas_corecoder_enc_reconfig_fx.c b/lib_enc/ivas_corecoder_enc_reconfig_fx.c
index 9c845eb400fa2b3c81e21df8ec80810198f2917a..24c9919d59b450e554ce71b8468a4a671c637bc6 100644
--- a/lib_enc/ivas_corecoder_enc_reconfig_fx.c
+++ b/lib_enc/ivas_corecoder_enc_reconfig_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
@@ -38,9 +10,6 @@
#include "wmc_auto.h"
#include "ivas_prot_fx.h"
#include "wmc_auto.h"
-#if defined( DEBUGGING ) && defined( DBG_BITSTREAM_ANALYSIS )
-#include
-#endif
/*-------------------------------------------------------------------*
@@ -197,9 +166,6 @@ ivas_error ivas_corecoder_enc_reconfig_fx(
move16();
temp_ind_list[i].nb_bits = hBstr->ind_list[i].nb_bits; /* Q0 */
move16();
-#if defined( DEBUGGING ) && defined( DBG_BITSTREAM_ANALYSIS )
- strncpy( temp_ind_list[i].function_name, hBstr->ind_list[i].function_name, 100 );
-#endif
hBstr->ind_list[i].nb_bits = -1; /* Q0 */
move16();
}
@@ -553,9 +519,6 @@ ivas_error ivas_corecoder_enc_reconfig_fx(
move16();
st_ivas->hSCE[0]->hCoreCoder[0]->hBstr->ind_list[i].nb_bits = temp_ind_list[i].nb_bits; /* Q0 */
move16();
-#if defined( DEBUGGING ) && defined( DBG_BITSTREAM_ANALYSIS )
- strncpy( st_ivas->hSCE[0]->hCoreCoder[0]->hBstr->ind_list[i].function_name, temp_ind_list[i].function_name, 100 );
-#endif
}
nb_bits = add( nb_bits, temp_ind_list[i].nb_bits ); /* Q0 */
@@ -580,9 +543,6 @@ ivas_error ivas_corecoder_enc_reconfig_fx(
move16();
st_ivas->hCPE[0]->hCoreCoder[0]->hBstr->ind_list[i].nb_bits = temp_ind_list[i].nb_bits; /* Q0 */
move16();
-#if defined( DEBUGGING ) && defined( DBG_BITSTREAM_ANALYSIS )
- strncpy( st_ivas->hCPE[0]->hCoreCoder[0]->hBstr->ind_list[i].function_name, temp_ind_list[i].function_name, 100 );
-#endif
}
nb_bits = add( nb_bits, temp_ind_list[i].nb_bits ); /* Q0 */
@@ -755,9 +715,6 @@ ivas_error ivas_corecoder_enc_reconfig_fx(
move16();
}
-#ifdef DEBUGGING
- st_ivas->hCPE[st_ivas->nCPE - 1]->hStereoMdct->mdct_stereo_mode_cmdl = hEncoderConfig->stereo_mode_cmdl;
-#endif
initMdctStereoEncData_fx( st_ivas->hCPE[st_ivas->nCPE - 1]->hStereoMdct, hEncoderConfig->ivas_format, st_ivas->hCPE[st_ivas->nCPE - 1]->element_mode, st_ivas->hCPE[st_ivas->nCPE - 1]->element_brate, hEncoderConfig->max_bwidth, 0, NULL, 1 );
diff --git a/lib_enc/ivas_cpe_enc_fx.c b/lib_enc/ivas_cpe_enc_fx.c
index b43eb2142cf2286d9694736fa11da1ec159abfff..057dc96b172b6a2c3fbd34ad97a954b5d5122192 100644
--- a/lib_enc/ivas_cpe_enc_fx.c
+++ b/lib_enc/ivas_cpe_enc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
@@ -37,9 +9,6 @@
#include "prot_fx.h"
#include "ivas_rom_com.h"
#include "rom_com.h"
-#ifdef DEBUGGING
-#include "debug.h"
-#endif
#include "wmc_auto.h"
#include "ivas_prot_fx.h"
#include "prot_fx_enc.h"
@@ -166,12 +135,6 @@ ivas_error ivas_cpe_enc_fx(
move16();
move16();
-#ifdef DEBUGGING
- if ( hCPE->hCoreCoder[0]->ini_frame == 0 )
- {
- hCPE->stereo_mode_cmdl = hEncoderConfig->stereo_mode_cmdl;
- }
-#endif
set16_fx( pitch_fr_fx[0], 0, NB_SUBFR );
set16_fx( pitch_fr_fx[1], 0, NB_SUBFR );
@@ -211,14 +174,6 @@ ivas_error ivas_cpe_enc_fx(
}
sts[n]->rate_switching_reset = 0;
move16();
-
-#ifdef DEBUGGING
- sts[n]->force = hEncoderConfig->force;
- sts[n]->id_element = cpe_id + st_ivas->nSCE;
-#ifdef DEBUG_FORCE_DIR
- sts[n]->force_dir = hEncoderConfig->force_dir;
-#endif
-#endif
}
Word16 norm, Q_min = s_min( q_data_fx, add( sts[0]->q_old_inp32, L_norm_arr( sts[0]->input32_fx - input_frame, input_frame ) ) );
@@ -270,19 +225,6 @@ ivas_error ivas_cpe_enc_fx(
{
hCPE->element_mode = select_stereo_mode_fx( hCPE, ivas_format );
}
-#ifdef DEBUG_FORCE_DIR
- else
- {
- if ( hCPE->hCoreCoder[0]->force_dir[0] != '\0' )
- {
- dbgread( &hCPE->element_mode, sizeof( int16_t ), 1, fname( hCPE->hCoreCoder[0]->force_dir, "force_element_mode.enf", -1, -1, -1 ) );
- }
- else
- {
- dbgwrite( &hCPE->element_mode, sizeof( int16_t ), 1, 1, "res/force_element_mode.enf" );
- }
- }
-#endif
stereo_mode_combined_format_enc_fx( st_ivas, hCPE );
@@ -437,7 +379,6 @@ ivas_error ivas_cpe_enc_fx(
shift = s_min( L_norm_arr( sts[0]->input_buff32_fx, input_frame_2 ), L_norm_arr( sts[1]->input_buff32_fx, input_frame_2 ) );
q_min = add( sts[0]->q_inp32, sub( shift, find_guarded_bits_fx( input_frame ) ) );
-#ifdef NONBE_FIX_ISSUE_2206
IF( EQ_16( hCPE->element_mode, IVAS_CPE_TD ) )
{
q_min = sub( q_min, 1 ); // Fixes spike artefact for IVAS_cod -stereo 32000 16 stvST16c+10dB.wav out.192 at sample 793800. Saturation somewhere ?
@@ -446,10 +387,6 @@ ivas_error ivas_cpe_enc_fx(
scale_sig32( sts[0]->input_buff32_fx, input_frame, sub( q_min, sts[0]->q_old_inp32 ) ); /* q_min */
scale_sig32( sts[1]->input_buff32_fx + input_frame, input_frame, sub( q_min, sts[1]->q_inp32 ) ); /* q_min */
scale_sig32( sts[0]->input_buff32_fx + input_frame, input_frame, sub( q_min, sts[0]->q_inp32 ) ); /* q_min */
-#else
- scale_sig32( sts[1]->input_buff32_fx, input_frame_2, sub( q_min, sts[1]->q_inp32 ) ); /* q_min */
- scale_sig32( sts[0]->input_buff32_fx, input_frame_2, sub( q_min, sts[0]->q_inp32 ) ); /* q_min */
-#endif
sts[0]->q_inp32 = sts[1]->q_inp32 = sts[0]->q_old_inp32 = sts[1]->q_old_inp32 = q_min;
move16();
move16();
@@ -460,15 +397,10 @@ ivas_error ivas_cpe_enc_fx(
shift = sub( add( L_norm_arr( sts[0]->input_buff32_fx, input_frame_2 ), sts[0]->q_inp32 ), 16 );
shift = s_min( shift, sub( add( L_norm_arr( sts[1]->input_buff32_fx, input_frame_2 ), sts[1]->q_inp32 ), 16 ) );
-#ifdef NONBE_FIX_ISSUE_2206
Copy_Scale_sig32_16( sts[0]->input_buff32_fx, sts[0]->input_buff_fx, input_frame, sub( add( Q16, shift ), sts[0]->q_old_inp32 ) ); // shift
Copy_Scale_sig32_16( sts[1]->input_buff32_fx, sts[1]->input_buff_fx, input_frame, sub( add( Q16, shift ), sts[1]->q_old_inp32 ) ); // shift
Copy_Scale_sig32_16( sts[0]->input_buff32_fx + input_frame, sts[0]->input_buff_fx + input_frame, input_frame, sub( add( Q16, shift ), sts[0]->q_inp32 ) ); // shift
Copy_Scale_sig32_16( sts[1]->input_buff32_fx + input_frame, sts[1]->input_buff_fx + input_frame, input_frame, sub( add( Q16, shift ), sts[1]->q_inp32 ) ); // shift
-#else
- Copy_Scale_sig32_16( sts[0]->input_buff32_fx, sts[0]->input_buff_fx, input_frame_2, sub( add( Q16, shift ), sts[0]->q_inp32 ) ); // shift
- Copy_Scale_sig32_16( sts[1]->input_buff32_fx, sts[1]->input_buff_fx, input_frame_2, sub( add( Q16, shift ), sts[1]->q_inp32 ) ); // shift
-#endif
sts[0]->q_inp = sts[1]->q_inp = sts[0]->q_old_inp = sts[1]->q_old_inp = shift;
move16();
move16();
@@ -483,18 +415,10 @@ ivas_error ivas_cpe_enc_fx(
{
Copy32( sts[n]->input32_fx, orig_input_fx32[n], input_frame ); /* sts->q_inp32 */
Copy( sts[n]->input_fx, orig_input_fx[n], input_frame ); /* sts->q_inp */
-#ifdef NONBE_FIX_ISSUE_2206
Q_orig_inp[n] = sts[n]->q_inp;
Q_orig_inp32[n] = sts[n]->q_inp32;
move16();
move16();
-#else
- Scale_sig( orig_input_fx[n], input_frame, sub( -1, sts[n]->q_inp ) ); // Q(-1)
- Q_orig_inp[n] = -1;
- Q_orig_inp32[n] = sts[n]->q_inp32;
- move16();
- move16();
-#endif
IF( hCPE->hStereoICBWE != NULL )
{
@@ -656,9 +580,6 @@ ivas_error ivas_cpe_enc_fx(
/* reconfiguration in case of bitrate switching */
IF( NE_32( hCPE->element_brate, hCPE->last_element_brate ) && st_ivas->hMCT == NULL )
{
-#ifdef DEBUGGING
- hCPE->hStereoMdct->mdct_stereo_mode_cmdl = hEncoderConfig->mdct_stereo_mode_cmdl;
-#endif
initMdctStereoEncData_fx( hCPE->hStereoMdct, ivas_format, hCPE->element_mode, hCPE->element_brate, max_bwidth, 0, NULL, 0 );
test();
test();
@@ -690,7 +611,6 @@ ivas_error ivas_cpe_enc_fx(
hCPE->hStereoDft->Spd_R_smooth_fx_e = sub( hCPE->hStereoDft->Spd_R_smooth_fx_e, temp );
move16();
-#ifdef NONBE_FIX_ISSUE_2206
q_com = MAX_16;
move16();
/* Align Q values of the signals that need to be aligned in stereo_td_channel_extrapolate_fx() */
@@ -714,36 +634,6 @@ ivas_error ivas_cpe_enc_fx(
hCPE->q_input_mem[n] = q_com;
move16();
}
-#else
- q_com = MAX_16;
- move16();
- FOR( n = 0; n < CPE_CHANNELS; n++ )
- {
- q_com = s_min( q_com, sub( add( L_norm_arr( sts[n]->input32_fx, input_frame ), sts[n]->q_inp32 ), 16 ) );
- q_com = s_min( q_com, sub( add( L_norm_arr( sts[n]->old_input_signal32_fx, input_frame ), sts[n]->q_old_inp32 ), 16 ) );
- q_com = s_min( q_com, add( norm_arr( hCPE->input_mem_fx[n], hCPE->hStereoDft->dft_ovl ), hCPE->q_input_mem[n] ) );
-
- if ( EQ_16( q_com, Q15 ) )
- {
- q_com = 0;
- move16();
- }
- }
- FOR( n = 0; n < CPE_CHANNELS; n++ )
- {
- Copy_Scale_sig_32_16( sts[n]->input32_fx, sts[n]->input_fx, input_frame, sub( q_com, sts[n]->q_inp32 ) );
- sts[n]->q_inp = q_com;
- move16();
-
- Copy_Scale_sig_32_16( sts[n]->old_input_signal32_fx, sts[n]->old_input_signal_fx, input_frame, sub( q_com, sts[n]->q_old_inp32 ) );
- sts[n]->q_old_inp = q_com;
- move16();
-
- scale_sig( hCPE->input_mem_fx[n], hCPE->hStereoDft->dft_ovl, sub( q_com, hCPE->q_input_mem[n] ) );
- hCPE->q_input_mem[n] = q_com;
- move16();
- }
-#endif
stereo_dft_hybrid_ITD_flag_fx( hConfigDft, input_Fs, hCPE->hStereoDft->hItd->hybrid_itd_max );
@@ -762,7 +652,6 @@ ivas_error ivas_cpe_enc_fx(
}
ELSE IF( EQ_16( hCPE->element_mode, IVAS_CPE_TD ) )
{
-#ifdef NONBE_FIX_ISSUE_2206
/* Make scale of L/R equal, required inside stereo_tdm_ener_analysis_fx()->Get_dt_lt_ener_fx() */
Q_min = s_min( sts[0]->q_inp, sts[1]->q_inp );
scale_sig( sts[0]->input_fx, input_frame, sub( Q_min, sts[0]->q_inp ) ); /* min Q of both channels */
@@ -771,14 +660,6 @@ ivas_error ivas_cpe_enc_fx(
scale_sig( sts[1]->input_fx, input_frame, sub( Q_min, sts[1]->q_inp ) ); /* min Q of both channels */
sts[1]->q_inp = Q_min;
move16();
-#else
- Scale_sig( sts[0]->input_fx, input_frame, negate( sts[0]->q_inp ) ); /* Q0 */
- sts[0]->q_inp = 0;
- move16();
- Scale_sig( sts[1]->input_fx, input_frame, negate( sts[1]->q_inp ) ); /* Q0 */
- sts[1]->q_inp = 0;
- move16();
-#endif
/* Determine the energy ratio between the 2 channels */
tdm_ratio_idx = stereo_tdm_ener_analysis_fx( ivas_format, hCPE, input_frame, &tdm_SM_or_LRTD_Pri, &tdm_ratio_idx_SM ); /* Q0 */
@@ -828,44 +709,6 @@ ivas_error ivas_cpe_enc_fx(
sts[1]->exp_old_inp_12k8 = Q15;
move16();
}
-
-#ifndef NONBE_FIX_ISSUE_2206
- q_min = sts[1]->q_old_inp;
- move16();
- q_min = s_min( q_min, sts[1]->q_inp );
- q_min = s_min( q_min, sts[0]->q_old_inp );
- q_min = s_min( q_min, sts[0]->q_inp );
- q_min = s_min( q_min, hCPE->q_input_mem[0] );
- q_min = s_min( q_min, hCPE->q_input_mem[1] );
-
- shift = norm_arr( sts[1]->old_input_signal_fx, input_frame );
- shift = s_min( shift, norm_arr( sts[1]->input_fx, input_frame ) );
- shift = s_min( shift, norm_arr( sts[0]->old_input_signal_fx, input_frame ) );
- shift = s_min( shift, norm_arr( sts[0]->input_fx, input_frame ) );
- shift = s_min( shift, norm_arr( hCPE->input_mem_fx[0], hCPE->hStereoMdct->hDft_ana->dft_ovl ) );
- shift = s_min( shift, norm_arr( hCPE->input_mem_fx[1], hCPE->hStereoMdct->hDft_ana->dft_ovl ) );
-
- q_min = add( q_min, shift );
-
- scale_sig( sts[1]->input_fx, input_frame, sub( q_min, sts[1]->q_inp ) ); /* q_min */
- scale_sig( sts[1]->old_input_signal_fx, input_frame, sub( q_min, sts[1]->q_old_inp ) ); /* q_min */
- scale_sig( sts[0]->input_fx, input_frame, sub( q_min, sts[0]->q_inp ) ); /* q_min */
- scale_sig( sts[0]->old_input_signal_fx, input_frame, sub( q_min, sts[0]->q_old_inp ) ); /* q_min */
- scale_sig( hCPE->input_mem_fx[0], hCPE->hStereoMdct->hDft_ana->dft_ovl, sub( q_min, hCPE->q_input_mem[0] ) ); /* q_min */
- scale_sig( hCPE->input_mem_fx[1], hCPE->hStereoMdct->hDft_ana->dft_ovl, sub( q_min, hCPE->q_input_mem[1] ) ); /* q_min */
- hCPE->q_input_mem[1] = q_min;
- hCPE->q_input_mem[0] = q_min;
- sts[1]->q_old_inp = q_min;
- sts[0]->q_old_inp = q_min;
- sts[1]->q_inp = q_min;
- sts[0]->q_inp = q_min;
- move16();
- move16();
- move16();
- move16();
- move16();
- move16();
-#endif
}
stereo_td_itd_mdct_stereo_fx( hCPE, vad_flag_dtx, vad_hover_flag, input_frame );
@@ -896,7 +739,6 @@ ivas_error ivas_cpe_enc_fx(
move16();
move16();
-#ifdef NONBE_FIX_ISSUE_2206
Word16 q_inp32 = sts[0]->q_old_inp32;
move16();
@@ -934,33 +776,8 @@ ivas_error ivas_cpe_enc_fx(
move16();
sts[0]->q_old_inp = sub( sts[0]->q_old_inp32, Q16 );
move16();
-#else
- stereo_dft_enc_synthesize_fx( hCPE->hStereoDft, sts[0]->input32_fx, &out_start_ind, &out_end_ind, 0, input_Fs, input_Fs, 0, NULL );
-
- Scale_sig32( sts[0]->input32_fx - input_frame, add( out_start_ind, input_frame ), sub( Q15, sts[0]->q_old_inp32 ) ); // scaling initial part of the input buffer
- Scale_sig32( sts[0]->input32_fx + out_end_ind, sub( input_frame, out_end_ind ), sub( Q15, sts[0]->q_inp32 ) ); // scaling initial part of the input buffer
- sts[0]->q_inp32 = Q15;
- sts[0]->q_old_inp32 = Q15;
- move16();
- move16();
-
- // Normalise the input buffer from Q15
- Word16 input_norm, q_inp; //, common_q, fir_delay_len;
- input_norm = L_norm_arr( sts[0]->input32_fx - input_frame, input_frame_2 );
- q_inp = sub( add( Q15, input_norm ), 16 );
-
- // Rescale the old input, input and FIR delay section of input buffer
- Copy_Scale_sig32_16( sts[0]->input32_fx - input_frame, sts[0]->input_fx - input_frame, input_frame_2, sub( add( Q16, q_inp ), Q15 ) ); // Q15 -> q_inp
-
- // Update the Q-factors
- sts[0]->q_inp = q_inp;
- move16();
- sts[0]->q_old_inp = q_inp;
- move16();
-#endif
/* iDFT & resampling to 12.8kHz internal sampling rate */
-#ifdef NONBE_FIX_ISSUE_2206
q_inp32 = sts[0]->q_inp32;
move16();
stereo_dft_enc_synthesize_fx( hCPE->hStereoDft, old_inp_12k8_fx[0] + L_INP_MEM, &q_inp32, &out_12k8_start_ind[0], &out_12k8_end_ind[0], 0, input_Fs, INT_FS_12k8, 0, NULL );
@@ -968,48 +785,28 @@ ivas_error ivas_cpe_enc_fx(
Copy_Scale_sig_32_16( old_inp_12k8_fx[0], old_inp_12k8_16fx[0], add( L_INP_MEM, out_12k8_start_ind[0] ), sub( sts[0]->q_inp, sts[0]->q_inp32 ) ); // q_inp32->sts[0]->q_inp
Copy_Scale_sig_32_16( old_inp_12k8_fx[0] + L_INP_MEM + out_12k8_start_ind[0], old_inp_12k8_16fx[0] + L_INP_MEM + out_12k8_start_ind[0], sub( out_12k8_end_ind[0], out_12k8_start_ind[0] ), sub( sts[0]->q_inp, q_inp32 ) ); // q_inp32->sts[0]->q_inp
Copy_Scale_sig_32_16( old_inp_12k8_fx[0] + L_INP_MEM + out_12k8_end_ind[0], old_inp_12k8_16fx[0] + L_INP_MEM + out_12k8_end_ind[0], s_max( 0, sub( L_INP_12k8 - L_INP_MEM, out_12k8_end_ind[0] ) ), sub( sts[0]->q_inp, sts[0]->q_inp32 ) ); // sts[0]->q_inp32->sts[0]->q_inp
-#else
- stereo_dft_enc_synthesize_fx( hCPE->hStereoDft, old_inp_12k8_fx[0] + L_INP_MEM, &out_12k8_start_ind[0], &out_12k8_end_ind[0], 0, input_Fs, INT_FS_12k8, 0, NULL );
- Copy_Scale_sig_32_16( old_inp_12k8_fx[0], old_inp_12k8_16fx[0], L_INP_12k8, -Q16 ); // Q-1
-#endif
/* iDFT & resampling to 16kHz internal sampling rate for M channel */
IF( EQ_32( input_Fs, internal_Fs ) )
{
-#ifdef NONBE_FIX_ISSUE_2206
Copy32( sts[0]->input32_fx - STEREO_DFT_OVL_16k, old_inp_16k_fx[0] + L_INP_MEM - STEREO_DFT_OVL_16k, add( input_frame, STEREO_DFT_OVL_16k ) ); /* sts[0]->q_inp32 */
Copy_Scale_sig_32_16( old_inp_16k_fx[0], old_inp_16k_16fx[0], L_INP, sub( sts[0]->q_inp, sts[0]->q_inp32 ) ); // q_inp32 -> sts[0]->q_inp
-#else
- Copy32( sts[0]->input32_fx - STEREO_DFT_OVL_16k, old_inp_16k_fx[0] + L_INP_MEM - STEREO_DFT_OVL_16k, add( input_frame, STEREO_DFT_OVL_16k ) ); /* sts[0]->q_inp32 */
- out_16k_start_ind = -STEREO_DFT_OVL_16k;
- out_16k_end_ind = add( out_16k_start_ind, add( input_frame, STEREO_DFT_OVL_16k ) );
- move16();
- move16();
-#endif
}
ELSE
{
-#ifdef NONBE_FIX_ISSUE_2206
q_inp32 = sts[0]->q_inp32;
move16();
stereo_dft_enc_synthesize_fx( hCPE->hStereoDft, old_inp_16k_fx[0] + L_INP_MEM, &q_inp32, &out_16k_start_ind, &out_16k_end_ind, 0, input_Fs, internal_Fs, 0, NULL );
Copy_Scale_sig_32_16( old_inp_16k_fx[0], old_inp_16k_16fx[0], add( L_INP_MEM, out_16k_start_ind ), sub( sts[0]->q_inp, sts[0]->q_inp32 ) ); // q_inp32->sts[0]->q_inp
Copy_Scale_sig_32_16( old_inp_16k_fx[0] + L_INP_MEM + out_16k_start_ind, old_inp_16k_16fx[0] + L_INP_MEM + out_16k_start_ind, sub( out_16k_end_ind, out_16k_start_ind ), sub( sts[0]->q_inp, q_inp32 ) ); // q_inp32->sts[0]->q_inp
Copy_Scale_sig_32_16( old_inp_16k_fx[0] + L_INP_MEM + out_16k_end_ind, old_inp_16k_16fx[0] + L_INP_MEM + out_16k_end_ind, s_max( 0, sub( L_INP - L_INP_MEM, out_16k_end_ind ) ), sub( sts[0]->q_inp, sts[0]->q_inp32 ) ); // sts[0]->q_inp32->sts[0]->q_inp
-#else
- stereo_dft_enc_synthesize_fx( hCPE->hStereoDft, old_inp_16k_fx[0] + L_INP_MEM, &out_16k_start_ind, &out_16k_end_ind, 0, input_Fs, internal_Fs, 0, NULL );
-#endif
}
-#ifndef NONBE_FIX_ISSUE_2206
- Copy_Scale_sig32_16( old_inp_16k_fx[0], old_inp_16k_16fx[0], L_INP, 0 ); // Q15->Q-1
-#endif
/* DFT Stereo: iDFT of residual signal at 8kHz sampling rate */
test();
IF( EQ_16( hCPE->element_mode, IVAS_CPE_DFT ) && hCPE->hStereoDft->res_cod_mode[STEREO_DFT_OFFSET] )
{
Copy_Scale_sig_16_32_no_sat( sts[1]->old_inp_12k8_fx, old_inp_12k8_fx[1], L_INP_MEM, 15 - 0 ); // Q15
-#ifdef NONBE_FIX_ISSUE_2206
q_inp32 = Q15;
move16();
stereo_dft_enc_synthesize_fx( hCPE->hStereoDft, old_inp_12k8_fx[1] + L_INP_MEM, &q_inp32, &out_12k8_start_ind[1], &out_12k8_end_ind[1], 1, input_Fs, 8000, 0, NULL );
@@ -1024,15 +821,6 @@ ivas_error ivas_cpe_enc_fx(
Copy_Scale_sig_32_16( old_inp_12k8_fx[1], old_inp_12k8_16fx[1], add( L_INP_MEM, out_12k8_start_ind[1] ), sub( -1, sts[1]->q_inp32 ) ); // sts[1]->q_inp32 -> Q-1
Copy_Scale_sig_32_16( old_inp_12k8_fx[1] + L_INP_MEM + out_12k8_start_ind[1], old_inp_12k8_16fx[1] + L_INP_MEM + out_12k8_start_ind[1], sub( out_12k8_end_ind[1], out_12k8_start_ind[1] ), sub( -1, q_inp32 ) ); // q_inp32 -> Q-1
Copy_Scale_sig_32_16( old_inp_12k8_fx[1] + L_INP_MEM + out_12k8_end_ind[1], old_inp_12k8_16fx[1] + L_INP_MEM + out_12k8_end_ind[1], s_max( 0, sub( L_INP_12k8 - L_INP_MEM, out_12k8_end_ind[1] ) ), sub( -1, sts[1]->q_inp32 ) ); // sts[1]->q_inp32 -> Q-1
-#else
- stereo_dft_enc_synthesize_fx( hCPE->hStereoDft, old_inp_12k8_fx[1] + L_INP_MEM, &out_12k8_start_ind[1], &out_12k8_end_ind[1], 1, input_Fs, 8000, 0, NULL );
-
- /* update old input signal buffer */
- Copy_Scale_sig_32_16( old_inp_12k8_fx[1] + L_FRAME8k, sts[1]->old_inp_12k8_fx, L_INP_MEM, 0 - 15 ); // Q0
- sts[1]->exp_old_inp_12k8 = Q15;
- move16();
- Copy_Scale_sig_32_16( old_inp_12k8_fx[1], old_inp_12k8_16fx[1], L_INP_12k8, -Q16 ); // Q-1
-#endif
}
/* no iDFT at input sampling rate for Side channel -> reset the buffer */
@@ -1044,9 +832,6 @@ ivas_error ivas_cpe_enc_fx(
move16();
}
-#ifdef DEBUG_MODE_INFO
- dbgwrite( &hCPE->element_mode, sizeof( int16_t ), 1, input_frame, fname( debug_dir, "element_mode", 0, sts[0]->id_element, ENC ) );
-#endif
/*----------------------------------------------------------------*
* Front Pre-processing
@@ -1335,14 +1120,7 @@ ivas_error ivas_cpe_enc_fx(
}
}
-#ifdef NONBE_FIX_ISSUE_2206
Copy_Scale_sig_16_32_no_sat( old_inp_12k8_16fx[1], old_inp_12k8_fx[1], L_INP_12k8, Q15 + 1 ); // Q(-1) -> Q15
-#else
- FOR( i = 0; i < CPE_CHANNELS; i++ )
- {
- Copy_Scale_sig_16_32_no_sat( old_inp_12k8_16fx[i], old_inp_12k8_fx[i], L_INP_12k8, Q16 ); // Q(-1) -> Q15
- }
-#endif
stereo_dft_enc_res_fx( hCPE->hStereoDft, old_inp_12k8_fx[1] + L_INP_MEM - STEREO_DFT_OVL_8k, hCPE->hMetaData, &nb_bits, max_bits );
}
@@ -1377,14 +1155,6 @@ ivas_error ivas_cpe_enc_fx(
* Core Encoder
*----------------------------------------------------------------*/
-#ifndef NONBE_FIX_ISSUE_2206
- FOR( n = 0; n < n_CoreChannels; n++ )
- {
- Scale_sig( old_wsp_fx[n], L_WSP, sub( e_old_wsp[n], Q16 ) ); /* exp(16) */
- e_old_wsp[n] = 16;
- move16();
- }
-#endif
IF( NE_32( ( error = ivas_core_enc_fx( NULL, hCPE, st_ivas->hMCT, n_CoreChannels, old_inp_12k8_16fx, old_inp_16k_16fx, Q_new, ener_fx, A_fx, Aw_fx, epsP_fx, epsP_fx_q, lsp_new_fx, lsp_mid_fx, vad_hover_flag, attack_flag, realBuffer_fx, imagBuffer_fx, q_re_im_buf, old_wsp_fx, e_old_wsp, loc_harm, cor_map_sum_fx, vad_flag_dtx, enerBuffer_fx, enerBuffer_fx_exp, fft_buff_fx, tdm_SM_or_LRTD_Pri, ivas_format, 0 ) ), IVAS_ERR_OK ) )
{
return error;
@@ -1461,12 +1231,6 @@ ivas_error ivas_cpe_enc_fx(
Copy( Q_new, Q_new_out, CPE_CHANNELS );
}
-#ifdef DEBUG_MODE_INFO
- {
- float tmpF = ivas_total_brate / 1000.0f;
- dbgwrite( &tmpF, sizeof( float ), 1, input_frame, fname( debug_dir, "element_brate", 0, cpe_id, ENC ) );
- }
-#endif
pop_wmops();
return IVAS_ERR_OK;
}
@@ -1632,11 +1396,7 @@ ivas_error create_cpe_enc_fx(
* LR VAD initialization
*-----------------------------------------------------------------*/
-#ifdef DEBUGGING
- if ( hEncoderConfig->Opt_DTX_ON && ( hCPE->element_mode == IVAS_CPE_TD || hEncoderConfig->stereo_mode_cmdl == 1 ) && !( ivas_format == MASA_FORMAT && element_mode_init == IVAS_CPE_MDCT ) )
-#else
IF( hEncoderConfig->Opt_DTX_ON )
-#endif
{
test();
IF( EQ_16( hCPE->element_mode, IVAS_CPE_TD ) || EQ_16( hCPE->element_mode, IVAS_CPE_DFT ) )
@@ -1737,23 +1497,6 @@ ivas_error create_cpe_enc_fx(
return ( IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for MDCT Stereo \n" ) );
}
-#ifdef DEBUGGING
- hCPE->hStereoMdct->mdct_stereo_mode_cmdl = st_ivas->hEncoderConfig->mdct_stereo_mode_cmdl;
-#ifdef DEBUG_FORCE_MDCT_STEREO_MODE
- /*set all other members to defined states */
- hCPE->hStereoMdct->fDualMono = 0;
- hCPE->hStereoMdct->fMSstereo = 0;
-
- if ( hCPE->hStereoMdct->mdct_stereo_mode_cmdl == SMDCT_FORCE_LR )
- {
- hCPE->hStereoMdct->fDualMono = 1;
- }
- else if ( hCPE->hStereoMdct->mdct_stereo_mode_cmdl == SMDCT_FORCE_MS )
- {
- hCPE->hStereoMdct->fMSstereo = 1;
- }
-#endif
-#endif
initMdctStereoEncData_fx( hCPE->hStereoMdct, ivas_format, hCPE->element_mode, hCPE->element_brate, max_bwidth, 0, NULL, 1 );
diff --git a/lib_enc/ivas_decision_matrix_enc_fx.c b/lib_enc/ivas_decision_matrix_enc_fx.c
index 391b5c65a801af4753044496129f456d7fb9ba4f..f2f5c28a6e1e95efaab2516638d63bdf37b69d8c 100644
--- a/lib_enc/ivas_decision_matrix_enc_fx.c
+++ b/lib_enc/ivas_decision_matrix_enc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
@@ -194,16 +166,6 @@ void ivas_decision_matrix_enc_fx(
move16();
}
}
-#ifdef DEBUG_FORCE_DIR
- if ( st->force_dir[0] != '\0' )
- {
- dbgread( &st->core, sizeof( int16_t ), 1, fname( st->force_dir, "force_core_loc1.enf", -1, -1, -1 ) );
- }
- else
- {
- dbgwrite( &st->core, sizeof( int16_t ), 1, 1, "res/force_core_loc1.enf" );
- }
-#endif
/* do not allow TD stereo ACELP core -> DFT stereo TCX core switching as it is on the WC complexity path */
test();
@@ -227,46 +189,6 @@ void ivas_decision_matrix_enc_fx(
move16();
}
-#ifdef DEBUGGING
- if ( st->idchan == 0 )
- {
- if ( st->force == FORCE_SPEECH && st->element_mode != IVAS_CPE_MDCT && st->total_brate <= MAX_ACELP_BRATE )
- {
- st->core = ACELP_CORE;
- }
- else if ( st->force == FORCE_MUSIC && st->core == ACELP_CORE )
- {
- st->core = TCX_20_CORE;
- }
- else if ( st->force == FORCE_ACELP && st->element_mode != IVAS_CPE_MDCT && st->total_brate <= MAX_ACELP_BRATE )
- {
- st->core = ACELP_CORE;
- if ( st->coder_type == AUDIO )
- {
- st->coder_type = GENERIC;
- }
- }
- else if ( st->force == FORCE_GSC && element_brate < IVAS_24k4 )
- {
- st->core = ACELP_CORE;
- }
-#ifdef SUPPORT_FORCE_TCX10_TCX20
- else if ( st->force == FORCE_TCX20 || st->force == FORCE_TCX10 ) /* Initalizations should always happen with TCX20*/
- {
- st->core = TCX_20_CORE;
- }
-#else
- else if ( st->force == FORCE_TCX )
- {
- st->core = TCX_20_CORE;
- }
-#endif
- else if ( st->force == FORCE_HQ && st->element_mode != IVAS_CPE_MDCT && element_brate >= IVAS_24k4 )
- {
- st->core = HQ_CORE;
- }
- }
-#endif
/* TCX not available at low bitrates -> replace it by GSC */
test();
@@ -307,16 +229,6 @@ void ivas_decision_matrix_enc_fx(
move16();
}
-#ifdef DEBUG_FORCE_DIR
- if ( st->force_dir[0] != '\0' )
- {
- dbgread( &st->core, sizeof( int16_t ), 1, fname( st->force_dir, "force_core_loc2.enf", -1, -1, -1 ) );
- }
- else
- {
- dbgwrite( &st->core, sizeof( int16_t ), 1, 1, "res/force_core_loc2.enf" );
- }
-#endif
/*---------------------------------------------------------------------*
* Select ACELP and GSC extension layer
@@ -367,19 +279,6 @@ void ivas_decision_matrix_enc_fx(
}
}
}
-
-#ifdef DEBUG_FORCE_DIR
- if ( st->force_dir[0] != '\0' )
- {
- dbgread( &st->extl, sizeof( int16_t ), 1, fname( st->force_dir, "force_extl.enf", -1, -1, -1 ) );
- dbgread( &st->extl_brate, sizeof( int32_t ), 1, fname( st->force_dir, "force_extl_brate.enf", -1, -1, -1 ) );
- }
- else
- {
- dbgwrite( &st->extl, sizeof( int16_t ), 1, 1, "res/force_extl.enf" );
- dbgwrite( &st->extl_brate, sizeof( int32_t ), 1, 1, "res/force_extl_brate.enf" );
- }
-#endif
}
/* SWB and FB */
@@ -477,18 +376,6 @@ void ivas_decision_matrix_enc_fx(
move32();
}
-#ifdef DEBUG_FORCE_DIR
- if ( st->force_dir[0] != '\0' )
- {
- dbgread( &st->extl, sizeof( int16_t ), 1, fname( st->force_dir, "force_extl.enf", -1, -1, -1 ) );
- dbgread( &st->extl_brate, sizeof( int32_t ), 1, fname( st->force_dir, "force_extl_brate.enf", -1, -1, -1 ) );
- }
- else
- {
- dbgwrite( &st->extl, sizeof( int16_t ), 1, 1, "res/force_extl.enf" );
- dbgwrite( &st->extl_brate, sizeof( int32_t ), 1, 1, "res/force_extl_brate.enf" );
- }
-#endif
/* set IC-BWE bitrate */
test();
diff --git a/lib_enc/ivas_dirac_enc_fx.c b/lib_enc/ivas_dirac_enc_fx.c
index 16934822576d785bb3402878939bafc2b3400403..bab1db78f010140f345f52b641776bd3b46c8d57 100644
--- a/lib_enc/ivas_dirac_enc_fx.c
+++ b/lib_enc/ivas_dirac_enc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
diff --git a/lib_enc/ivas_enc_cov_handler_fx.c b/lib_enc/ivas_enc_cov_handler_fx.c
index 2d652a68329b8a1aee4036f44c05b92b2f8cee9b..bc9ae7cad2f24e72c425deea0dd660b314c6416f 100644
--- a/lib_enc/ivas_enc_cov_handler_fx.c
+++ b/lib_enc/ivas_enc_cov_handler_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_enc/ivas_enc_fx.c b/lib_enc/ivas_enc_fx.c
index 2b2e26d0450104bfddb8cd6f412de427365196c7..59e876edee0b0ff0920aaffe66b08b80345e8780 100644
--- a/lib_enc/ivas_enc_fx.c
+++ b/lib_enc/ivas_enc_fx.c
@@ -1,43 +1,12 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
#include "ivas_cnst.h"
#include "prot_fx.h"
#include "ivas_rom_com.h"
-#ifdef DEBUGGING
-#include "debug.h"
-#endif
#include "wmc_auto.h"
#include "ivas_prot_fx.h"
@@ -424,12 +393,7 @@ ivas_error ivas_enc_fx(
}
/* Configuration of combined-format bit-budget distribution */
- ivas_set_surplus_brate_enc( st_ivas
-#ifdef DEBUG_MODE_INFO
- ,
- nb_bits_metadata
-#endif
- );
+ ivas_set_surplus_brate_enc( st_ivas );
/* Encode MASA transport channels */
IF( ( ivas_cpe_enc_fx( st_ivas, 0, data_fx[n], data_fx[n + 1], st_ivas->q_data_fx, input_frame, nb_bits_metadata[0], NULL ) ) != IVAS_ERR_OK )
@@ -690,12 +654,6 @@ ivas_error ivas_enc_fx(
hEncoderConfig->last_ivas_total_brate = ivas_total_brate;
move32();
-#ifdef DEBUG_MODE_INFO
- {
- float tmpF = ivas_total_brate / 1000.0f;
- dbgwrite( &tmpF, sizeof( float ), 1, input_frame, "res/ivas_total_brate" );
- }
-#endif
pop_wmops();
return error;
diff --git a/lib_enc/ivas_entropy_coder_fx.c b/lib_enc/ivas_entropy_coder_fx.c
index 9a560e30fe4e91b53d7309fd6e461c56d06452ef..43c4de41b7ee99685bf15fb133a9a5b239f4c807 100644
--- a/lib_enc/ivas_entropy_coder_fx.c
+++ b/lib_enc/ivas_entropy_coder_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
@@ -38,9 +10,6 @@
#include "ivas_rom_com.h"
#include "wmc_auto.h"
#include "ivas_prot_fx.h"
-#ifdef DEBUGGING
-#include "debug.h"
-#endif
/*-----------------------------------------------------------------------------------------*
@@ -89,12 +58,6 @@ static ivas_error ivas_get_dyn_freq_model_fx(
}
curr_bps_min = curr_bps;
move32();
-#ifdef DEBUGGING
- {
- float a = curr_bps_min / 32768.0f;
- dbgwrite_txt( &a, 1, "fixed_curr_bps_min.txt", NULL );
- }
-#endif
model_idx = 0;
move16();
@@ -106,12 +69,6 @@ static ivas_error ivas_get_dyn_freq_model_fx(
{
curr_bps_new = L_sub( curr_bps_new, W_extract_l( W_mult0_32_32( curr_dist[i], pArith->saved_dist_arr[m + 1][i] ) ) );
}
-#ifdef DEBUGGING
- {
- float a = curr_bps_new / 32768.0f;
- dbgwrite_txt( &a, 1, "fixed_curr_bps_new.txt", NULL );
- }
-#endif
IF( LT_32( curr_bps_new, curr_bps_min ) )
{
model_idx = m;
@@ -173,11 +130,7 @@ static Word16 ivas_arith_encode_array_fx(
pCum_freq = pArith->cum_freq[0]; /* Q0 */
}
-#ifdef FIX_2402_REPL_EVS_ARI_CODEC_ENC
ari_start_encoding_14bits_fx( &as );
-#else
- ari_start_encoding_14bits_ivas_fx( &as );
-#endif
FOR( i = 0; i < in_len; i++ )
{
diff --git a/lib_enc/ivas_front_vad_fx.c b/lib_enc/ivas_front_vad_fx.c
index ddc01634e9252cd19513e519e477087cccb43d4b..1d98f92ca9fd657eb0ef26c89ed89e0797eb9ff8 100644
--- a/lib_enc/ivas_front_vad_fx.c
+++ b/lib_enc/ivas_front_vad_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
@@ -176,13 +148,6 @@ ivas_error front_vad_fx(
IF( hFrontVads[0] != NULL && NE_16( element_mode, IVAS_CPE_MDCT ) )
{
-#ifdef DEBUGGING
- /* If stereo switching is not enabled and TD is selected restore element_mode to TD every frame before the VAD */
- if ( hCPE != NULL && hCPE->stereo_mode_cmdl == IVAS_CPE_TD )
- {
- hCPE->element_mode = IVAS_CPE_TD;
- }
-#endif
/*------------------------------------------------------------------*
* VAD
diff --git a/lib_enc/ivas_init_enc_fx.c b/lib_enc/ivas_init_enc_fx.c
index 06df36fe5b260a211c6ed3829042b8a9f7ad2669..e6562a76fed8910745428449f5b32080241313e5 100644
--- a/lib_enc/ivas_init_enc_fx.c
+++ b/lib_enc/ivas_init_enc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
@@ -40,9 +12,6 @@
#include "ivas_rom_com.h"
#include "wmc_auto.h"
#include "prot_fx_enc.h"
-#if defined( DEBUGGING ) && defined( DBG_BITSTREAM_ANALYSIS )
-#include
-#endif
/*-------------------------------------------------------------------*
@@ -328,12 +297,6 @@ void copy_encoder_config_fx(
st_fx->rf_fec_indicator = st_ivas->hEncoderConfig->rf_fec_indicator; /* Q0 */
move16();
-#ifdef DEBUGGING
- st_fx->force = st_ivas->hEncoderConfig->force;
-#ifdef DEBUG_FORCE_DIR
- st_fx->force_dir = st_ivas->hEncoderConfig->force_dir;
-#endif
-#endif
st_fx->element_mode = st_ivas->hEncoderConfig->element_mode_init; /* Q0 */
move16();
@@ -526,12 +489,6 @@ ivas_error ivas_init_encoder_fx(
move16();
}
-#ifdef BITSTERAM_ANALYSIS
- for ( i = 0; i < st_ivas->ivas_max_num_indices; i++ )
- {
- memset( st_ivas->ind_list[i].function_name, 'A', 100 * sizeof( char ) );
- }
-#endif
/* set the maximum allowed number of metadata indices in the list */
st_ivas->ivas_max_num_indices_metadata = get_ivas_max_num_indices_metadata_fx( st_ivas->hEncoderConfig->ivas_format, st_ivas->hEncoderConfig->ivas_total_brate ); /* Q0 */
diff --git a/lib_enc/ivas_ism_dtx_enc_fx.c b/lib_enc/ivas_ism_dtx_enc_fx.c
index 940cf63f8f09e228c326ea80eaa047578dc3596f..0a281011997585b726000b6ab6cf27ee8c36b070 100644
--- a/lib_enc/ivas_ism_dtx_enc_fx.c
+++ b/lib_enc/ivas_ism_dtx_enc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_enc/ivas_ism_enc_fx.c b/lib_enc/ivas_ism_enc_fx.c
index cd0b36f1eb911bfbd37239aea3824fef1cd0424b..6c78cc62c92637f5e04db21bd9bf27b90475dba7 100644
--- a/lib_enc/ivas_ism_enc_fx.c
+++ b/lib_enc/ivas_ism_enc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
@@ -38,9 +10,6 @@
#include "wmc_auto.h"
#include "ivas_prot_fx.h"
#include "prot_fx_enc.h"
-#ifdef DEBUGGING
-#include "debug.h"
-#endif
/*-------------------------------------------------------------------*
@@ -196,13 +165,6 @@ ivas_error ivas_ism_enc_fx(
st->input_bwidth = st->last_input_bwidth; /* updated in BWD */
st->bwidth = st->last_bwidth; /* updated in BWD */
st->rate_switching_reset = 0;
-#ifdef DEBUGGING
- st->force = st_ivas->hEncoderConfig->force;
- st->id_element = sce_id;
-#ifdef DEBUG_FORCE_DIR
- st->force_dir = st_ivas->hEncoderConfig->force_dir;
-#endif
-#endif
move16();
move16();
move16();
@@ -231,9 +193,6 @@ ivas_error ivas_ism_enc_fx(
st->bits_frame_nominal = sub( extract_l( Mpy_32_32( hSCE->element_brate, ONE_BY_FRAMES_PER_SEC_Q31 ) ), ISM_NB_BITS_METADATA_NOMINAL );
move16();
-#ifdef DEBUG_MODE_INFO
- dbgwrite( &st->element_mode, sizeof( int16_t ), 1, input_frame, fname( debug_dir, "element_mode", 0, st->id_element, ENC ) );
-#endif
/*----------------------------------------------------------------*
* Front Pre-processing
@@ -446,11 +405,6 @@ ivas_error ivas_ism_enc_fx(
test();
IF( !dtx_flag || ( dtx_flag && EQ_16( sce_id, st_ivas->hISMDTX->sce_id_dtx ) ) )
{
-#ifndef NONBE_FIX_ISSUE_2206
- Scale_sig( old_wsp_fx[sce_id][0], L_WSP, sub( e_old_wsp[sce_id][0], Q16 ) ); /* exp(16) */
- e_old_wsp[sce_id][0] = 16;
- move16();
-#endif
IF( NE_32( ( error = ivas_core_enc_fx( hSCE, NULL, NULL, 1, old_inp_12k8_fx[sce_id], old_inp_16k_fx[sce_id], Q_new[sce_id], ener_fx[sce_id], A_fx[sce_id], Aw_fx[sce_id], epsP_fx[sce_id], epsP_fx_q[sce_id], lsp_new_fx[sce_id], lsp_mid_fx[sce_id], vad_hover_flag[sce_id], attack_flag[sce_id], realBuffer_fx[sce_id], imagBuffer_fx[sce_id], &q_re_im_buf[sce_id], old_wsp_fx[sce_id], e_old_wsp[sce_id], loc_harm[sce_id], cor_map_sum_fx[sce_id], vad_flag_dtx[sce_id], enerBuffer_fx[sce_id], enerBuffer_fx_exp[sce_id], fft_buff_fx[sce_id], 0, ISM_FORMAT, 0 ) ), IVAS_ERR_OK ) )
{
return error;
@@ -496,19 +450,6 @@ ivas_error ivas_ism_enc_fx(
}
}
-#ifdef DEBUG_MODE_INFO
- for ( sce_id = 0; sce_id < nchan_transport_ism; sce_id++ )
- {
- float tmpF;
- int16_t id;
-
- st = st_ivas->hSCE[sce_id]->hCoreCoder[0];
- id = st->id_element;
-
- tmpF = st->element_brate / 1000.0f;
- dbgwrite( &tmpF, sizeof( float ), 1, input_frame, fname( debug_dir, "element_brate", 0, id, ENC ) );
- }
-#endif
pop_wmops();
return error;
diff --git a/lib_enc/ivas_ism_metadata_enc_fx.c b/lib_enc/ivas_ism_metadata_enc_fx.c
index ff8a47f5eccdae09c0691ccf190909ebb8defa93..71fbc9bb4cb6aba72b09df673242384716df24fa 100644
--- a/lib_enc/ivas_ism_metadata_enc_fx.c
+++ b/lib_enc/ivas_ism_metadata_enc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
@@ -333,16 +305,6 @@ ivas_error ivas_ism_metadata_enc_fx(
}
}
-#ifdef DEBUG_FORCE_DIR
- if ( hSCE[0]->hCoreCoder[0]->force_dir[0] != '\0' )
- {
- dbgread( ism_imp, sizeof( int16_t ), nchan_ism, fname( hSCE[0]->hCoreCoder[0]->force_dir, "force_ism_imp.enf", -1, -1, -1 ) );
- }
- else
- {
- dbgwrite( ism_imp, sizeof( int16_t ), nchan_ism, 1, "res/force_ism_imp.enf" );
- }
-#endif
/*----------------------------------------------------------------*
* Write ISM common signaling
diff --git a/lib_enc/ivas_ism_param_enc_fx.c b/lib_enc/ivas_ism_param_enc_fx.c
index 5ec986ec75f9f28fdc8acac08f44b3129e00f7fd..1214f3782553ad0d3924b17508482ac8f06ea379 100644
--- a/lib_enc/ivas_ism_param_enc_fx.c
+++ b/lib_enc/ivas_ism_param_enc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
diff --git a/lib_enc/ivas_lfe_enc_fx.c b/lib_enc/ivas_lfe_enc_fx.c
index 8d3ef73f9a60f817838f2adf78aa0112a61bb00a..1d283be09f588611fb93f5754101a8ecc1d5e24c 100644
--- a/lib_enc/ivas_lfe_enc_fx.c
+++ b/lib_enc/ivas_lfe_enc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
@@ -66,11 +38,7 @@ static void ivas_lfe_arith_coding_fx(
{
max_value = ivas_lfe_num_ele_in_coder_models[quant_strategy][i];
move16();
-#ifdef FIX_2402_REPL_EVS_ARI_CODEC_ENC
ari_start_encoding_14bits_fx( &as );
-#else
- ari_start_encoding_14bits_ivas_fx( &as );
-#endif
offset = imult1616( 4, i );
FOR( index = 0; index < num_ele_per_grp; index++ )
diff --git a/lib_enc/ivas_masa_enc_fx.c b/lib_enc/ivas_masa_enc_fx.c
index 553073a2a72bef1273d432941b1d61f6f6af37f9..d8eda72447edc3649402d27ab09bcdd0b4505e7e 100644
--- a/lib_enc/ivas_masa_enc_fx.c
+++ b/lib_enc/ivas_masa_enc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_enc/ivas_mc_param_enc_fx.c b/lib_enc/ivas_mc_param_enc_fx.c
index f17bee69a9b53c0e65ed8094f6cd7a69de915a87..f7c5d9017d04f60f10fc4ad4ecb3e0c5b4818f8b 100644
--- a/lib_enc/ivas_mc_param_enc_fx.c
+++ b/lib_enc/ivas_mc_param_enc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
// helper macros to convert the 64 bitt accumulators into the 48 bit float format
#define CONVERT_CY( x_64, y_fx, y_e ) \
diff --git a/lib_enc/ivas_mc_paramupmix_enc_fx.c b/lib_enc/ivas_mc_paramupmix_enc_fx.c
index ffead33272189327ff9baf765b54efbaca335217..da5c045f2e805ff366610a544a15f6ae26d6fae1 100644
--- a/lib_enc/ivas_mc_paramupmix_enc_fx.c
+++ b/lib_enc/ivas_mc_paramupmix_enc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
@@ -39,9 +11,6 @@
#include "ivas_rom_com.h"
#include "ivas_rom_enc.h"
#include "wmc_auto.h"
-#ifdef DEBUGGING
-#include "debug.h"
-#endif
/*-------------------------------------------------------------------------
diff --git a/lib_enc/ivas_mcmasa_enc_fx.c b/lib_enc/ivas_mcmasa_enc_fx.c
index 0a6c3550dd554e10ec60645e122825efa5bd902b..de1f35480dd67da65f9967451c1b10357352acc5 100644
--- a/lib_enc/ivas_mcmasa_enc_fx.c
+++ b/lib_enc/ivas_mcmasa_enc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
diff --git a/lib_enc/ivas_mct_core_enc_fx.c b/lib_enc/ivas_mct_core_enc_fx.c
index 5bc9c0682f0a96dc85708f384773f4b7a8558e62..d919a854ea344db69f4941bec0323477c8ead1ef 100644
--- a/lib_enc/ivas_mct_core_enc_fx.c
+++ b/lib_enc/ivas_mct_core_enc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
diff --git a/lib_enc/ivas_mct_enc_fx.c b/lib_enc/ivas_mct_enc_fx.c
index 81a8f7942605fbabbe6aa7370ecee204587ed483..8b6ecfbe01993db63bc495e8ce8e7d1abbdd9a87 100644
--- a/lib_enc/ivas_mct_enc_fx.c
+++ b/lib_enc/ivas_mct_enc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
@@ -615,14 +587,6 @@ ivas_error create_mct_enc_fx(
return ( IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for MDCT Stereo \n" ) );
}
-#ifdef DEBUGGING
- hMCT->hBlockData[n]->hStereoMdct->mdct_stereo_mode_cmdl = SMDCT_MS_DECISION;
-#ifdef DEBUG_FORCE_MDCT_STEREO_MODE
- /*set all other members to defined states */
- hMCT->hBlockData[n]->hStereoMdct->fDualMono = 0;
- hMCT->hBlockData[n]->hStereoMdct->fMSstereo = 0;
-#endif
-#endif
initMdctStereoEncData_fx( hMCT->hBlockData[n]->hStereoMdct, ivas_format, IVAS_CPE_MDCT, cp_bitrate, st_ivas->hEncoderConfig->max_bwidth, st_ivas->hCPE[0]->hCoreCoder[0]->igf, st_ivas->hCPE[0]->hCoreCoder[0]->igf ? st_ivas->hCPE[0]->hCoreCoder[0]->hIGFEnc->igfData.igfInfo.grid : NULL, 1 );
}
@@ -801,14 +765,6 @@ ivas_error mct_enc_reconfigure_fx(
}
}
-#ifdef DEBUGGING
- hMCT->hBlockData[n]->hStereoMdct->mdct_stereo_mode_cmdl = SMDCT_MS_DECISION;
-#ifdef DEBUG_FORCE_MDCT_STEREO_MODE
- /*set all other members to defined states */
- hMCT->hBlockData[n]->hStereoMdct->fDualMono = 0;
- hMCT->hBlockData[n]->hStereoMdct->fMSstereo = 0;
-#endif
-#endif
initMdctStereoEncData_fx( hMCT->hBlockData[n]->hStereoMdct, ivas_format, IVAS_CPE_MDCT, cp_bitrate, st_ivas->hEncoderConfig->max_bwidth, st_ivas->hCPE[0]->hCoreCoder[0]->igf, st_ivas->hCPE[0]->hCoreCoder[0]->igf ? st_ivas->hCPE[0]->hCoreCoder[0]->hIGFEnc->igfData.igfInfo.grid : NULL, mem_init );
}
diff --git a/lib_enc/ivas_mct_enc_mct_fx.c b/lib_enc/ivas_mct_enc_mct_fx.c
index e150a1e4073fbfc8152022109f6c822e33d9fb27..3c338012512b56a7b6416f580ccb78b2ea59e141 100644
--- a/lib_enc/ivas_mct_enc_mct_fx.c
+++ b/lib_enc/ivas_mct_enc_mct_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_enc/ivas_mdct_core_enc_fx.c b/lib_enc/ivas_mdct_core_enc_fx.c
index bae3e6f55affe3b42b01e91c4543630fa4482801..4352c09f31c2be546073d1b09ac0852c7ed2d60e 100644
--- a/lib_enc/ivas_mdct_core_enc_fx.c
+++ b/lib_enc/ivas_mdct_core_enc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
@@ -1163,13 +1135,9 @@ static void compute_power_spec(
*-------------------------------------------------------------------*/
void ivas_mdct_core_whitening_enc_fx(
- CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder structure */
-#ifdef NONBE_FIX_ISSUE_2206_MDCT_STEREO_FIX_2549
- Word16 new_samples_fx[CPE_CHANNELS][L_INP], /* i : new samples Q_new[]-1*/
- Word16 *Q_new, /* i : new samples q */
-#else
- Word16 new_samples_fx[CPE_CHANNELS][L_INP], /* i : new samples Q0*/
-#endif
+ CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder structure */
+ Word16 new_samples_fx[CPE_CHANNELS][L_INP], /* i : new samples Q_new[]-1*/
+ Word16 *Q_new, /* i : new samples q */
Word16 old_wsp_fx[CPE_CHANNELS][L_WSP], /* i : 12.8kHz weighted speech (for LTP Qx*/
Word16 pitch_buf_fx[CPE_CHANNELS][NB_SUBFR16k], /* o : floating pitch for each subframe Q6*/
Word32 *mdst_spectrum_long_fx[CPE_CHANNELS], /* o : buffer for MDST spectrum mdst_spectrum_e*/
@@ -1209,9 +1177,6 @@ void ivas_mdct_core_whitening_enc_fx(
Word16 zero_side_flag[NB_DIV];
Word16 q_com, q_min;
Word32 *mdst_spectrum_fx[CPE_CHANNELS][NB_DIV];
-#ifndef NONBE_FIX_ISSUE_2206_MDCT_STEREO_FIX_2549
- Word16 Q_new;
-#endif
Word16 q_windowedSignal[CPE_CHANNELS];
Word16 shift = 0; /* 0 for one subframe and 1 for two subframes*/
Word16 *speech;
@@ -1236,12 +1201,6 @@ void ivas_mdct_core_whitening_enc_fx(
move16();
move16();
-#if ( defined SIMPLIFY_CORE_ENC && !defined NONBE_FIX_ISSUE_2206 )
- FOR( i = 0; i < CPE_CHANNELS; i++ )
- {
- Scale_sig( new_samples_fx[i], L_INP, sub( Q1, Q_new_orig[i] ) ); // Q0
- }
-#endif
/*--------------------------------------------------------------*
* Initialization
@@ -1333,14 +1292,7 @@ void ivas_mdct_core_whitening_enc_fx(
tcx_ltp_encode_ivas_fx( st, st->hTcxEnc->tcxMode, L_FRAME, old_wsp_fx[ch] + L_WSP_MEM + L_LOOK_12k8, NULL, old_wsp_fx[ch] + L_WSP_MEM + L_LOOK_12k8, T_op[ch], ¶m_core[ch][1 + NOISE_FILL_RANGES], <pBits[ch], NULL, 0, IVAS_CPE_MDCT );
-#ifdef NONBE_FIX_ISSUE_2206_MDCT_STEREO_FIX_2549
core_signal_analysis_high_bitrate_ivas_fx( new_samples_fx[ch] + L_INP_MEM, T_op[ch], NULL, NULL, st, tnsSize[ch], tnsBits[ch], param_core[ch], <pBits[ch], windowedSignal_fx[ch], st->L_frame, st->hTcxEnc->L_frameTCX, hCPE->last_element_mode, 0, mdst_spectrum_fx[ch], mdst_spectrum_e[ch], Q_new, &q_windowedSignal[ch] );
-#else
- Q_new = 0;
- move16();
-
- core_signal_analysis_high_bitrate_ivas_fx( new_samples_fx[ch] + L_INP_MEM, T_op[ch], NULL, NULL, st, tnsSize[ch], tnsBits[ch], param_core[ch], <pBits[ch], windowedSignal_fx[ch], st->L_frame, st->hTcxEnc->L_frameTCX, hCPE->last_element_mode, 0, mdst_spectrum_fx[ch], mdst_spectrum_e[ch], &Q_new, &q_windowedSignal[ch] );
-#endif
/* BWD in MDCT domain */
IF( NE_16( st->hTcxCfg->tcx_last_overlap_mode, TRANSITION_OVERLAP ) )
@@ -2509,13 +2461,6 @@ void ivas_mdct_core_whitening_enc_fx(
}
}
-#if ( defined SIMPLIFY_CORE_ENC && !defined NONBE_FIX_ISSUE_2206 )
- FOR( i = 0; i < CPE_CHANNELS; i++ )
- {
- Scale_sig( new_samples_fx[i], L_INP, sub( Q_new_orig[i], Q1 ) ); // Q_new[] - 1
- }
-
-#endif
pop_wmops();
return;
}
diff --git a/lib_enc/ivas_omasa_enc_fx.c b/lib_enc/ivas_omasa_enc_fx.c
index 330dd40386f39f573d7fbfab0774f20164b7df48..0c8d9368a01665828959e17727ac047327fc0264 100644
--- a/lib_enc/ivas_omasa_enc_fx.c
+++ b/lib_enc/ivas_omasa_enc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include "options.h"
#include
@@ -39,9 +11,6 @@
#include "ivas_rom_com.h"
#include "ivas_rom_enc.h"
#include "wmc_auto.h"
-#ifdef DEBUGGING
-#include "debug.h"
-#endif
/*-------------------------------------------------------------------------
@@ -912,10 +881,6 @@ void ivas_set_ism_importance_interformat_fx(
void ivas_set_surplus_brate_enc(
Encoder_Struct *st_ivas /* i/o: IVAS encoder structure */
-#ifdef DEBUG_MODE_INFO
- ,
- const int16_t *nb_bits_metadata /* i : number of metadata bits */
-#endif
)
{
test();
@@ -935,31 +900,6 @@ void ivas_set_surplus_brate_enc(
move32();
}
-#ifdef DEBUG_MODE_INFO
- if ( st_ivas->hSCE[0] != NULL )
- {
- int16_t input_frame = (int16_t) ( st_ivas->hEncoderConfig->input_Fs / FRAMES_PER_SEC );
- float tmpF = 0;
-
- if ( st_ivas->ism_mode == ISM_MASA_MODE_PARAM_ONE_OBJ || st_ivas->ism_mode == ISM_MASA_MODE_MASA_ONE_OBJ )
- {
- tmpF += st_ivas->hSCE[0]->hCoreCoder[0]->total_brate + (float) ( nb_bits_metadata[1] * 50 );
- }
- else
- {
- for ( int16_t i = 0; i < st_ivas->hEncoderConfig->nchan_ism; i++ )
- {
- tmpF += st_ivas->hSCE[i]->hCoreCoder[0]->total_brate + (float) ( nb_bits_metadata[i + 1] * 50 );
- }
- }
- tmpF /= 1000.f;
- dbgwrite( &tmpF, 4, 1, input_frame, "res/brate_ISM" ); /* == ism_total_brate incl. ISM MD */
- tmpF = st_ivas->hEncoderConfig->ivas_total_brate / 1000.0f - tmpF;
- dbgwrite( &tmpF, 4, 1, input_frame, "res/brate_MASA" ); /* == masa_total_brate incl. MASA MD */
- tmpF = nb_bits_metadata[0] * FRAMES_PER_SEC / 1000.0f;
- dbgwrite( &tmpF, 4, 1, input_frame, "res/brate_MASA_MD" ); /* == MASA MD bitrate */
- }
-#endif
return;
}
diff --git a/lib_enc/ivas_osba_enc_fx.c b/lib_enc/ivas_osba_enc_fx.c
index a71a8598495b807dc8e9d4c0c105e28a6e6da88e..f851cd46c347f9eb3a9074ca0a4dac724d5f24fc 100644
--- a/lib_enc/ivas_osba_enc_fx.c
+++ b/lib_enc/ivas_osba_enc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include "options.h"
#include
diff --git a/lib_enc/ivas_pca_enc_fx.c b/lib_enc/ivas_pca_enc_fx.c
index d3c8d10717827a28f8d5ee04ae2ae5bf54402db2..0a5643ef2d01b8c13429c0af925c974acaca1a1a 100644
--- a/lib_enc/ivas_pca_enc_fx.c
+++ b/lib_enc/ivas_pca_enc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_enc/ivas_qmetadata_enc_fx.c b/lib_enc/ivas_qmetadata_enc_fx.c
index f466654409f3de0c4f8d4d5b250d29314be839cb..a244468bae96a662455c5f4dc26c4a7e1bdb6d96 100644
--- a/lib_enc/ivas_qmetadata_enc_fx.c
+++ b/lib_enc/ivas_qmetadata_enc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
@@ -40,9 +12,6 @@
#include "ivas_stat_enc.h"
#include "wmc_auto.h"
#include "basop_util.h"
-#if defined( DEBUGGING ) && defined( DBG_BITSTREAM_ANALYSIS )
-#include
-#endif
/*-----------------------------------------------------------------------*
@@ -1146,23 +1115,14 @@ void reset_metadata_spatial_fx(
{
hMetaData->ind_list[i].nb_bits = -1;
move16();
-#if defined( DEBUGGING ) && defined( DBG_BITSTREAM_ANALYSIS )
- sprintf( hMetaData->ind_list[i].function_name, "RESET in reset_metadata_spatial" );
-#endif
}
FOR( ( j = 0, i = next_ind_sid ); i < last_ind_sid; ( i++, j++ ) )
{
hMetaData->ind_list[j].value = hMetaData->ind_list[i].value;
hMetaData->ind_list[j].nb_bits = hMetaData->ind_list[i].nb_bits;
-#if defined( DEBUGGING ) && defined( DBG_BITSTREAM_ANALYSIS )
- strncpy( hMetaData->ind_list[j].function_name, hMetaData->ind_list[i].function_name, 100 );
-#endif
hMetaData->nb_bits_tot = add( hMetaData->nb_bits_tot, hMetaData->ind_list[j].nb_bits );
hMetaData->ind_list[i].nb_bits = -1;
-#if defined( DEBUGGING ) && defined( DBG_BITSTREAM_ANALYSIS )
- sprintf( hMetaData->ind_list[i].function_name, "RESET in reset_metadata_spatial" );
-#endif
move16();
move16();
move16();
@@ -1970,9 +1930,6 @@ void restore_metadata_buffer_fx(
{
hMetaData->ind_list[i].nb_bits = -1;
move16();
-#if defined( DEBUGGING ) && defined( DBG_BITSTREAM_ANALYSIS )
- sprintf( hMetaData->ind_list[i].function_name, "RESET in restore_metadata_buffer" );
-#endif
}
hMetaData->nb_bits_tot = bit_pos_start;
move16();
diff --git a/lib_enc/ivas_qspherical_enc_fx.c b/lib_enc/ivas_qspherical_enc_fx.c
index 5a9c3bb4f3ce83b3e7ff54f9709b812068ad853d..91e6d753e5a48d0d17c16a9d7bb96fa9a4d7fd37 100644
--- a/lib_enc/ivas_qspherical_enc_fx.c
+++ b/lib_enc/ivas_qspherical_enc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
diff --git a/lib_enc/ivas_range_uni_enc_fx.c b/lib_enc/ivas_range_uni_enc_fx.c
index 2efcf8f23243746735aff4a98aa96c2f8c146cbc..cb8ce7882b6ac179f923484eea1f59a712da24d6 100644
--- a/lib_enc/ivas_range_uni_enc_fx.c
+++ b/lib_enc/ivas_range_uni_enc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "ivas_prot_fx.h"
diff --git a/lib_enc/ivas_rom_enc.h b/lib_enc/ivas_rom_enc.h
index 059eb67e7d32f6b1cdbaff88116f7094deba85fb..e50644ea27a90cf4cf39b7297a0b90a15823d18c 100644
--- a/lib_enc/ivas_rom_enc.h
+++ b/lib_enc/ivas_rom_enc.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#ifndef IVAS_ROM_ENC_H
#define IVAS_ROM_ENC_H
diff --git a/lib_enc/ivas_rom_enc_fx.c b/lib_enc/ivas_rom_enc_fx.c
index 514fb2cb3f9195d227f5c7b5f956e72c86008f4a..a0c541e2ca196ab01828daa247523461aac51088 100644
--- a/lib_enc/ivas_rom_enc_fx.c
+++ b/lib_enc/ivas_rom_enc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_enc/ivas_sba_enc_fx.c b/lib_enc/ivas_sba_enc_fx.c
index c2a63a2e03e89315b6e9d3faa3287b5820b0fedf..1e3820c0fc716b968898db727673b63940f0cd5d 100644
--- a/lib_enc/ivas_sba_enc_fx.c
+++ b/lib_enc/ivas_sba_enc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
diff --git a/lib_enc/ivas_sce_enc_fx.c b/lib_enc/ivas_sce_enc_fx.c
index 400e2228442e90b0e69b72085c0504a9354d15e2..102b49796afcd74e95235229008c908bdffc24c5 100644
--- a/lib_enc/ivas_sce_enc_fx.c
+++ b/lib_enc/ivas_sce_enc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
@@ -37,9 +9,6 @@
#include "prot_fx.h"
#include "prot_fx_enc.h"
#include "ivas_rom_com.h"
-#ifdef DEBUGGING
-#include "debug.h"
-#endif
#include "wmc_auto.h"
#include "ivas_prot_fx.h"
@@ -153,13 +122,6 @@ ivas_error ivas_sce_enc_fx(
st->input_bwidth = st->last_input_bwidth; /* updated in BWD */
st->bwidth = st->last_bwidth; /* updated in BWD */
st->rate_switching_reset = 0;
-#ifdef DEBUGGING
- st->force = st_ivas->hEncoderConfig->force;
- st->id_element = sce_id;
-#ifdef DEBUG_FORCE_DIR
- st->force_dir = st_ivas->hEncoderConfig->force_dir;
-#endif
-#endif
move16();
move16();
move32();
@@ -233,10 +195,6 @@ ivas_error ivas_sce_enc_fx(
move16();
}
-#ifdef DEBUG_MODE_INFO
- dbgwrite( st->input_fx - NS2SA( st->input_Fs, ACELP_LOOK_NS ), sizeof( Word16 ), input_frame, 1, "res/input_DMX" );
- dbgwrite( &st->element_mode, sizeof( int16_t ), 1, input_frame, fname( debug_dir, "element_mode", 0, st->id_element, ENC ) );
-#endif
/*----------------------------------------------------------------*
* Front Pre-processing
*----------------------------------------------------------------*/
@@ -353,11 +311,6 @@ ivas_error ivas_sce_enc_fx(
* Encoder
*----------------------------------------------------------------*/
-#ifndef NONBE_FIX_ISSUE_2206
- Scale_sig( old_wsp_fx[0], L_WSP, sub( e_old_wsp[0], Q16 ) ); // Q(15-16)
- e_old_wsp[0] = Q16;
- move16();
-#endif
IF( NE_32( ( error = ivas_core_enc_fx( hSCE, NULL, NULL, 1, old_inp_12k8_fx, old_inp_16k_fx, Q_new, ener_fx, A_fx, Aw_fx, epsP_fx, epsP_fx_q, lsp_new_fx, lsp_mid_fx, vad_hover_flag, attack_flag, realBuffer_fx, imagBuffer_fx, &q_re_im_buf, old_wsp_fx, e_old_wsp, loc_harm, cor_map_sum_fx, vad_flag_dtx, enerBuffer_fx, enerBuffer_fx_exp, fft_buff_fx, 0, ivas_format, flag_16k_smc ) ), IVAS_ERR_OK ) )
{
return error;
@@ -381,12 +334,6 @@ ivas_error ivas_sce_enc_fx(
st->hTranDet->transientDetector.prev_bIsAttackPresent = st->hTranDet->transientDetector.bIsAttackPresent;
move16();
-#ifdef DEBUG_MODE_INFO
- {
- float tmpF = hSCE->element_brate / 1000.0f;
- dbgwrite( &tmpF, sizeof( float ), 1, input_frame, fname( debug_dir, "element_brate", 0, sce_id, ENC ) );
- }
-#endif
pop_wmops();
return IVAS_ERR_OK;
diff --git a/lib_enc/ivas_sns_enc_fx.c b/lib_enc/ivas_sns_enc_fx.c
index 7c10978d3058504afb39d9ff44b2216e1b31ff31..5e88909f924f104a4ca42c9a66c5080223449475 100644
--- a/lib_enc/ivas_sns_enc_fx.c
+++ b/lib_enc/ivas_sns_enc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
diff --git a/lib_enc/ivas_spar_encoder_fx.c b/lib_enc/ivas_spar_encoder_fx.c
index 3b65bc4389750420ec2a638fc222c3da263fcd24..adb526f5e9e73616f0a54f48de7a73518bdd23dd 100644
--- a/lib_enc/ivas_spar_encoder_fx.c
+++ b/lib_enc/ivas_spar_encoder_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
@@ -39,9 +11,6 @@
#include "ivas_stat_com.h"
#include "wmc_auto.h"
#include "prot_fx_enc.h"
-#ifdef DEBUGGING
-#include "debug.h"
-#endif
/*-------------------------------------------------------------------*
@@ -736,14 +705,6 @@ static ivas_error ivas_spar_enc_process_fx(
ivas_transient_det_process_fx( hSpar->hTranDet, data_fx[0], input_frame, transient_det );
-#ifdef DEBUGGING
- {
- float a[2];
- a[0] = transient_det[0];
- a[1] = transient_det[1];
- dbgwrite_txt( a, 2, "fixed.txt", NULL );
- }
-#endif
if ( LT_32( ivas_total_brate, IVAS_24k4 ) )
{
transient_det[1] = 0;
@@ -904,17 +865,6 @@ static ivas_error ivas_spar_enc_process_fx(
ivas_fb_mixer_get_in_out_mapping_fx( hSpar->hFbMixer->fb_cfg, in_out_mixer_map );
-#ifdef DEBUG_SPAR_DIRAC_WRITE_OUT_PRED_PARS
- {
- static FILE *fid = 0;
- int16_t band = 9;
- if ( !fid )
- {
- fid = fopen( "pred_coeffs_enc.txt", "wt" );
- }
- fprintf( fid, "%.6f\n", hSpar->hMdEnc->mixer_mat[1][0][band] );
- }
-#endif
ivas_fb_mixer_process_fx( hSpar->hFbMixer, hSpar->hMdEnc->mixer_mat_fx, &hSpar->hMdEnc->q_mixer_mat_fx, p_pcm_tmp_fx, q_p_pcm_tmp_fx, input_frame, in_out_mixer_map );
diff --git a/lib_enc/ivas_spar_md_enc_fx.c b/lib_enc/ivas_spar_md_enc_fx.c
index 9bd2c17b381a593e6cf88d66b2e2cd28c1d1ad3b..6a42778b1a30377a3df754325e381fb813153cbf 100644
--- a/lib_enc/ivas_spar_md_enc_fx.c
+++ b/lib_enc/ivas_spar_md_enc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include
diff --git a/lib_enc/ivas_stat_enc.h b/lib_enc/ivas_stat_enc.h
index c4e821202d81bc26fcc773e1a5572eb90ff2b2d8..71e27b4431a08e58771dcea23c15c593ca9be3e1 100644
--- a/lib_enc/ivas_stat_enc.h
+++ b/lib_enc/ivas_stat_enc.h
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#ifndef IVAS_STAT_ENC_H
#define IVAS_STAT_ENC_H
@@ -39,9 +11,6 @@
#include "ivas_cnst.h"
#include "stat_enc.h"
#include "ivas_stat_com.h"
-#ifdef DEBUG_FORCE_DIR
-#include "debug.h"
-#endif
/*----------------------------------------------------------------------------------*
* DFT Stereo encoder structures
@@ -276,12 +245,8 @@ typedef struct stereo_dft_enc_data_struct
const Word16 *dft_trigo_16k_fx;
const Word16 *dft_trigo_32k_fx;
-#ifdef NONBE_FIX_ISSUE_2206
Word32 output_mem_res_8k_fx[STEREO_DFT_OVL_8k]; // output_mem_res_8k_q
Word16 output_mem_res_8k_q; // Q15
-#else
- Word32 output_mem_res_8k_fx[STEREO_DFT_OVL_8k]; // Q15
-#endif
Word32 res_cod_NRG_M_fx[STEREO_DFT_BAND_MAX]; // Q(31 - res_cod_NRG_M_fx_e[])
Word16 res_cod_NRG_M_fx_e[STEREO_DFT_BAND_MAX];
@@ -298,7 +263,6 @@ typedef struct stereo_dft_enc_data_struct
Word16 past_dot_prod_real_fx_e[STEREO_DFT_NRG_PAST_LEN * STEREO_DFT_BAND_MAX];
Word32 past_dot_prod_imag_fx[STEREO_DFT_NRG_PAST_LEN * STEREO_DFT_BAND_MAX]; // Q(31 - past_dot_prod_imag_fx_e[])
Word16 past_dot_prod_imag_fx_e[STEREO_DFT_NRG_PAST_LEN * STEREO_DFT_BAND_MAX];
-#ifdef NONBE_FIX_ISSUE_2206
Word32 output_mem_dmx_fx[STEREO_DFT_OVL_MAX]; // output_mem_dmx_q
Word32 output_mem_dmx_12k8_fx[STEREO_DFT_OVL_12k8]; // output_mem_dmx_12k8_q
Word32 output_mem_dmx_16k_fx[STEREO_DFT_OVL_16k]; /*can hold 16, 12.8 or 32kHz signals*/ // output_mem_dmx_16k_q
@@ -309,13 +273,6 @@ typedef struct stereo_dft_enc_data_struct
Word16 output_mem_dmx_16k_q; /*can hold 16, 12.8 or 32kHz signals*/ // Q0
Word16 output_mem_dmx_32k_q; /*can hold 16, 12.8 or 32kHz signals*/ // Q0
Word16 output_mem_dmx_16k_shb_q; // Q0
-#else
- Word32 output_mem_dmx_fx[STEREO_DFT_OVL_MAX]; // Q15
- Word32 output_mem_dmx_12k8_fx[STEREO_DFT_OVL_12k8]; // Q15
- Word32 output_mem_dmx_16k_fx[STEREO_DFT_OVL_16k]; /*can hold 16, 12.8 or 32kHz signals*/ // Q15
- Word32 output_mem_dmx_32k_fx[STEREO_DFT_OVL_32k]; /*can hold 16, 12.8 or 32kHz signals*/ // Q15
- Word32 output_mem_dmx_16k_shb_fx[STEREO_DFT_OVL_16k]; // Q15
-#endif
Word16 input_mem_itd_fx[CPE_CHANNELS][STEREO_DFT_OVL_MAX];
Word16 q_input_mem_itd[CPE_CHANNELS];
Word32 gipd_fx[STEREO_DFT_ENC_DFT_NB]; // Q13
@@ -336,13 +293,8 @@ typedef struct stereo_mdct_enc_data_structure
/* only intraframe */
Word16 mdct_stereo_mode[2]; /* mdct stereo mode: LR, MS, band-wise MS */
-#ifdef DEBUGGING
- Word16 mdct_stereo_mode_cmdl; /* MDCT stereo mode from command-line */
- Word16 fDualMono; /* force dual mono in MDCT stereo mode */
- Word16 fMSstereo; /* force full-band MS in MDCT stereo mode */
-#endif
- Word16 global_ild[2]; /* Quantized ILD for the whole spectrum */
- Word16 split_ratio; /* Ratio of bitrate (1 to 7), split_ratio = 8 * 1st chn bitrate / (1st + 2nd chn bitrate) */
+ Word16 global_ild[2]; /* Quantized ILD for the whole spectrum */
+ Word16 split_ratio; /* Ratio of bitrate (1 to 7), split_ratio = 8 * 1st chn bitrate / (1st + 2nd chn bitrate) */
Word16 IGFStereoMode[2]; /* MDCT stereo mode for IGF */
@@ -1126,9 +1078,6 @@ typedef struct cpe_enc_data_structure
Word16 *input_mem_fx[CPE_CHANNELS]; /* input channels buffers memory; needed to be up-to-date for TD->DFT stereo switching */
Word16 q_input_mem[CPE_CHANNELS];
-#ifdef DEBUGGING
- Word16 stereo_mode_cmdl; /* stereo mode forced from the commaand-line */
-#endif
} CPE_ENC_DATA, *CPE_ENC_HANDLE;
@@ -1344,15 +1293,6 @@ typedef struct encoder_config_structure
/* temp. development parameters */
Word16 Opt_PCA_ON; /* flag indicating PCA operation in SBA */
-#ifdef DEBUGGING
- /* debugging options */
- Word16 stereo_mode_cmdl; /* stereo mode forced from the command-line */
- Word16 force; /* parameter to force specific "core" of the Core-Coder*/
- Word16 mdct_stereo_mode_cmdl; /* mdct stereo mode forced from command-line, employed only when DEBUG_FORCE_MDCT_STEREO_MODE is activated */
-#ifdef DEBUG_FORCE_DIR
- char force_dir[FORCE_DIR_MAX_LENGTH]; /* directory containing external binary files for modes/parameters enforcement (empty string indicates no enforcement) */
-#endif
-#endif
} ENCODER_CONFIG, *ENCODER_CONFIG_HANDLE;
diff --git a/lib_enc/ivas_stereo_adapt_GR_enc_fx.c b/lib_enc/ivas_stereo_adapt_GR_enc_fx.c
index bf54b690137c6f15191664fa0faca5e502bc125a..253933127f41d19aaa82479ee87a9702c8ece59d 100644
--- a/lib_enc/ivas_stereo_adapt_GR_enc_fx.c
+++ b/lib_enc/ivas_stereo_adapt_GR_enc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_enc/ivas_stereo_classifier_fx.c b/lib_enc/ivas_stereo_classifier_fx.c
index 621a00bd4b41784868b153a945ba844fa2c196f1..ee5da0d327c6f0a39a381dbdf70c85252a8b8b5c 100644
--- a/lib_enc/ivas_stereo_classifier_fx.c
+++ b/lib_enc/ivas_stereo_classifier_fx.c
@@ -1,40 +1,9 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
-#ifdef DEBUGGING
-#include "debug.h"
-#endif
#include "prot_fx.h"
#include "ivas_rom_com.h"
#include "ivas_rom_enc.h"
@@ -118,12 +87,8 @@ Word16 select_stereo_mode_fx(
test();
test();
test();
-#ifdef DEBUGGING
- IF( GE_32( hCPE->element_brate, MIN_BRATE_MDCT_STEREO ) || ( ( ( EQ_16( ivas_format, MASA_FORMAT ) || EQ_16( ivas_format, MASA_ISM_FORMAT ) ) && LT_32( hCPE->element_brate, MASA_STEREO_MIN_BITRATE ) ) ) || ( hCPE->stereo_mode_cmdl == IVAS_CPE_DFT || hCPE->stereo_mode_cmdl == IVAS_CPE_TD ) )
-#else
if ( GE_32( hCPE->element_brate, MIN_BRATE_MDCT_STEREO ) || ( ( ( EQ_16( ivas_format, MASA_FORMAT ) || EQ_16( ivas_format, MASA_ISM_FORMAT ) ) &&
LT_32( hCPE->element_brate, MASA_STEREO_MIN_BITRATE ) ) ) )
-#endif
{
stereo_switching_flag = 0;
move16();
@@ -177,12 +142,6 @@ Word16 select_stereo_mode_fx(
element_mode = IVAS_CPE_DFT;
move16();
}
-#ifdef DEBUGGING
- if ( hCPE->stereo_mode_cmdl > 1 )
- {
- element_mode = hCPE->stereo_mode_cmdl;
- }
-#endif
}
ELSE IF( EQ_16( element_mode, IVAS_CPE_TD ) )
{
@@ -230,16 +189,6 @@ Word16 select_stereo_mode_fx(
}
}
-#ifdef DEBUG_FORCE_DIR
- if ( hCPE->hCoreCoder[0]->force_dir[0] != '\0' )
- {
- dbgread( &element_mode, sizeof( int16_t ), 1, fname( hCPE->hCoreCoder[0]->force_dir, "force_element_mode.enf", -1, -1, -1 ) );
- }
- else
- {
- dbgwrite( &element_mode, sizeof( int16_t ), 1, 1, "res/force_element_mode.enf" );
- }
-#endif
IF( NE_16( hCPE->last_element_mode, element_mode ) )
{
@@ -962,16 +911,6 @@ void unclr_classifier_td_fx(
move16();
}
-#ifdef DEBUG_FORCE_DIR
- if ( hCPE->hCoreCoder[0]->force_dir[0] != '\0' )
- {
- dbgread( &hStereoClassif->unclr_decision, sizeof( int16_t ), 1, fname( hCPE->hCoreCoder[0]->force_dir, "force_unclr_decision.enf", -1, -1, -1 ) );
- }
- else
- {
- dbgwrite( &hStereoClassif->unclr_decision, sizeof( int16_t ), 1, 1, "res/force_unclr_decision.enf" );
- }
-#endif
return;
}
@@ -1104,16 +1043,6 @@ void unclr_classifier_dft_fx(
move16();
}
-#ifdef DEBUG_FORCE_DIR
- if ( hCPE->hCoreCoder[0]->force_dir[0] != '\0' )
- {
- dbgread( &hStereoClassif->unclr_decision, sizeof( int16_t ), 1, fname( hCPE->hCoreCoder[0]->force_dir, "force_unclr_decision.enf", -1, -1, -1 ) );
- }
- else
- {
- dbgwrite( &hStereoClassif->unclr_decision, sizeof( int16_t ), 1, 1, "res/force_unclr_decision.enf" );
- }
-#endif
return;
}
@@ -1264,16 +1193,6 @@ void xtalk_classifier_td_fx(
move16();
}
-#ifdef DEBUG_FORCE_DIR
- if ( hCPE->hCoreCoder[0]->force_dir[0] != '\0' )
- {
- dbgread( &hStereoClassif->xtalk_decision, sizeof( int16_t ), 1, fname( hCPE->hCoreCoder[0]->force_dir, "force_xtalk_decision.enf", -1, -1, -1 ) );
- }
- else
- {
- dbgwrite( &hStereoClassif->xtalk_decision, sizeof( int16_t ), 1, 1, "res/force_xtalk_decision.enf" );
- }
-#endif
return;
}
@@ -1512,16 +1431,6 @@ void xtalk_classifier_dft_fx(
hItd->prev_itd2 = itd2;
move16();
-#ifdef DEBUG_FORCE_DIR
- if ( hCPE->hCoreCoder[0]->force_dir[0] != '\0' )
- {
- dbgread( &hStereoClassif->xtalk_decision, sizeof( int16_t ), 1, fname( hCPE->hCoreCoder[0]->force_dir, "force_xtalk_decision.enf", -1, -1, -1 ) );
- }
- else
- {
- dbgwrite( &hStereoClassif->xtalk_decision, sizeof( int16_t ), 1, 1, "res/force_xtalk_decision.enf" );
- }
-#endif
return;
}
diff --git a/lib_enc/ivas_stereo_cng_enc_fx.c b/lib_enc/ivas_stereo_cng_enc_fx.c
index c9f4fe9a1b5b06ff1510853bc0180f5a15c78699..bb4d766ef632787f2571940b7e183230fdc67f64 100644
--- a/lib_enc/ivas_stereo_cng_enc_fx.c
+++ b/lib_enc/ivas_stereo_cng_enc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include "options.h"
diff --git a/lib_enc/ivas_stereo_dft_enc_fx.c b/lib_enc/ivas_stereo_dft_enc_fx.c
index 095b918ef85b6d0a96458616d69cadb16edf9745..06a832b17172a86f2f6d4c0183d07f5da806d46f 100644
--- a/lib_enc/ivas_stereo_dft_enc_fx.c
+++ b/lib_enc/ivas_stereo_dft_enc_fx.c
@@ -1,34 +1,6 @@
-/******************************************************************************************************
-
- (C) 2022-2026 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository. All Rights Reserved.
-
- This software is protected by copyright law and by international treaties.
- The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB,
- Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD.,
- Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange,
- Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other
- contributors to this repository retain full ownership rights in their respective contributions in
- the software. This notice grants no license of any kind, including but not limited to patent
- license, nor is any license granted by implication, estoppel or otherwise.
-
- Contributors are required to enter into the IVAS codec Public Collaboration agreement before making
- contributions.
-
- This software is provided "AS IS", without any express or implied warranties. The software is in the
- development stage. It is intended exclusively for experts who have experience with such software and
- solely for the purpose of inspection. All implied warranties of non-infringement, merchantability
- and fitness for a particular purpose are hereby disclaimed and excluded.
-
- Any dispute, controversy or claim arising under or in relation to providing this software shall be
- submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in
- accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and
- the United Nations Convention on Contracts on the International Sales of Goods.q_inp
-
-*******************************************************************************************************/
+/*====================================================================================
+ 3GPP TS26.251 May 08, 2026. IVAS Codec Version IVAS-FX-3.1RC02
+ ====================================================================================*/
#include
#include