diff --git a/Workspace_msvc/lib_com.vcxproj b/Workspace_msvc/lib_com.vcxproj index 99b025e52828398d5d6341f852105ad4e9934259..a18464d878a503ae2e6c14cdfd042800744d1248 100644 --- a/Workspace_msvc/lib_com.vcxproj +++ b/Workspace_msvc/lib_com.vcxproj @@ -121,35 +121,25 @@ - - - - - - - - - - @@ -158,7 +148,6 @@ - @@ -194,39 +183,28 @@ - - - - - - - - - - - @@ -243,7 +221,6 @@ - @@ -304,50 +281,30 @@ - - - - - - - - - - - - - - - - - - - - diff --git a/Workspace_msvc/lib_com.vcxproj.filters b/Workspace_msvc/lib_com.vcxproj.filters index 14f722f697b0bce3b56d14bbc83f00a231e27dc4..4d60b3abd8ce011126bb7b89fe9a5bfac636a699 100644 --- a/Workspace_msvc/lib_com.vcxproj.filters +++ b/Workspace_msvc/lib_com.vcxproj.filters @@ -1,12 +1,6 @@ - - common_evs_c - - - common_evs_c - common_ivas_c @@ -76,12 +70,6 @@ common_ivas_c - - common_ivas_c - - - common_ivas_c - common_ivas_c @@ -210,9 +198,6 @@ common_all_c - - common_all_c - common_all_c @@ -349,9 +334,6 @@ common_all_c - - common_all_c - common_all_c @@ -387,28 +369,18 @@ - - - - - - - - - - @@ -422,23 +394,13 @@ - - - - - - - - - - @@ -456,27 +418,10 @@ - - - - - - - - - - - - - - - - - diff --git a/lib_com/ACcontextMapping.c b/lib_com/ACcontextMapping.c deleted file mode 100644 index bfe9e125acf4fe0291bec2e2e2c7327ac224daea..0000000000000000000000000000000000000000 --- a/lib_com/ACcontextMapping.c +++ /dev/null @@ -1,70 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include "options.h" -#include "cnst.h" -#include "prot.h" -#include "wmc_auto.h" -#include "prot_fx.h" - -/*-------------------------------------------------------------------* - * get_next_coeff_mapped_ivas() - * - * - *-------------------------------------------------------------------*/ - -/*! r: index of next coefficient */ -Word16 get_next_coeff_mapped_ivas_fx( - Word16 ii[2], /* i/o: coefficient indexes Q0*/ - Word32 *pp, /* o : peak(1)/hole(0) indicator Q0*/ - Word16 *idx, /* o : index in unmapped domain Q0*/ - CONTEXT_HM_CONFIG *hm_cfg /* i : HM configuration */ -) -{ - UWord32 p; - - p = s_and( sub( ii[1], hm_cfg->numPeakIndices ), sub( hm_cfg->indexBuffer[ii[1]], hm_cfg->indexBuffer[ii[0]] ) ); /* Q0 */ - p = UL_lshr( p, sub( sizeof( p ) * 8, 1 ) ); /* Q0 */ - *pp = p; /* Q0 */ - move32(); - *idx = ii[p]; /* Q0 */ - move16(); - ii[p] = add( ii[p], 1 ); /* Q0 */ - move16(); - - return hm_cfg->indexBuffer[*idx]; -} diff --git a/lib_com/ACcontextMapping_fx.c b/lib_com/ACcontextMapping_fx.c index a95ffb1c780125b909b35a4167b685fb4eb7516b..3fecfd2af54c3a4a3c56334eb58c5ce59e240872 100644 --- a/lib_com/ACcontextMapping_fx.c +++ b/lib_com/ACcontextMapping_fx.c @@ -95,3 +95,31 @@ Word32 update_mixed_context_ivas_fx( } return L_add( L_shl( L_and( ctx, 0xf ), 4 ), L_add( t32, 13 ) ); } + +/*-------------------------------------------------------------------* + * get_next_coeff_mapped_ivas() + * + * + *-------------------------------------------------------------------*/ + +/*! r: index of next coefficient */ +Word16 get_next_coeff_mapped_ivas_fx( + Word16 ii[2], /* i/o: coefficient indexes Q0*/ + Word32 *pp, /* o : peak(1)/hole(0) indicator Q0*/ + Word16 *idx, /* o : index in unmapped domain Q0*/ + CONTEXT_HM_CONFIG *hm_cfg /* i : HM configuration */ +) +{ + UWord32 p; + + p = s_and( sub( ii[1], hm_cfg->numPeakIndices ), sub( hm_cfg->indexBuffer[ii[1]], hm_cfg->indexBuffer[ii[0]] ) ); /* Q0 */ + p = UL_lshr( p, sub( sizeof( p ) * 8, 1 ) ); /* Q0 */ + *pp = p; /* Q0 */ + move32(); + *idx = ii[p]; /* Q0 */ + move16(); + ii[p] = add( ii[p], 1 ); /* Q0 */ + move16(); + + return hm_cfg->indexBuffer[*idx]; +} diff --git a/lib_com/ari.c b/lib_com/ari.c deleted file mode 100644 index edf33aee3f337d8e0d7f1f62006af0dd25372c79..0000000000000000000000000000000000000000 --- a/lib_com/ari.c +++ /dev/null @@ -1,42 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include "options.h" -#include "prot.h" -#include "basop_util.h" -#include "cnst.h" -#include "wmc_auto.h" diff --git a/lib_com/ari_hm.c b/lib_com/ari_hm.c deleted file mode 100644 index c3391f00ea37076ba609db700c75ba6cc0f9fb78..0000000000000000000000000000000000000000 --- a/lib_com/ari_hm.c +++ /dev/null @@ -1,256 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include -#include "options.h" -#include "cnst.h" -#include "stl.h" -#include "basop_util.h" -#include "prot.h" -#include "rom_com.h" -#include "wmc_auto.h" - -/*-------------------------------------------------------------------* - * UnmapIndex_ivas() - * - * - *-------------------------------------------------------------------*/ - - -void UnmapIndex_fx( - const Word16 PeriodicityIndex, /* Q0 */ - const Word16 Bandwidth, /* Q0 */ - const Word16 LtpPitchLag, /* Q0 */ - const Word8 SmallerLags, /* Q0 */ - Word16 *FractionalResolution, /* Q0 */ - Word32 *Lag /* Q0 */ -) -{ - Word16 LtpPitchIndex, Multiplier; - Word16 Lag16; - - test(); - IF( ( LtpPitchLag > 0 ) && ( s_and( PeriodicityIndex, kLtpHmFlag ) != 0 ) ) - { - LtpPitchIndex = shr( PeriodicityIndex, 9 ); /* Q0 */ - Multiplier = s_and( PeriodicityIndex, 0xff ); /* Q0 */ - - assert( 0 <= LtpPitchIndex && LtpPitchIndex <= 16 ); - assert( 1 <= Multiplier && Multiplier <= ( 1 << NumRatioBits[Bandwidth][LtpPitchIndex] ) ); - - *FractionalResolution = kLtpHmFractionalResolution; /* Q0 */ - move16(); - *Lag = L_shr( L_mult0( LtpPitchLag, Ratios_fx[Bandwidth][LtpPitchIndex][Multiplier - 1] ), 8 ); /* Q0 */ - move32(); - } - ELSE - { - IF( LT_16( PeriodicityIndex, 16 ) ) - { - *FractionalResolution = 3; /* Q0 */ - move16(); - Lag16 = add( PeriodicityIndex, GET_ADJ2( 0, 6, 3 ) ); /* Q0 */ - } - ELSE IF( LT_16( PeriodicityIndex, 80 ) ) - { - *FractionalResolution = 4; /* Q0 */ - move16(); - Lag16 = add( PeriodicityIndex, GET_ADJ2( 16, 8, 4 ) ); /* Q0 */ - } - ELSE IF( LT_16( PeriodicityIndex, 208 ) ) - { - *FractionalResolution = 3; /* Q0 */ - move16(); - Lag16 = add( PeriodicityIndex, GET_ADJ2( 80, 12, 3 ) ); /* Q0 */ - } - ELSE - { - test(); - IF( LT_16( PeriodicityIndex, 224 ) || SmallerLags != 0 ) - { - *FractionalResolution = 1; /* Q0 */ - move16(); - Lag16 = add( PeriodicityIndex, GET_ADJ2( 208, 28, 1 ) ); /* Q0 */ - } - ELSE - { - *FractionalResolution = 0; - move16(); - Lag16 = add( PeriodicityIndex, GET_ADJ2( 224, 188, 0 ) ); /* Q0 */ - } - } - *Lag = L_deposit_l( Lag16 ); /* Q0 */ - } -} - - -/*-------------------------------------------------------------------* - * CountIndexBits_ivas() - * - * - *-------------------------------------------------------------------*/ - - -Word16 CountIndexBits_fx( - Word16 Bandwidth, /* Q0 */ - Word16 PeriodicityIndex /* Q0 */ -) -{ - Word16 result; - Word16 PeriodicityIndexS; - - result = 8; /* Q0 */ - move16(); - PeriodicityIndexS = shr( PeriodicityIndex, 9 ); /* Q0 */ - - if ( s_and( PeriodicityIndex, kLtpHmFlag ) != 0 ) - { - result = NumRatioBits[Bandwidth][PeriodicityIndexS]; /* Q0 */ - move16(); - } - - return result; -} - -#define WMC_TOOL_SKIP - - -Word32 tcx_hm_render_fx( - const Word32 lag, /* i: pitch lag Q0 */ - const Word16 fract_res, /* i: fractional resolution of the lag Q0 */ - Word16 p[] /* o: harmonic model Q13 */ -) -{ - Word16 k, tmp, height; - Word16 PeakDeviation; - Word32 f0, tmp32; - - /* Set up overall shape */ - f0 = L_shl( lag, sub( 15, fract_res ) ); /* Q31 */ - - tmp32 = Mpy_32_16_1( f0, -26474 ); - tmp32 = L_shr_r( BASOP_Util_InvLog2( L_shl( tmp32, 7 ) ), 2 ); /* Q29 */ - tmp32 = L_sub( 603979776L /* 1.125 in Q29 */, tmp32 ); /* Q29 */ - tmp32 = L_add( L_add( tmp32, tmp32 ), Mpy_32_16_1( tmp32, 26214 /* 0.8 in Q15 */ ) ); /* Q29 */ - height = round_fx( tmp32 ); /* Q13 */ - - tmp32 = Mpy_32_16_1( f0, -18910 ); - tmp32 = L_shr_r( BASOP_Util_InvLog2( L_shl( tmp32, 7 ) ), 2 ); /* Q30 */ - tmp32 = L_sub( 1395864371L /* 1.3 in Q30 */, tmp32 ); /* Q30 */ - PeakDeviation = round_fx( tmp32 ); /* Q14 */ - - IF( GT_16( 13915, PeakDeviation ) ) - { - /* A bit error was encountered */ - return 1; - } - ELSE - { - tmp = div_s( 13915, PeakDeviation ); /* Q15 */ - tmp = mult_r( tmp, tmp ); /* Q15 */ - } - - tmp = div_s( 13915, PeakDeviation ); /* Q15 */ - tmp = mult_r( tmp, tmp ); /* Q15 */ - - /* Render the prototype peak */ - p[kTcxHmParabolaHalfWidth] = height; - move16(); - - FOR( k = 1; k <= kTcxHmParabolaHalfWidth; ++k ) - { - p[kTcxHmParabolaHalfWidth + k] = round_fx( Mpy_32_16_1( BASOP_Util_InvLog2( L_shl( L_mult0( i_mult2( negate( k ), k ), tmp ), 10 ) ), height ) ); /* Q13 */ - } - /* Mirror */ - FOR( k = -kTcxHmParabolaHalfWidth; k < 0; ++k ) - { - p[kTcxHmParabolaHalfWidth + k] = p[kTcxHmParabolaHalfWidth - k]; /* Q13 */ - move16(); - } - - return 0; -} - - -void tcx_hm_modify_envelope_fx( - const Word16 gain, /* i: HM gain Q11 */ - const Word32 lag, /* i: pitch lag Q0 */ - const Word16 fract_res, /* i: fractional resolution of the lag Q0 */ - const Word16 p[], /* i: harmonic model Q13 */ - Word32 env[], /* i/o: envelope Q16 */ - const Word16 L_frame /* i: number of spectral lines Q0 */ -) -{ - Word16 k, h, x, l1, l2, L_frame_m1, L_frame_for_loop; - Word16 inv_shape[2 * kTcxHmParabolaHalfWidth + 1]; - - IF( gain == 0 ) - { - return; - } - - FOR( k = 0; k < 2 * kTcxHmParabolaHalfWidth + 1; ++k ) - { - /* Q24 = Q11 * Q13; 512 = 1.0 in Q24 format */ - inv_shape[k] = div_s( 512, add( 512, mult_r( gain, p[k] ) ) ); /* Q15 */ - move16(); - } - - h = 1; - move16(); - k = extract_l( L_shr( lag, fract_res ) ); - - L_frame_m1 = sub( L_frame, 1 ); /* Q0 */ - L_frame_for_loop = add( L_frame, kTcxHmParabolaHalfWidth - 1 ); /* Q0 */ - - WHILE( k <= L_frame_for_loop ) - { - l1 = s_max( 0, sub( k, kTcxHmParabolaHalfWidth ) ); /* Q0 */ - l2 = s_min( add( k, kTcxHmParabolaHalfWidth ), L_frame_m1 ); /* Q0 */ - FOR( x = l1; x <= l2; ++x ) - { - env[x] = Mpy_32_16_1( env[x], inv_shape[x - k + kTcxHmParabolaHalfWidth] ); /* Q16 */ - move32(); - } - - h = add( h, 1 ); /* Q0 */ - k = extract_l( L_shr( imult3216( lag, h ), fract_res ) ); /* Q0 */ - } -} - - -#undef WMC_TOOL_SKIP diff --git a/lib_com/ari_hm_fx.c b/lib_com/ari_hm_fx.c index ea0c599722ce75f6f909b9683ddd38132b50e96f..076bc8d9263d1f59c12906bb796fcbd5f245f591 100644 --- a/lib_com/ari_hm_fx.c +++ b/lib_com/ari_hm_fx.c @@ -10,6 +10,7 @@ #include "basop_util.h" #include "rom_com.h" #include "prot_fx.h" +#include "prot.h" #define GET_ADJ2( T, L, F ) ( ( ( L ) << ( F ) ) - ( T ) ) void UnmapIndex( @@ -189,6 +190,7 @@ Word16 CountIndexBits( return result; } +#define WMC_TOOL_SKIP Word32 tcx_hm_render( Word32 lag, /* i: pitch lag Q0 */ @@ -247,6 +249,7 @@ Word32 tcx_hm_render( return 0; } + void tcx_hm_modify_envelope( Word16 gain, /* i: HM gain Q11 */ Word32 lag, /* i: pitch lag Q0 */ @@ -292,3 +295,5 @@ void tcx_hm_modify_envelope( k = extract_l( L_shr( imult3216( lag, h ), fract_res ) ); /* Q0 */ } } + +#undef WMC_TOOL_SKIP diff --git a/lib_com/arith_coder.c b/lib_com/arith_coder.c deleted file mode 100644 index a6bf4520af857f36a254a76a8fbd354370159711..0000000000000000000000000000000000000000 --- a/lib_com/arith_coder.c +++ /dev/null @@ -1,200 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include -#include "options.h" -#include -#include "cnst.h" -#include "prot.h" -#include "basop_util.h" -#include "basop_proto_func.h" -#include "wmc_auto.h" - - -#define WMC_TOOL_SKIP - -/*-------------------------------------------------------* - * expfp_evs() - * - * Fixed point implementation of exp() - *-------------------------------------------------------*/ - -/*! r: Q15 */ -Word16 expfp_evs_fx( - const Word16 x, /* i : mantissa Q15-e */ - const Word16 x_e /* i : exponent Q0 */ -) -{ - Word16 xi, xf, tmp; - Word16 b0, b1, b2, b3; - Word32 y, L_tmp; - - assert( x <= 0 ); - - L_tmp = L_negate( L_shl( L_deposit_h( x ), sub( x_e, 15 ) ) ); /* Q16 */ - - /* split into integer and fractional parts */ - xi = round_fx( L_tmp ); /* Q0 */ - xf = extract_l( L_tmp ); /* Q16 */ - - BASOP_SATURATE_WARNING_OFF; - xf = negate( xf ); - BASOP_SATURATE_WARNING_ON; - - /* Fractional part */ - /* y = 65536 - + xf - + ((xf*xf) / (2*65536)) - + ((((((xf*xf) / (2*65536))*xf) / 65536)*65536/3) / 65536) - + ((((((((xf*xf) / (2*65536))*xf) / 65536)*65536/3) / 65536)*xf) / (4*65536)); */ - y = L_mac0( 65536, xf, 1 ); /* Q16 */ - tmp = shr( mult( xf, xf ), 2 ); /* Q15 */ - y = L_mac0( y, tmp, 1 ); /* Q16 */ - tmp = shr( mult( shr( mult( tmp, xf ), 1 ), 65536 / 3 ), 1 ); - y = L_mac0( y, tmp, 1 ); /* Q16 */ - tmp = shr( mult( tmp, xf ), 3 ); - y = L_mac0( y, tmp, 1 ); /* Q16 */ - - /* Integer part */ - b0 = s_and( xi, 1 ); - b1 = s_and( xi, 2 ); - b2 = s_and( xi, 4 ); - b3 = s_and( xi, 8 ); - - if ( b0 != 0 ) - y = Mpy_32_16_1( y, 24109 ); /* exp(-1) in -1Q16 */ - if ( b1 != 0 ) - y = Mpy_32_16_1( y, 17739 ); /* exp(-2) in -2Q17 */ - if ( b2 != 0 ) - y = Mpy_32_16_1( y, 19205 ); /* exp(-4) in -5Q20 */ - if ( b3 != 0 ) - y = Mpy_32_16_1( y, 22513 ); /* exp(-8) in -11Q26 */ - - /* scaling: -1*b0 - 2*b1 -5*b2 -11*b3 */ - y = L_shr( y, add( add( xi, shr( xi, 2 ) ), shr( b3, 3 ) ) ); /* Q16 */ - - /* zero for xi >= 16 */ - if ( shr( xi, 4 ) > 0 ) - { - y = L_deposit_l( 0 ); - move16(); - } - - return round_fx( L_shl( y, 15 ) ); -} - -/*-------------------------------------------------------* - * powfp_odd2_evs() - * - * Fixed point implementation of pow(), where base is fixed point (16/16) and exponent a small *odd* integer - *-------------------------------------------------------*/ -/* - * - * Returns: *pout1 = ( (base/65536)^(2*exp - 1) ) * 65536 - * *pout2 = ( (base/65536)^(2*exp + 1) ) * 65536 - * - * NOTE: This function must be in sync with ari_decode_14bits_pow_ivas() */ - - -/*------------------------------------------------------------------------ - * Function: tcx_arith_render_envelope_flt - * - * Calculate the envelope of the spectrum based on the LPC shape. The - * envelope is used in a perceptual domain, whereby the LPC shape has to - * be multiplied by the perceptual model. - * Operations that are performed on the spectrum, which change the magnitude - * expectation of lines, such as low-frequency emphasis, are included in the - * envelope shape. - * NOTE: This function must be bit-exact on all platforms such that encoder - * and decoder remain synchronized. - *-------------------------------------------------------------------------*/ - -void tcx_arith_render_envelope_ivas_fx( - const Word16 A_ind[], /* i : LPC coefficients of signal envelope Q12*/ - const Word16 L_frame, /* i : number of spectral lines Q0*/ - const Word16 L_spec, /* i : length of the coded spectrum Q0*/ - const Word16 preemph_fac, /* i : pre-emphasis factor Q15*/ - const Word16 gamma_w, /* i : A_ind -> weighted envelope factor Q15*/ - const Word16 gamma_uw, /* i : A_ind -> non-weighted envelope factor Q14*/ - Word32 env[] /* o : shaped signal envelope Q16*/ -) -{ - Word16 k; - Word16 tmpA[M + 2]; - Word16 signal_env[FDNS_NPTS], signal_env_e[FDNS_NPTS]; - Word16 gainlpc[FDNS_NPTS], gainlpc_e[FDNS_NPTS]; - - /* Compute perceptual LPC envelope, transform it into freq.-domain gains */ - basop_weight_a( A_ind, tmpA, gamma_w ); - basop_lpc2mdct_fx( tmpA, M, NULL, NULL, gainlpc, gainlpc_e ); - - /* Add pre-emphasis tilt to LPC envelope, transform LPC into MDCT gains */ - basop_weight_a_inv( A_ind, signal_env, gamma_uw ); - basop_E_LPC_a_add_tilt( signal_env, tmpA, preemph_fac ); - basop_lpc2mdct_fx( tmpA, M + 1, signal_env, signal_env_e, NULL, NULL ); - - /* Compute weighted signal envelope in perceptual domain */ - FOR( k = 0; k < FDNS_NPTS; k++ ) - { - signal_env[k] = mult_r( signal_env[k], gainlpc[k] ); /* exp(signal_env_e + gainlpc_e) */ - move16(); - signal_env_e[k] = add( signal_env_e[k], gainlpc_e[k] ); - move16(); - } - - /* Adaptive low frequency emphasis */ - FOR( k = 0; k < L_frame; k++ ) - { - env[k] = 0x10000; /* 1 in Q16 */ - move32(); - } - - basop_PsychAdaptLowFreqDeemph_fx( env, gainlpc, gainlpc_e, NULL ); - - /* Scale from FDNS_NPTS to L_frame and multiply LFE gains */ - basop_mdct_noiseShaping_interp_fx( env, L_frame, signal_env, signal_env_e ); - - FOR( k = L_frame; k < L_spec; ++k ) - { - env[k] = env[k - 1]; /* Q16 */ - move32(); - } - - return; -} - -#undef WMC_TOOL_SKIP diff --git a/lib_com/arith_coder_fx.c b/lib_com/arith_coder_fx.c index 58ab1317573f65e85d06813bd12ab9862a90bcd9..12a4fa6702649fe221fa2124e28407fea64f51d4 100644 --- a/lib_com/arith_coder_fx.c +++ b/lib_com/arith_coder_fx.c @@ -6,7 +6,9 @@ #include #include "options.h" #include "prot_fx.h" +#include "prot.h" #include "basop_util.h" +#include "basop_proto_func.h" #include "cnst.h" /* Fixed point implementation of exp(negate()) */ @@ -497,3 +499,157 @@ void tcx_arith_render_envelope( move32(); } } + +#define WMC_TOOL_SKIP + +/*-------------------------------------------------------* + * expfp_evs() + * + * Fixed point implementation of exp() + *-------------------------------------------------------*/ + +/*! r: Q15 */ +Word16 expfp_evs_fx( + const Word16 x, /* i : mantissa Q15-e */ + const Word16 x_e /* i : exponent Q0 */ +) +{ + Word16 xi, xf, tmp; + Word16 b0, b1, b2, b3; + Word32 y, L_tmp; + + assert( x <= 0 ); + + L_tmp = L_negate( L_shl( L_deposit_h( x ), sub( x_e, 15 ) ) ); /* Q16 */ + + /* split into integer and fractional parts */ + xi = round_fx( L_tmp ); /* Q0 */ + xf = extract_l( L_tmp ); /* Q16 */ + + BASOP_SATURATE_WARNING_OFF; + xf = negate( xf ); + BASOP_SATURATE_WARNING_ON; + + /* Fractional part */ + /* y = 65536 + + xf + + ((xf*xf) / (2*65536)) + + ((((((xf*xf) / (2*65536))*xf) / 65536)*65536/3) / 65536) + + ((((((((xf*xf) / (2*65536))*xf) / 65536)*65536/3) / 65536)*xf) / (4*65536)); */ + y = L_mac0( 65536, xf, 1 ); /* Q16 */ + tmp = shr( mult( xf, xf ), 2 ); /* Q15 */ + y = L_mac0( y, tmp, 1 ); /* Q16 */ + tmp = shr( mult( shr( mult( tmp, xf ), 1 ), 65536 / 3 ), 1 ); + y = L_mac0( y, tmp, 1 ); /* Q16 */ + tmp = shr( mult( tmp, xf ), 3 ); + y = L_mac0( y, tmp, 1 ); /* Q16 */ + + /* Integer part */ + b0 = s_and( xi, 1 ); + b1 = s_and( xi, 2 ); + b2 = s_and( xi, 4 ); + b3 = s_and( xi, 8 ); + + if ( b0 != 0 ) + y = Mpy_32_16_1( y, 24109 ); /* exp(-1) in -1Q16 */ + if ( b1 != 0 ) + y = Mpy_32_16_1( y, 17739 ); /* exp(-2) in -2Q17 */ + if ( b2 != 0 ) + y = Mpy_32_16_1( y, 19205 ); /* exp(-4) in -5Q20 */ + if ( b3 != 0 ) + y = Mpy_32_16_1( y, 22513 ); /* exp(-8) in -11Q26 */ + + /* scaling: -1*b0 - 2*b1 -5*b2 -11*b3 */ + y = L_shr( y, add( add( xi, shr( xi, 2 ) ), shr( b3, 3 ) ) ); /* Q16 */ + + /* zero for xi >= 16 */ + if ( shr( xi, 4 ) > 0 ) + { + y = L_deposit_l( 0 ); + move16(); + } + + return round_fx( L_shl( y, 15 ) ); +} + +/*-------------------------------------------------------* + * powfp_odd2_evs() + * + * Fixed point implementation of pow(), where base is fixed point (16/16) and exponent a small *odd* integer + *-------------------------------------------------------*/ +/* + * + * Returns: *pout1 = ( (base/65536)^(2*exp - 1) ) * 65536 + * *pout2 = ( (base/65536)^(2*exp + 1) ) * 65536 + * + * NOTE: This function must be in sync with ari_decode_14bits_pow_ivas() */ + + +/*------------------------------------------------------------------------ + * Function: tcx_arith_render_envelope_flt + * + * Calculate the envelope of the spectrum based on the LPC shape. The + * envelope is used in a perceptual domain, whereby the LPC shape has to + * be multiplied by the perceptual model. + * Operations that are performed on the spectrum, which change the magnitude + * expectation of lines, such as low-frequency emphasis, are included in the + * envelope shape. + * NOTE: This function must be bit-exact on all platforms such that encoder + * and decoder remain synchronized. + *-------------------------------------------------------------------------*/ + +void tcx_arith_render_envelope_ivas_fx( + const Word16 A_ind[], /* i : LPC coefficients of signal envelope Q12*/ + const Word16 L_frame, /* i : number of spectral lines Q0*/ + const Word16 L_spec, /* i : length of the coded spectrum Q0*/ + const Word16 preemph_fac, /* i : pre-emphasis factor Q15*/ + const Word16 gamma_w, /* i : A_ind -> weighted envelope factor Q15*/ + const Word16 gamma_uw, /* i : A_ind -> non-weighted envelope factor Q14*/ + Word32 env[] /* o : shaped signal envelope Q16*/ +) +{ + Word16 k; + Word16 tmpA[M + 2]; + Word16 signal_env[FDNS_NPTS], signal_env_e[FDNS_NPTS]; + Word16 gainlpc[FDNS_NPTS], gainlpc_e[FDNS_NPTS]; + + /* Compute perceptual LPC envelope, transform it into freq.-domain gains */ + basop_weight_a( A_ind, tmpA, gamma_w ); + basop_lpc2mdct_fx( tmpA, M, NULL, NULL, gainlpc, gainlpc_e ); + + /* Add pre-emphasis tilt to LPC envelope, transform LPC into MDCT gains */ + basop_weight_a_inv( A_ind, signal_env, gamma_uw ); + basop_E_LPC_a_add_tilt( signal_env, tmpA, preemph_fac ); + basop_lpc2mdct_fx( tmpA, M + 1, signal_env, signal_env_e, NULL, NULL ); + + /* Compute weighted signal envelope in perceptual domain */ + FOR( k = 0; k < FDNS_NPTS; k++ ) + { + signal_env[k] = mult_r( signal_env[k], gainlpc[k] ); /* exp(signal_env_e + gainlpc_e) */ + move16(); + signal_env_e[k] = add( signal_env_e[k], gainlpc_e[k] ); + move16(); + } + + /* Adaptive low frequency emphasis */ + FOR( k = 0; k < L_frame; k++ ) + { + env[k] = 0x10000; /* 1 in Q16 */ + move32(); + } + + basop_PsychAdaptLowFreqDeemph_fx( env, gainlpc, gainlpc_e, NULL ); + + /* Scale from FDNS_NPTS to L_frame and multiply LFE gains */ + basop_mdct_noiseShaping_interp_fx( env, L_frame, signal_env, signal_env_e ); + + FOR( k = L_frame; k < L_spec; ++k ) + { + env[k] = env[k - 1]; /* Q16 */ + move32(); + } + + return; +} + +#undef WMC_TOOL_SKIP diff --git a/lib_com/bitalloc.c b/lib_com/bitalloc.c deleted file mode 100644 index c342c35a582cc99f0acf11d1d83bf3792e2a6c22..0000000000000000000000000000000000000000 --- a/lib_com/bitalloc.c +++ /dev/null @@ -1,542 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include "options.h" -#include "cnst.h" -#include "rom_com.h" -#include "prot.h" -#include "prot_fx.h" -#include "basop_util.h" -#include "basop_proto_func.h" -#include "wmc_auto.h" - - -/*-------------------------------------------------------------------* - * Bit_group() - * - * bit allocation in group - *-------------------------------------------------------------------*/ -static void Bit_group_fx( - Word16 *y, /* i : norm of sub-band Q0*/ - Word16 start_band, /* i : start band indices Q0*/ - Word16 end_band, /* i : end band indices Q0*/ - Word16 Bits, /* i : number of allocation bits in group Q0*/ - Word16 thr, /* i : smallest bit number for allocation in group Q0*/ - Word32 *Rsubband_fx, /* o : bit allocation of sub-band Q21*/ - Word16 *fac_fx /* i : weight factor for norm of sub-band Q13*/ -) -{ - Word16 i, j, k, m, y_index[16], index[16], bit_band, band_num, norm_sum; - Word16 tmp, exp; - Word16 factor_fx; - Word32 R_temp_fx[16], R_sum_fx = 0, R_sum_org_fx = 0, Bits_avg_fx = 0; - Word32 L_tmp; - UWord32 lo; - move32(); - move32(); - move32(); - - /* initialization for bit allocation in one group*/ - tmp = 6554; - move16(); /*Q15 1/5 */ - IF( sub( thr, 5 ) == 0 ) - { - tmp = 6554; - move16(); /*Q15 1/5 */ - } - IF( sub( thr, 6 ) == 0 ) - { - tmp = 5462; - move16(); /*Q15 1/6 */ - } - IF( sub( thr, 7 ) == 0 ) - { - tmp = 4682; - move16(); /*Q15 1/7 */ - } - bit_band = mult( tmp, Bits ); /*0+15-15=0, Q0 */ - band_num = sub( end_band, start_band ); - - FOR( i = 0; i < band_num; i++ ) - { - y_index[i] = y[i + start_band]; /* Q0 */ - move16(); - index[i] = i; /* Q0 */ - move16(); - } - - /* Rearrange norm vector in decreasing order */ - reordvct_fx( y_index, band_num, index ); - /* norm vector modification */ - - factor_fx = div_s( 1, band_num ); /*Q15 */ - IF( sub( thr, 5 ) > 0 ) - { - FOR( i = 0; i < band_num; i++ ) - { - L_tmp = L_mult( i, factor_fx ); /*Q16 */ - tmp = extract_h( L_shl( L_tmp, 13 ) ); /*Q13 */ - tmp = sub( fac_fx[1], tmp ); /*Q13 */ - L_tmp = L_mult( y_index[i], tmp ); /*Q14 */ - y_index[i] = extract_h( L_shl( L_tmp, 2 ) ); /*Q0 */ - } - } - ELSE - { - FOR( i = 0; i < band_num; i++ ) - { - L_tmp = L_mult( i, factor_fx ); /*Q16 */ - tmp = extract_h( L_shl( L_tmp, 13 ) ); /*Q13 */ - tmp = sub( fac_fx[0], tmp ); /*Q13 */ - L_tmp = L_mult( y_index[i], tmp ); /*Q14 */ - y_index[i] = extract_h( L_shl( L_tmp, 2 ) ); /*Q0 */ - } - } - - /* bit allocation based on modified norm */ - L_tmp = L_mult( band_num, 24576 ); /*Q16 */ - tmp = extract_h( L_shl( L_tmp, 7 ) ); /*Q7 */ - IF( sub( shl( bit_band, 7 ), tmp ) >= 0 ) - { - FOR( j = 0; j < band_num; j++ ) - { - IF( y_index[j] < 0 ) - { - y_index[j] = 0; - move16(); - } - R_temp_fx[j] = 2097152; /* 1 in Q21 */ - move16(); - } - - i = sub( band_num, 1 ); - norm_sum = 0; /*Q0 */ - FOR( k = 0; k <= i; k++ ) - { - norm_sum = add( norm_sum, y_index[k] ); /* Q0 */ - } - - FOR( j = 0; j < band_num; j++ ) - { - IF( norm_sum == 0 ) - { - FOR( k = 0; k <= i; k++ ) - { - R_temp_fx[k] = 0; - move32(); /*Q21 */ - } - } - ELSE - { - exp = norm_s( norm_sum ); - tmp = shl( norm_sum, exp ); /*Q(exp) */ - tmp = div_s( 16384, tmp ); /*Q(15+14-exp) */ - Bits_avg_fx = L_mult( tmp, Bits ); /*Q(30-exp) */ - - FOR( k = 0; k <= i; k++ ) - { - L_tmp = L_shl( L_deposit_l( y_index[k] ), 24 ); - Mpy_32_32_ss( Bits_avg_fx, L_tmp, &L_tmp, &lo ); /*Q(30-exp) */ - - R_temp_fx[k] = L_shl( L_tmp, sub( exp, 2 ) ); - move32(); /*Q21 */ - } - } - - L_tmp = L_shl( L_deposit_l( thr ), 21 ); /*Q21 */ - IF( L_sub( R_temp_fx[i], L_tmp ) < 0 ) - { - R_temp_fx[i] = 0; - move32(); - norm_sum = sub( norm_sum, y_index[i] ); /* Q0 */ - i--; - } - ELSE - { - BREAK; - } - } - } - ELSE - { - FOR( j = 0; j < bit_band; j++ ) - { - IF( y_index[j] < 0 ) - { - y_index[j] = 0; - move16(); - } - R_temp_fx[j] = 2097152; /* 1 in Q21 */ - move32(); - } - - FOR( j = bit_band; j < band_num; j++ ) - { - R_temp_fx[j] = 0; - move32(); - } - - norm_sum = 0; - FOR( k = 0; k < bit_band; k++ ) - { - norm_sum = add( norm_sum, y_index[k] ); /* Q0 */ - } - - i = bit_band; - FOR( j = 0; j < bit_band; j++ ) - { - IF( norm_sum == 0 ) - { - FOR( k = 0; k < i; k++ ) - { - R_temp_fx[k] = 0; - move32(); /*Q21 */ - } - } - ELSE - { - exp = norm_s( norm_sum ); - tmp = shl( norm_sum, exp ); /*Q(exp) */ - tmp = div_s( 16384, tmp ); /*Q(15+14-exp) */ - Bits_avg_fx = L_mult( tmp, Bits ); /*Q(30-exp) */ - FOR( k = 0; k < i; k++ ) - { - L_tmp = L_shl( L_deposit_l( y_index[k] ), 24 ); - Mpy_32_32_ss( Bits_avg_fx, L_tmp, &L_tmp, &lo ); /*Q(30-exp) */ - R_temp_fx[k] = L_shl( L_tmp, sub( exp, 2 ) ); - move32(); /*Q21 */ - } - } - R_sum_fx = 0; - L_tmp = L_shl( L_deposit_l( thr ), 21 ); /*Q21 */ - FOR( k = 0; k < i; k++ ) - { - IF( L_sub( R_temp_fx[k], L_tmp ) < 0 ) - { - FOR( m = k; m < i; m++ ) - { - norm_sum = sub( norm_sum, y_index[m] ); /* Q0 */ - R_temp_fx[m] = 0; - move32(); /*Q21 */ - } - i = k; - BREAK; - } - ELSE - { - R_sum_fx = L_add( R_sum_fx, R_temp_fx[k] ); - } - } - IF( L_sub( R_sum_fx, R_sum_org_fx ) == 0 ) - { - BREAK; - } - - R_sum_org_fx = R_sum_fx; - } - } - - /* index comeback */ - FOR( k = 0; k < band_num; k++ ) - { - j = index[k]; - move16(); - Rsubband_fx[j + start_band] = R_temp_fx[k]; /* Q21 */ - move32(); - } - - return; -} - -/*-------------------------------------------------------------------* - * BitAllocWB() - * - * WB bit allocation - *-------------------------------------------------------------------*/ - -/*! r: Integer (truncated) number of allocated bits */ -Word16 BitAllocWB( - Word16 *y, /* i : norm of sub-vectors Q0*/ - Word16 B, /* i : number of available bits Q0*/ - Word16 N, /* i : number of sub-vectors Q0*/ - Word16 *R, /* o : bit-allocation indicator Q0*/ - Word16 *Rsubband /* o : sub-band bit-allocation vector (Q3) Q3*/ -) -{ - Word16 t_fx; - Word16 i, j, k, B1, B2, B3, B_saved; - Word16 Rsum_fx, Rsum_sub_fx[3]; - Word32 Ravg_sub_32_fx[3], R_diff_32_fx[2]; - Word16 factor_fx[2]; /*Q13 */ - Word16 BANDS; - Word16 tmp, exp; - Word32 L_tmp, L_tmp1; - Word32 Rsubband_buf[NB_SFM]; - UWord16 lo; - - BANDS = N; /* Q0 */ - move16(); - IF( sub( BANDS, SFM_N ) > 0 ) - { - BANDS = SFM_N; /* Q0 */ - move16(); - } - /* Init Rsubband to non-zero values for bands to be allocated bits */ - FOR( k = 0; k < BANDS; k++ ) - { - Rsubband_buf[k] = 2097152; - move32(); /*1 in Q21 */ - } - /* Calculate the norm sum and average of sub-band */ - Rsum_sub_fx[0] = 0; - FOR( j = 0; j < SFM_G1; j++ ) - { - IF( y[j] > 0 ) - { - Rsum_sub_fx[0] = add( Rsum_sub_fx[0], y[j] ); - move16(); /*Q0 */ - } - } - Ravg_sub_32_fx[0] = L_mult( Rsum_sub_fx[0], 2048 ); - move32(); /*Q16 0+15+1, q15 1/16 =2048 */ - - Rsum_sub_fx[1] = 0; - move32(); - FOR( j = SFM_G1; j < SFM_G1G2; j++ ) - { - IF( y[j] > 0 ) - { - Rsum_sub_fx[1] = add( Rsum_sub_fx[1], y[j] ); - move16(); /*Q0 */ - } - } - Ravg_sub_32_fx[1] = L_mult( Rsum_sub_fx[1], 4096 ); /*16 0+15+1, q15 1/8 =4096 */ - - Rsum_sub_fx[2] = 0; - move16(); - FOR( j = SFM_G1G2; j < BANDS; j++ ) - { - IF( y[j] > 0 ) - { - Rsum_sub_fx[2] = add( Rsum_sub_fx[2], y[j] ); - move16(); /*Q0 */ - } - } - tmp = div_s( 1, BANDS - SFM_G1G2 ); /*Q15 */ - Ravg_sub_32_fx[2] = L_mult( Rsum_sub_fx[2], tmp ); - move32(); /*Q16 */ - - /* Bit allocation for every group */ - tmp = add( Rsum_sub_fx[0], Rsum_sub_fx[1] ); - Rsum_fx = add( tmp, Rsum_sub_fx[2] ); /*Q0 */ - - factor_fx[0] = 16384; /*Q13 move16(); */ - factor_fx[1] = 24576; /*Q13 move16(); */ - move16(); - move16(); - { - R_diff_32_fx[0] = L_sub( Ravg_sub_32_fx[0], Ravg_sub_32_fx[1] ); - move32(); /*Q16 */ - R_diff_32_fx[1] = L_sub( Ravg_sub_32_fx[1], Ravg_sub_32_fx[2] ); - move32(); /*Q16 */ - - IF( L_sub( R_diff_32_fx[0], 393216 /* 32 in Q16 */ ) < 0 && L_sub( R_diff_32_fx[1], 245760 /* 3.75 in Q16 */ ) < 0 ) - { - IF( Rsum_fx == 0 ) - { - B1 = 0; - move16(); - B2 = 0; - move16(); - B3 = 0; - move16(); - } - ELSE - { - exp = norm_s( Rsum_fx ); - tmp = shl( Rsum_fx, exp ); /*Q(exp) */ - tmp = div_s( 16384, tmp ); /*Q(15+14-exp) */ - L_tmp1 = L_mult( B, Rsum_sub_fx[0] ); /*Q1 */ - Mpy_32_16_ss( L_tmp1, tmp, &L_tmp, &lo ); - B1 = extract_h( L_shl( L_tmp, add( exp, 1 ) ) ); /*Q0 */ - IF( L_sub( L_tmp1, L_mult( B1, Rsum_fx ) ) > 0 && L_sub( L_tmp1, L_mult( add( B1, 1 ), Rsum_fx ) ) >= 0 ) - { - B1 = add( B1, 1 ); /* Q0 */ - } - L_tmp1 = L_mult( B, Rsum_sub_fx[1] ); /*Q1 */ - Mpy_32_16_ss( L_tmp1, tmp, &L_tmp, &lo ); /*Q(15-exp) */ - B2 = extract_h( L_shl( L_tmp, add( exp, 1 ) ) ); /*Q0 */ - IF( L_sub( L_tmp1, L_mult( B2, Rsum_fx ) ) > 0 && L_sub( L_tmp1, L_mult( add( B2, 1 ), Rsum_fx ) ) >= 0 ) - { - B2 = add( B2, 1 ); /* Q0 */ - } - L_tmp1 = L_mult( B, Rsum_sub_fx[2] ); /*Q1 */ - Mpy_32_16_ss( L_tmp1, tmp, &L_tmp, &lo ); /*Q(15-exp) */ - B3 = extract_h( L_shl( L_tmp, add( exp, 1 ) ) ); /*Q0 */ - IF( L_sub( L_tmp1, L_mult( B3, Rsum_fx ) ) > 0 && L_sub( L_tmp1, L_mult( add( B3, 1 ), Rsum_fx ) ) >= 0 ) - { - B3 = add( B3, 1 ); /* Q0 */ - } - } - IF( L_sub( Ravg_sub_32_fx[2], 786432 /* 12 in Q16 */ ) > 0 ) - { - B_saved = 0; - move16(); - IF( sub( B1, 288 ) > 0 ) - { - B_saved = sub( B1, 288 ); /* Q0 */ - B1 = 288; /* Q0 */ - move16(); - } - - IF( sub( B2, 256 ) > 0 ) - { - tmp = sub( B2, 256 ); /* Q0 */ - B_saved = add( B_saved, tmp ); /* Q0 */ - B2 = 256; /* Q0 */ - move16(); - } - - IF( sub( B3, 96 ) > 0 ) - { - tmp = sub( B3, 96 ); /* Q0 */ - B_saved = add( B_saved, tmp ); /* Q0 */ - B3 = 96; /* Q0 */ - move16(); - } - - IF( B_saved > 0 ) - { - IF( sub( B1, 288 ) == 0 ) - { - tmp = shr( B_saved, 1 ); /* Q0 */ - B2 = add( B2, tmp ); /* Q0 */ - tmp = sub( B, B1 ); /* Q0 */ - B3 = sub( tmp, B2 ); /* Q0 */ - } - ELSE - { - tmp = shr( B_saved, 1 ); /* Q0 */ - B1 = add( B1, tmp ); /* Q0 */ - IF( sub( B2, 256 ) == 0 ) - { - tmp = sub( B, B1 ); /* Q0 */ - B3 = sub( tmp, B2 ); /* Q0 */ - } - ELSE - { - tmp = sub( B, B1 ); /* Q0 */ - B2 = sub( tmp, B3 ); /* Q0 */ - } - } - } - } - - factor_fx[0] = 16384; - move16(); /*Q13 */ - factor_fx[1] = 12288; - move16(); /*Q13 */ - } - ELSE - { - IF( Rsum_fx == 0 ) - { - B1 = 0; - move16(); - B2 = 0; - move16(); - B3 = B; - move16(); - } - ELSE - { - exp = norm_s( Rsum_fx ); - tmp = shl( Rsum_fx, exp ); /*Q(exp) */ - tmp = div_s( 16384, tmp ); /*Q(15+14-exp) */ - L_tmp1 = L_mult( B, Rsum_sub_fx[0] ); /*Q1 */ - Mpy_32_16_ss( L_tmp1, tmp, &L_tmp, &lo ); /*Q(15-exp) */ - B1 = extract_h( L_shl( L_tmp, add( exp, 1 ) ) ); /*Q0 */ - IF( L_sub( L_tmp1, L_mult( B1, Rsum_fx ) ) > 0 && L_sub( L_tmp1, L_mult( add( B1, 1 ), Rsum_fx ) ) >= 0 ) - { - B1 = add( B1, 1 ); /* Q0 */ - } - Mpy_32_16_ss( 1975684956 /* 0.92 in Q31 */, shl( B, 5 ), &L_tmp1, &lo ); /*Q(31+5-15=21) */ - Mpy_32_16_ss( L_tmp1, shl( Rsum_sub_fx[1], 7 ), &L_tmp1, &lo ); /*Q(21+7-15=13) */ - Mpy_32_16_ss( L_tmp1, tmp, &L_tmp, &lo ); /*Q(27-exp) */ - B2 = extract_h( L_shl( L_tmp, sub( exp, 11 ) ) ); /*Q0 */ - IF( L_sub( L_tmp1, L_shl( L_mult( B2, Rsum_fx ), 12 ) ) > 0 && L_sub( L_add( L_tmp1, 2 ), L_shl( L_mult( add( B2, 1 ), Rsum_fx ), 12 ) ) >= 0 ) - { - B2 = add( B2, 1 ); /* Q0 */ - } - tmp = sub( B, B1 ); /* Q0 */ - B3 = sub( tmp, B2 ); - } - } - } - - IF( sub( Rsum_sub_fx[2], 3 ) < 0 ) - { - B2 = add( B2, B3 ); - B3 = 0; - move16(); - } - - /* Bit allocation in group */ - Bit_group_fx( y, 0, SFM_G1, B1, 5, Rsubband_buf, factor_fx ); - Bit_group_fx( y, SFM_G1, SFM_G1G2, B2, 6, Rsubband_buf, factor_fx ); - Bit_group_fx( y, SFM_G1G2, BANDS, B3, 7, Rsubband_buf, factor_fx ); - FOR( i = 0; i < BANDS; i++ ) - { - Rsubband[i] = extract_l( L_shr( Rsubband_buf[i], 18 ) ); /* Q3 */ - move16(); - } - - /* Calcuate total used bits and initialize R to be used for Noise Filling */ - L_tmp = 0; - move32(); - FOR( i = 0; i < N; i++ ) - { - L_tmp = L_add( L_tmp, Rsubband_buf[i] ); /*Q21 */ - R[i] = extract_h( L_shr( Rsubband_buf[i], 5 ) ); /*Q0 */ - move16(); - } - t_fx = extract_h( L_shr( L_tmp, 5 ) ); /*Q0 */ - - return (Word16) t_fx; -} - -#undef WMC_TOOL_SKIP diff --git a/lib_com/bitalloc_fx.c b/lib_com/bitalloc_fx.c index e7d7602d6a63b4b5c40ef31883b102ca325ed96a..3400b533d9ca4beb7db245b4e4df2ae4d639b7a0 100644 --- a/lib_com/bitalloc_fx.c +++ b/lib_com/bitalloc_fx.c @@ -7,6 +7,7 @@ #include "cnst.h" /* Common constants */ #include "rom_com.h" /* Static table prototypes */ #include "prot_fx.h" /* Function prototypes */ +#include "prot.h" /* Function prototypes */ void bitalloc_fx( Word16 *y, /* i : reordered norm of sub-vectors Q0 */ @@ -219,6 +220,8 @@ void bitalloc_fx( return; } +#define WMC_TOOL_SKIP + /*-------------------------------------------------------------------* * BitAllocF() * @@ -1071,3 +1074,5 @@ Word16 BitAllocWB_fx( /* o : t return (Word16) t_fx; } + +#undef WMC_TOOL_SKIP diff --git a/lib_com/bitallocsum.c b/lib_com/bitallocsum.c deleted file mode 100644 index e7a8ca967132cf8896fc4a231dbaf74eed596840..0000000000000000000000000000000000000000 --- a/lib_com/bitallocsum.c +++ /dev/null @@ -1,41 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include "options.h" -#include "cnst.h" -#include "prot.h" -#include "wmc_auto.h" diff --git a/lib_com/bits_alloc.c b/lib_com/bits_alloc.c deleted file mode 100644 index 9e56eefef4de4223aef93236bf6f116284e5f04f..0000000000000000000000000000000000000000 --- a/lib_com/bits_alloc.c +++ /dev/null @@ -1,43 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include "options.h" -#include "rom_com.h" -#include "prot.h" -#include "ivas_cnst.h" -#include "ivas_rom_com.h" -#include "wmc_auto.h" diff --git a/lib_com/calc_st_com.c b/lib_com/calc_st_com.c deleted file mode 100644 index 7d23dd6f703552ed5f1af9f2941cf4dee9763f27..0000000000000000000000000000000000000000 --- a/lib_com/calc_st_com.c +++ /dev/null @@ -1,42 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include "options.h" -#include -#include "cnst.h" -#include "prot.h" -#include "wmc_auto.h" diff --git a/lib_com/cb_shape.c b/lib_com/cb_shape.c deleted file mode 100644 index e7a8ca967132cf8896fc4a231dbaf74eed596840..0000000000000000000000000000000000000000 --- a/lib_com/cb_shape.c +++ /dev/null @@ -1,41 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include "options.h" -#include "cnst.h" -#include "prot.h" -#include "wmc_auto.h" diff --git a/lib_com/codec_tcx_common_flt.c b/lib_com/codec_tcx_common_flt.c deleted file mode 100644 index 825401325748d89d4db5894372ff8dd2e53d76ec..0000000000000000000000000000000000000000 --- a/lib_com/codec_tcx_common_flt.c +++ /dev/null @@ -1,41 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include "options.h" -#include -#include "prot.h" -#include "wmc_auto.h" diff --git a/lib_com/dlpc_bfi.c b/lib_com/dlpc_bfi.c deleted file mode 100644 index 97a511fb6147d83e4e1ad4814d4e5e7162d51f90..0000000000000000000000000000000000000000 --- a/lib_com/dlpc_bfi.c +++ /dev/null @@ -1,42 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include -#include "options.h" -#include "prot.h" -#include "rom_com.h" -#include "wmc_auto.h" diff --git a/lib_com/edct.c b/lib_com/edct.c deleted file mode 100644 index 9fd122c96cbbe9be7a77dc5c1c15e2ad7838f108..0000000000000000000000000000000000000000 --- a/lib_com/edct.c +++ /dev/null @@ -1,43 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include "options.h" -#include "cnst.h" -#include "rom_com.h" -#include "prot.h" -#include "wmc_auto.h" -#include /* for cosf, sinf */ diff --git a/lib_com/gs_inact_switching.c b/lib_com/gs_inact_switching.c deleted file mode 100644 index d441f6ead49ddcb3a6a1ffab0962633db8157cd0..0000000000000000000000000000000000000000 --- a/lib_com/gs_inact_switching.c +++ /dev/null @@ -1,43 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include "options.h" -#include -#include "cnst.h" -#include "rom_com.h" -#include "prot.h" -#include "wmc_auto.h" diff --git a/lib_com/guided_plc_util.c b/lib_com/guided_plc_util.c deleted file mode 100644 index fc894ba6cc3b0f6891e5522d7bdaa893786ada84..0000000000000000000000000000000000000000 --- a/lib_com/guided_plc_util.c +++ /dev/null @@ -1,41 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include "options.h" -#include "prot.h" -#include "rom_com.h" -#include "wmc_auto.h" diff --git a/lib_com/hq2_bit_alloc.c b/lib_com/hq2_bit_alloc.c deleted file mode 100644 index 90cf1d45aabdba7e86c388d2d07ff33d806d1faa..0000000000000000000000000000000000000000 --- a/lib_com/hq2_bit_alloc.c +++ /dev/null @@ -1,45 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include "options.h" -#include -#include "prot.h" -#include "prot_fx.h" -#include "rom_com.h" -#include "basop_util.h" -#include "stl.h" -#include "wmc_auto.h" diff --git a/lib_com/hq2_noise_inject.c b/lib_com/hq2_noise_inject.c deleted file mode 100644 index 825401325748d89d4db5894372ff8dd2e53d76ec..0000000000000000000000000000000000000000 --- a/lib_com/hq2_noise_inject.c +++ /dev/null @@ -1,41 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include "options.h" -#include -#include "prot.h" -#include "wmc_auto.h" diff --git a/lib_com/hq_bit_allocation.c b/lib_com/hq_bit_allocation.c deleted file mode 100644 index 0fe8682daace6673130ca2ca05de2a188e8e2ae0..0000000000000000000000000000000000000000 --- a/lib_com/hq_bit_allocation.c +++ /dev/null @@ -1,42 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include "options.h" -#include "cnst.h" -#include "prot.h" -#include "rom_com.h" -#include "wmc_auto.h" diff --git a/lib_com/hq_tools.c b/lib_com/hq_tools.c deleted file mode 100644 index 8e752f0ac516550ba25f4c9dcce588dfd9e16b42..0000000000000000000000000000000000000000 --- a/lib_com/hq_tools.c +++ /dev/null @@ -1,42 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include "options.h" -#include -#include "prot.h" -#include "rom_com.h" -#include "wmc_auto.h" diff --git a/lib_com/hvq_pvq_bitalloc.c b/lib_com/hvq_pvq_bitalloc.c deleted file mode 100644 index 0fe8682daace6673130ca2ca05de2a188e8e2ae0..0000000000000000000000000000000000000000 --- a/lib_com/hvq_pvq_bitalloc.c +++ /dev/null @@ -1,42 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include "options.h" -#include "cnst.h" -#include "prot.h" -#include "rom_com.h" -#include "wmc_auto.h" diff --git a/lib_com/igf_base.c b/lib_com/igf_base.c deleted file mode 100644 index 97a511fb6147d83e4e1ad4814d4e5e7162d51f90..0000000000000000000000000000000000000000 --- a/lib_com/igf_base.c +++ /dev/null @@ -1,42 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include -#include "options.h" -#include "prot.h" -#include "rom_com.h" -#include "wmc_auto.h" diff --git a/lib_com/index_pvq_opt.c b/lib_com/index_pvq_opt.c deleted file mode 100644 index dca2e826c7bee42db50083e4bf3f80003fcfcaa6..0000000000000000000000000000000000000000 --- a/lib_com/index_pvq_opt.c +++ /dev/null @@ -1,47 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include -#include "options.h" -#include -#include "cnst.h" -#include "rom_com.h" -#include "prot.h" -#include "wmc_auto.h" - - -/* local constants for indexing functions c-code clarity */ diff --git a/lib_com/isf_dec_amr_wb.c b/lib_com/isf_dec_amr_wb.c deleted file mode 100644 index 935fc30604a263489a8a706422f92f0db17454a8..0000000000000000000000000000000000000000 --- a/lib_com/isf_dec_amr_wb.c +++ /dev/null @@ -1,48 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include "options.h" -#include "cnst.h" -#include "rom_com.h" -#include "prot.h" -#include "wmc_auto.h" - -/*---------------------------------------------------------------------* - * isf_dec_amr_wb() - * - * Decoding of ISF parameters in AMR-WB IO mode - *---------------------------------------------------------------------*/ diff --git a/lib_com/ivas_agc_com.c b/lib_com/ivas_agc_com.c deleted file mode 100644 index 5f9e5fc5cf723273946087fd70e9ea5f9006f141..0000000000000000000000000000000000000000 --- a/lib_com/ivas_agc_com.c +++ /dev/null @@ -1,40 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of 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" -#include "cnst.h" -#include "ivas_cnst.h" -#include "ivas_prot.h" -#include -#include "wmc_auto.h" -#include "prot.h" diff --git a/lib_com/ivas_fb_mixer.c b/lib_com/ivas_fb_mixer.c index 5d06f59a5f281dc3abfe1260f0b109c85ed14975..44135df2f48931e4c6bdedf0e95380cd8e605abf 100644 --- a/lib_com/ivas_fb_mixer.c +++ b/lib_com/ivas_fb_mixer.c @@ -287,14 +287,8 @@ ivas_error ivas_FB_mixer_open_fx( return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for FB mixer encoder" ); } set32_fx( hFbMixer->ppFilterbank_prior_input_fx[i], 0, fb_cfg->prior_input_length ); - hFbMixer->q_ppFilterbank_prior_input_fx[i] = Q31; - move16(); } -#ifdef MSAN_FIX - set16_fx( hFbMixer->q_ppFilterbank_prior_input_fx, Q31, IVAS_MAX_FB_MIXER_IN_CH ); -#endif - test(); IF( ( NE_16( fb_cfg->active_w_mixing, -1 ) ) && ( fb_cfg->num_out_chans > 0 ) ) { @@ -549,32 +543,9 @@ void ivas_fb_mixer_pcm_ingest_fx( FOR( i = 0; i < fb_cfg->num_in_chans; i++ ) { - Word16 q_temp = s_min( hFbMixer->q_ppFilterbank_prior_input_fx[i], q_data_fix ); - - - // mvr2r(&hFbMixer->ppFilterbank_prior_input[i][fb_cfg->prior_input_length - frame_len], ppOut_pcm[i], frame_len); Copy32( &hFbMixer->ppFilterbank_prior_input_fx[i][fb_cfg->prior_input_length - frame_len], ppOut_pcm[i], frame_len ); - - IF( LT_16( q_temp, hFbMixer->q_ppFilterbank_prior_input_fx[i] ) ) - { - FOR( Word16 x = 0; x < frame_len; x++ ) - { - ppOut_pcm[i][x] = L_shr( ppOut_pcm[i][x], sub( hFbMixer->q_ppFilterbank_prior_input_fx[i], q_temp ) ); - move32(); - } - } - // mvr2r(pcm_in[HOA_md_ind[i]], &ppOut_pcm[i][frame_len], frame_len); Copy32( pcm_in[HOA_md_ind[i]], &ppOut_pcm[i][frame_len], frame_len ); - - IF( LT_16( q_temp, q_data_fix ) ) - { - FOR( Word16 x = frame_len; x < shl( frame_len, 1 ); x++ ) - { - ppOut_pcm[i][x] = L_shr( ppOut_pcm[i][x], sub( q_data_fix, q_temp ) ); - move32(); - } - } - q_ppOut_pcm[i] = q_temp; + q_ppOut_pcm[i] = q_data_fix; move16(); } diff --git a/lib_com/ivas_mdct_imdct.c b/lib_com/ivas_mdct_imdct.c deleted file mode 100644 index 813269dfe64354e2ff421bdc423c10d329769689..0000000000000000000000000000000000000000 --- a/lib_com/ivas_mdct_imdct.c +++ /dev/null @@ -1,39 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of 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" -#include "prot.h" -#include "ivas_prot.h" -#include "ivas_rom_com.h" -#include "ivas_stat_com.h" -#include "wmc_auto.h" diff --git a/lib_com/ivas_stat_com.h b/lib_com/ivas_stat_com.h index 54ed08004b9302f20c85a51c5e3588b6c1de0ba4..090db04dbb413f44c2491d822da03799d7a990f9 100644 --- a/lib_com/ivas_stat_com.h +++ b/lib_com/ivas_stat_com.h @@ -729,9 +729,8 @@ typedef struct ivas_fb_mixer_state_structure ivas_filterbank_t *pFb; Word32 *ppFilterbank_inFR_re_fx[IVAS_MAX_FB_MIXER_IN_CH]; Word32 *ppFilterbank_inFR_im_fx[IVAS_MAX_FB_MIXER_IN_CH]; - Word32 *ppFilterbank_prior_input_fx[IVAS_MAX_FB_MIXER_IN_CH]; + Word32 *ppFilterbank_prior_input_fx[IVAS_MAX_FB_MIXER_IN_CH]; /* Q(q_data_fx) */ Word16 q_ppFilterbank_inFR[IVAS_MAX_FB_MIXER_IN_CH]; - Word16 q_ppFilterbank_prior_input_fx[IVAS_MAX_FB_MIXER_IN_CH]; Word32 *prior_mixer_fx[IVAS_MAX_FB_MIXER_OUT_CH][IVAS_MAX_SPAR_FB_MIXER_IN_CH]; Word16 q_prior_mixer_fx; /* store sin part in const table (no need to store 1s and 0s, no need to do windowing for 1's and 0's as well) */ diff --git a/lib_com/residu.c b/lib_com/residu.c deleted file mode 100644 index 2288b5e6e139c2a94f8c9463f95b26a24fa72969..0000000000000000000000000000000000000000 --- a/lib_com/residu.c +++ /dev/null @@ -1,99 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include "options.h" -#include "cnst.h" -#include "prot.h" -#include "rom_com.h" -#include "wmc_auto.h" - -/*--------------------------------------------------------------------* - * residu() - * - * Compute the LP residual by filtering the input speech through A(z) - *--------------------------------------------------------------------*/ - -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; -} - -/*--------------------------------------------------------------------* - * calc_residu() - * - * Compute the LP residual by filtering the input through A(z) in all subframes - *--------------------------------------------------------------------*/ - -void calc_residu( - const float *speech, /* i : weighted speech signal */ - float *res, /* o : residual signal */ - const float *p_Aq, /* i : quantized LP filter coefficients */ - const int16_t L_frame /* i : size of frame */ -) -{ - int16_t i_subfr; - - for ( i_subfr = 0; i_subfr < L_frame; i_subfr += L_SUBFR ) - { - /* calculate the residual signal */ - residu( p_Aq, M, &speech[i_subfr], &res[i_subfr], L_SUBFR ); - - /* next subframe */ - p_Aq += ( M + 1 ); - } - - return; -} diff --git a/lib_com/stab_est.c b/lib_com/stab_est.c deleted file mode 100644 index d441f6ead49ddcb3a6a1ffab0962633db8157cd0..0000000000000000000000000000000000000000 --- a/lib_com/stab_est.c +++ /dev/null @@ -1,43 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include "options.h" -#include -#include "cnst.h" -#include "rom_com.h" -#include "prot.h" -#include "wmc_auto.h" diff --git a/lib_com/stat_noise_uv_mod.c b/lib_com/stat_noise_uv_mod.c deleted file mode 100644 index 825401325748d89d4db5894372ff8dd2e53d76ec..0000000000000000000000000000000000000000 --- a/lib_com/stat_noise_uv_mod.c +++ /dev/null @@ -1,41 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include "options.h" -#include -#include "prot.h" -#include "wmc_auto.h" diff --git a/lib_com/swb_bwe_com.c b/lib_com/swb_bwe_com.c deleted file mode 100644 index d1de09bc73bcde0f9193c0b1d468183cb122cda9..0000000000000000000000000000000000000000 --- a/lib_com/swb_bwe_com.c +++ /dev/null @@ -1,43 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include "options.h" -#include -#include "cnst.h" -#include "prot.h" -#include "rom_com.h" -#include "wmc_auto.h" diff --git a/lib_com/swb_bwe_com_hr.c b/lib_com/swb_bwe_com_hr.c deleted file mode 100644 index b204c8aa9165e753c4dd756f7a7b7d9d87bfc8b3..0000000000000000000000000000000000000000 --- a/lib_com/swb_bwe_com_hr.c +++ /dev/null @@ -1,47 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include "options.h" -#include -#include "prot.h" -#include "wmc_auto.h" - -/*-------------------------------------------------------------------* - * swb_hr_nonzero_subband_noise_fill() - * - * SWB BWE HR noise filling of zero subbands - *-------------------------------------------------------------------*/ diff --git a/lib_com/swb_bwe_com_lr.c b/lib_com/swb_bwe_com_lr.c deleted file mode 100644 index d1de09bc73bcde0f9193c0b1d468183cb122cda9..0000000000000000000000000000000000000000 --- a/lib_com/swb_bwe_com_lr.c +++ /dev/null @@ -1,43 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include "options.h" -#include -#include "cnst.h" -#include "prot.h" -#include "rom_com.h" -#include "wmc_auto.h" diff --git a/lib_com/syn_12k8.c b/lib_com/syn_12k8.c deleted file mode 100644 index e7a8ca967132cf8896fc4a231dbaf74eed596840..0000000000000000000000000000000000000000 --- a/lib_com/syn_12k8.c +++ /dev/null @@ -1,41 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include "options.h" -#include "cnst.h" -#include "prot.h" -#include "wmc_auto.h" diff --git a/lib_com/syn_filt.c b/lib_com/syn_filt.c deleted file mode 100644 index 0603c1c820de761cbf9918b13c82adbf4cd4d345..0000000000000000000000000000000000000000 --- a/lib_com/syn_filt.c +++ /dev/null @@ -1,43 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include "options.h" -#include "cnst.h" -#include "prot.h" -#include "rom_com.h" -#include "wmc_auto.h" -#include diff --git a/lib_com/tcq_position_arith.c b/lib_com/tcq_position_arith.c deleted file mode 100644 index ca921f6644c78b743194411581014537cc60fd9a..0000000000000000000000000000000000000000 --- a/lib_com/tcq_position_arith.c +++ /dev/null @@ -1,44 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include "options.h" -#include -#include "prot.h" -#include "rom_com.h" -#include "basop_util.h" -#include "basop_proto_func.h" -#include "wmc_auto.h" diff --git a/lib_com/tcx_ltp.c b/lib_com/tcx_ltp.c deleted file mode 100644 index b759cf088b66437db2e6e507c683528e81584b20..0000000000000000000000000000000000000000 --- a/lib_com/tcx_ltp.c +++ /dev/null @@ -1,102 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include -#include "options.h" -#include "prot.h" -#include "rom_com.h" -#include "wmc_auto.h" - -/*------------------------------------------------------------------- - * Local constants - *-------------------------------------------------------------------*/ - - -/*------------------------------------------------------------------- - * tcx_ltp_get_zir_flt() - * - * - *-------------------------------------------------------------------*/ - - -/*------------------------------------------------------------------- - * tcx_ltp_synth_filter_flt() - * - * - *-------------------------------------------------------------------*/ - - -/*------------------------------------------------------------------- - * tcx_ltp_synth_filter_zir_flt() - * - * - *-------------------------------------------------------------------*/ - - -/*------------------------------------------------------------------- - * tcx_ltp_synth_filter_fadein_flt() - * - * - *-------------------------------------------------------------------*/ - - -/*------------------------------------------------------------------- - * tcx_ltp_synth_filter_fadeout_flt() - * - * - *-------------------------------------------------------------------*/ - - -/*------------------------------------------------------------------- - *tcx_ltp_synth_filter_10_flt() - * - * - ---------------------------------------------------------------------*/ - - -/*------------------------------------------------------------------- - *tcx_ltp_synth_filter_01_flt() - * - * - ---------------------------------------------------------------------*/ - - -/*------------------------------------------------------------------- - * tcx_ltp_post_flt() - * - * - *-------------------------------------------------------------------*/ diff --git a/lib_com/tcx_mdct.c b/lib_com/tcx_mdct.c deleted file mode 100644 index 7d23dd6f703552ed5f1af9f2941cf4dee9763f27..0000000000000000000000000000000000000000 --- a/lib_com/tcx_mdct.c +++ /dev/null @@ -1,42 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include "options.h" -#include -#include "cnst.h" -#include "prot.h" -#include "wmc_auto.h" diff --git a/lib_com/tcx_utils.c b/lib_com/tcx_utils.c deleted file mode 100644 index 60c85430864a613fa3c2dfcbd3615e28ced71c13..0000000000000000000000000000000000000000 --- a/lib_com/tcx_utils.c +++ /dev/null @@ -1,44 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include -#include "options.h" -#include -#include "cnst.h" -#include "rom_com.h" -#include "prot.h" -#include "wmc_auto.h" diff --git a/lib_com/tec_com_flt.c b/lib_com/tec_com_flt.c deleted file mode 100644 index 3fde444c091d5b459d9263a4f0e8e071ea87a8fc..0000000000000000000000000000000000000000 --- a/lib_com/tec_com_flt.c +++ /dev/null @@ -1,44 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include -#include "options.h" -#include -#include "rom_com.h" -#include "prot.h" -#include "stat_dec.h" -#include "wmc_auto.h" diff --git a/lib_com/trans_direct.c b/lib_com/trans_direct.c deleted file mode 100644 index 0fe8682daace6673130ca2ca05de2a188e8e2ae0..0000000000000000000000000000000000000000 --- a/lib_com/trans_direct.c +++ /dev/null @@ -1,42 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include "options.h" -#include "cnst.h" -#include "prot.h" -#include "rom_com.h" -#include "wmc_auto.h" diff --git a/lib_com/trans_inv.c b/lib_com/trans_inv.c deleted file mode 100644 index d441f6ead49ddcb3a6a1ffab0962633db8157cd0..0000000000000000000000000000000000000000 --- a/lib_com/trans_inv.c +++ /dev/null @@ -1,43 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include "options.h" -#include -#include "cnst.h" -#include "rom_com.h" -#include "prot.h" -#include "wmc_auto.h" diff --git a/lib_com/vlpc_2st_com.c b/lib_com/vlpc_2st_com.c deleted file mode 100644 index ccdf49ed34f76e6fc8e0305d1de54cbdde0ce8fa..0000000000000000000000000000000000000000 --- a/lib_com/vlpc_2st_com.c +++ /dev/null @@ -1,43 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include -#include "options.h" -#include -#include "cnst.h" -#include "prot.h" -#include "wmc_auto.h" diff --git a/lib_com/weight.c b/lib_com/weight.c deleted file mode 100644 index fd4f3cb7c53af6bc1a4a149c6db6799b8f39655e..0000000000000000000000000000000000000000 --- a/lib_com/weight.c +++ /dev/null @@ -1,42 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include "options.h" -#include "cnst.h" -#include "rom_com.h" -#include "prot.h" -#include "wmc_auto.h" diff --git a/lib_com/weight_a.c b/lib_com/weight_a.c deleted file mode 100644 index e748899a9667996f0776eb65127752b66796a660..0000000000000000000000000000000000000000 --- a/lib_com/weight_a.c +++ /dev/null @@ -1,40 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include "options.h" -#include "prot.h" -#include "wmc_auto.h" diff --git a/lib_com/wi.c b/lib_com/wi.c deleted file mode 100644 index d1de09bc73bcde0f9193c0b1d468183cb122cda9..0000000000000000000000000000000000000000 --- a/lib_com/wi.c +++ /dev/null @@ -1,43 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include "options.h" -#include -#include "cnst.h" -#include "prot.h" -#include "rom_com.h" -#include "wmc_auto.h" diff --git a/lib_com/window.c b/lib_com/window.c deleted file mode 100644 index ca01f8f20a64509d60f21fbf51c4b685cb649e3c..0000000000000000000000000000000000000000 --- a/lib_com/window.c +++ /dev/null @@ -1,45 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include -#include "options.h" -#include "prot.h" - -#define WMC_TOOL_SKIP - - -#undef WMC_TOOL_SKIP diff --git a/lib_com/window_ola.c b/lib_com/window_ola.c deleted file mode 100644 index d441f6ead49ddcb3a6a1ffab0962633db8157cd0..0000000000000000000000000000000000000000 --- a/lib_com/window_ola.c +++ /dev/null @@ -1,43 +0,0 @@ -/****************************************************************************************************** - - (C) 2022-2024 IVAS codec Public Collaboration with portions copyright Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository. All Rights Reserved. - - This software is protected by copyright law and by international treaties. - The IVAS codec Public Collaboration consisting of Dolby International AB, Ericsson AB, - Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V., Huawei Technologies Co. LTD., - Koninklijke Philips N.V., Nippon Telegraph and Telephone Corporation, Nokia Technologies Oy, Orange, - Panasonic Holdings Corporation, Qualcomm Technologies, Inc., VoiceAge Corporation, and other - contributors to this repository retain full ownership rights in their respective contributions in - the software. This notice grants no license of any kind, including but not limited to patent - license, nor is any license granted by implication, estoppel or otherwise. - - Contributors are required to enter into the IVAS codec Public Collaboration agreement before making - contributions. - - This software is provided "AS IS", without any express or implied warranties. The software is in the - development stage. It is intended exclusively for experts who have experience with such software and - solely for the purpose of inspection. All implied warranties of non-infringement, merchantability - and fitness for a particular purpose are hereby disclaimed and excluded. - - Any dispute, controversy or claim arising under or in relation to providing this software shall be - submitted to and settled by the final, binding jurisdiction of the courts of Munich, Germany in - accordance with the laws of the Federal Republic of Germany excluding its conflict of law rules and - the United Nations Convention on Contracts on the International Sales of Goods. - -*******************************************************************************************************/ - -/*==================================================================================== - EVS Codec 3GPP TS26.443 Nov 04, 2021. Version 12.14.0 / 13.10.0 / 14.6.0 / 15.4.0 / 16.3.0 - ====================================================================================*/ - -#include -#include "options.h" -#include -#include "cnst.h" -#include "rom_com.h" -#include "prot.h" -#include "wmc_auto.h" diff --git a/lib_dec/ari_hm_dec.c b/lib_dec/ari_hm_dec.c index f2bd6f46c0971e088756fa990dddbbd509b422a6..f290ca9fbebd7a101484a3e805253924c07a84ef 100644 --- a/lib_dec/ari_hm_dec.c +++ b/lib_dec/ari_hm_dec.c @@ -149,7 +149,7 @@ void tcx_hm_decode( return; } - NumTargetBits = CountIndexBits_fx( ( L_frame_m_256 >= 0 ), prm_hm[1] ); + NumTargetBits = CountIndexBits( ( L_frame_m_256 >= 0 ), prm_hm[1] ); NumTargetBits = add( NumTargetBits, targetBits ); @@ -163,12 +163,12 @@ void tcx_hm_decode( /* Convert the index to lag */ test(); - UnmapIndex_fx( prm_hm[1], ( L_frame_m_256 >= 0 ), LtpPitchLag, - ( ( LE_16( NumTargetBits, kSmallerLagsTargetBitsThreshold ) ) || ( L_frame_m_256 < 0 ) ), - &fract_res, &lag ); + UnmapIndex( prm_hm[1], ( L_frame_m_256 >= 0 ), LtpPitchLag, + ( ( LE_16( NumTargetBits, kSmallerLagsTargetBitsThreshold ) ) || ( L_frame_m_256 < 0 ) ), + &fract_res, &lag ); /* Render the harmonic model */ - IF( tcx_hm_render_fx( lag, fract_res, p ) ) + IF( tcx_hm_render( lag, fract_res, p ) ) { /* A bit error was encountered */ *hm_bits = -1; @@ -185,7 +185,7 @@ void tcx_hm_decode( return; } - tcx_hm_modify_envelope_fx( gain, lag, fract_res, p, env, L_frame ); + tcx_hm_modify_envelope( gain, lag, fract_res, p, env, L_frame ); return; diff --git a/lib_enc/cod_tcx_fx.c b/lib_enc/cod_tcx_fx.c index 1a7440e0e9a2a8135255fe78d0802d907443b98c..890f98e12e9b5fa6b4f750cca9d3811999a14db6 100644 --- a/lib_enc/cod_tcx_fx.c +++ b/lib_enc/cod_tcx_fx.c @@ -3781,7 +3781,7 @@ void QuantizeTCXSpectrum_fx( move16(); PeriodicityIndex = SearchPeriodicityIndex_fx( spectrum_fx, NULL, L_spec, sqTargetBits, LtpPitchLag, LtpGain, &RelativeScore_fx ); - NumIndexBits = CountIndexBits_fx( (Word16) GE_16( L_spec, (Word16) 256 ), PeriodicityIndex ); + NumIndexBits = CountIndexBits( (Word16) GE_16( L_spec, (Word16) 256 ), PeriodicityIndex ); IF( st->element_mode > EVS_MONO ) { diff --git a/lib_enc/ivas_core_pre_proc_front.c b/lib_enc/ivas_core_pre_proc_front.c index 2b48d5f322a9273720b7c5a27c416a8fcd8e6f5c..748eb16bcb4e51c833cb1393d11c2d6e565d0fe1 100644 --- a/lib_enc/ivas_core_pre_proc_front.c +++ b/lib_enc/ivas_core_pre_proc_front.c @@ -1220,10 +1220,21 @@ ivas_error pre_proc_front_ivas_fx( Word16 shift1 = getScaleFactor16( old_wsp_fx, L_WSP_MEM ); Word16 shift2 = getScaleFactor16( wsp_fx, L_WSP - L_WSP_MEM ); - + maximum_abs_16_fx( old_wsp_fx, L_WSP_MEM, &shift ); + if ( !shift ) + { + shift1 = Q15; + move16(); + } + maximum_abs_16_fx( wsp_fx, L_WSP - L_WSP_MEM, &shift ); + if ( !shift ) + { + shift2 = Q15; + move16(); + } shift = s_min( add( *q_old_wsp, shift1 ), add( Q_wsp, shift2 ) ); - Scale_sig( old_wsp_fx, L_WSP_MEM, sub( shift, add( *q_old_wsp, shift1 ) ) ); - Scale_sig( wsp_fx, L_WSP - L_WSP_MEM, sub( shift, add( Q_wsp, shift2 ) ) ); + Scale_sig( old_wsp_fx, L_WSP_MEM, sub( shift, *q_old_wsp ) ); + Scale_sig( wsp_fx, L_WSP - L_WSP_MEM, sub( shift, Q_wsp ) ); *q_old_wsp = shift; move16(); Q_wsp = shift; diff --git a/lib_enc/ivas_corecoder_enc_reconfig.c b/lib_enc/ivas_corecoder_enc_reconfig.c index c35d3f5720f4ebe025181ca7c419bcdde01e16ce..46e708dfe20b028b3dc1c684eb9570472713c374 100644 --- a/lib_enc/ivas_corecoder_enc_reconfig.c +++ b/lib_enc/ivas_corecoder_enc_reconfig.c @@ -227,8 +227,8 @@ ivas_error ivas_corecoder_enc_reconfig_fx( st_ivas->hSCE[k]->hCoreCoder[0]->q_old_inp = add( st_ivas->hSCE[k]->hCoreCoder[0]->q_old_inp, shift ); move16(); q_com_sce = s_min( q_com_sce, st_ivas->hSCE[k]->hCoreCoder[0]->q_old_inp ); - shift = getScaleFactor16( st_ivas->hSCE[k]->hCoreCoder[0]->input_fx, input_frame ); - Scale_sig( st_ivas->hSCE[k]->hCoreCoder[0]->input_fx, input_frame, shift ); + shift = getScaleFactor16( st_ivas->hSCE[k]->hCoreCoder[0]->input_fx, sub( L_FRAME48k + L_FRAME48k + NS2SA( 48000, DELAY_FIR_RESAMPL_NS ), input_frame ) ); + Scale_sig( st_ivas->hSCE[k]->hCoreCoder[0]->input_fx, sub( L_FRAME48k + L_FRAME48k + NS2SA( 48000, DELAY_FIR_RESAMPL_NS ), input_frame ), shift ); st_ivas->hSCE[k]->hCoreCoder[0]->q_inp = add( st_ivas->hSCE[k]->hCoreCoder[0]->q_inp, shift ); move16(); q_com_sce = s_min( q_com_sce, st_ivas->hSCE[k]->hCoreCoder[0]->q_inp ); @@ -247,8 +247,8 @@ ivas_error ivas_corecoder_enc_reconfig_fx( st_ivas->hCPE[cpe_id]->hCoreCoder[n]->q_old_inp = add( st_ivas->hCPE[cpe_id]->hCoreCoder[n]->q_old_inp, shift ); move16(); q_com_cpe = s_min( q_com_cpe, st_ivas->hCPE[cpe_id]->hCoreCoder[n]->q_old_inp ); - shift = getScaleFactor16( st_ivas->hCPE[cpe_id]->hCoreCoder[n]->input_fx, input_frame ); - Scale_sig( st_ivas->hCPE[cpe_id]->hCoreCoder[n]->input_fx, input_frame, shift ); + shift = getScaleFactor16( st_ivas->hCPE[cpe_id]->hCoreCoder[n]->input_fx, sub( L_FRAME48k + L_FRAME48k + NS2SA( 48000, DELAY_FIR_RESAMPL_NS ), input_frame ) ); + Scale_sig( st_ivas->hCPE[cpe_id]->hCoreCoder[n]->input_fx, sub( L_FRAME48k + L_FRAME48k + NS2SA( 48000, DELAY_FIR_RESAMPL_NS ), input_frame ), shift ); st_ivas->hCPE[cpe_id]->hCoreCoder[n]->q_inp = add( st_ivas->hCPE[cpe_id]->hCoreCoder[n]->q_inp, shift ); move16(); q_com_cpe = s_min( q_com_cpe, st_ivas->hCPE[cpe_id]->hCoreCoder[n]->q_inp ); @@ -256,7 +256,6 @@ ivas_error ivas_corecoder_enc_reconfig_fx( } } Word16 q_com = s_min( q_com_sce, q_com_cpe ); - q_com = 0; // Expeiment purpose IF( nSCE_old > 0 ) { FOR( k = 0; k < nSCE_old; k++ ) @@ -264,10 +263,10 @@ ivas_error ivas_corecoder_enc_reconfig_fx( Scale_sig( st_ivas->hSCE[k]->hCoreCoder[0]->old_input_signal_fx, input_frame, sub( q_com, st_ivas->hSCE[k]->hCoreCoder[0]->q_old_inp ) ); st_ivas->hSCE[k]->hCoreCoder[0]->q_old_inp = q_com; move16(); - Scale_sig( st_ivas->hSCE[k]->hCoreCoder[0]->input_fx, input_frame, sub( q_com, st_ivas->hSCE[k]->hCoreCoder[0]->q_inp ) ); + Scale_sig( st_ivas->hSCE[k]->hCoreCoder[0]->input_fx, sub( L_FRAME48k + L_FRAME48k + NS2SA( 48000, DELAY_FIR_RESAMPL_NS ), input_frame ), sub( q_com, st_ivas->hSCE[k]->hCoreCoder[0]->q_inp ) ); st_ivas->hSCE[k]->hCoreCoder[0]->q_inp = q_com; move16(); - Copy_Scale_sig_16_32( st_ivas->hSCE[k]->hCoreCoder[0]->input_buff_fx, st_ivas->hSCE[k]->hCoreCoder[0]->input_buff32_fx, L_FRAME48k + NS2SA( 48000, IVAS_FB_ENC_DELAY_NS ) + L_FRAME48k, add( Q6, q_com ) ); + Copy_Scale_sig_16_32( st_ivas->hSCE[k]->hCoreCoder[0]->input_buff_fx, st_ivas->hSCE[k]->hCoreCoder[0]->input_buff32_fx, L_FRAME48k + NS2SA( 48000, IVAS_FB_ENC_DELAY_NS ) + L_FRAME48k, Q6 ); st_ivas->hSCE[k]->hCoreCoder[0]->q_inp32 = add( Q6, q_com ); move16(); } @@ -282,10 +281,10 @@ ivas_error ivas_corecoder_enc_reconfig_fx( Scale_sig( st_ivas->hCPE[cpe_id]->hCoreCoder[n]->old_input_signal_fx, input_frame, sub( q_com, st_ivas->hCPE[cpe_id]->hCoreCoder[n]->q_old_inp ) ); st_ivas->hCPE[cpe_id]->hCoreCoder[n]->q_old_inp = q_com; move16(); - Scale_sig( st_ivas->hCPE[cpe_id]->hCoreCoder[n]->input_fx, input_frame, sub( q_com, st_ivas->hCPE[cpe_id]->hCoreCoder[n]->q_old_inp ) ); + Scale_sig( st_ivas->hCPE[cpe_id]->hCoreCoder[n]->input_fx, sub( L_FRAME48k + L_FRAME48k + NS2SA( 48000, DELAY_FIR_RESAMPL_NS ), input_frame ), sub( q_com, st_ivas->hCPE[cpe_id]->hCoreCoder[n]->q_inp ) ); st_ivas->hCPE[cpe_id]->hCoreCoder[n]->q_inp = q_com; move16(); - Copy_Scale_sig_16_32( st_ivas->hCPE[cpe_id]->hCoreCoder[n]->input_buff_fx, st_ivas->hCPE[cpe_id]->hCoreCoder[n]->input_buff32_fx, L_FRAME48k + NS2SA( 48000, IVAS_FB_ENC_DELAY_NS ) + L_FRAME48k, add( Q6, q_com ) ); + Copy_Scale_sig_16_32( st_ivas->hCPE[cpe_id]->hCoreCoder[n]->input_buff_fx, st_ivas->hCPE[cpe_id]->hCoreCoder[n]->input_buff32_fx, L_FRAME48k + NS2SA( 48000, IVAS_FB_ENC_DELAY_NS ) + L_FRAME48k, Q6 ); st_ivas->hCPE[cpe_id]->hCoreCoder[n]->q_inp32 = add( Q6, q_com ); move16(); } diff --git a/lib_enc/ivas_spar_encoder.c b/lib_enc/ivas_spar_encoder.c index 53359bb401268322fbcca87c14683512926d5023..a366d86fba24b7fb7e3ac041f02f6e4f7344d7be 100644 --- a/lib_enc/ivas_spar_encoder.c +++ b/lib_enc/ivas_spar_encoder.c @@ -340,8 +340,6 @@ ivas_error ivas_spar_enc_fx( ENCODER_CONFIG_HANDLE hEncoderConfig; Encoder_State *st0; /* used for bitstream handling */ ivas_error error; - Word16 i, q_data = Q11; - move16(); error = IVAS_ERR_OK; move32(); hEncoderConfig = st_ivas->hEncoderConfig; @@ -389,14 +387,8 @@ ivas_error ivas_spar_enc_fx( ivas_sba_zero_vert_comp_fx( data_fx, st_ivas->sba_analysis_order, hEncoderConfig->sba_planar, input_frame ); } - FOR( i = 0; i < st_ivas->hSpar->hFbMixer->fb_cfg->num_in_chans; i++ ) - { - scale_sig32( st_ivas->hSpar->hFbMixer->ppFilterbank_prior_input_fx[i], st_ivas->hSpar->hFbMixer->fb_cfg->prior_input_length, sub( q_data, st_ivas->hSpar->hFbMixer->q_ppFilterbank_prior_input_fx[i] ) ); - st_ivas->hSpar->hFbMixer->q_ppFilterbank_prior_input_fx[i] = q_data; - } - /* SPAR encoder */ - IF( NE_32( ( error = ivas_spar_enc_process_fx( st_ivas, hEncoderConfig, hMetaData, st_ivas->hSpar->front_vad_flag, data_fx, q_data ) ), IVAS_ERR_OK ) ) + IF( NE_32( ( error = ivas_spar_enc_process_fx( st_ivas, hEncoderConfig, hMetaData, st_ivas->hSpar->front_vad_flag, data_fx, st_ivas->q_data_fx ) ), IVAS_ERR_OK ) ) { return error; }