Commit a74a330f authored by vaclav's avatar vaclav
Browse files

- Merge remote-tracking branch 'remotes/origin/main' into remove_evs_duplicates

parents 35a2935e e1b65cd1
Loading
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -1741,6 +1741,8 @@ voip-be-on-merge-request:
    - *update-ltv-repo
    - *build-float-ref-and-dut-binaries
    - *complexity-measurements-setup
    # delete previous jobs logfiles if present (-f flag ensures return calue of 0 even in first run where this folder is not present)
    - rm -rf COMPLEXITY/logs
    - which coan
  artifacts:
    name: "$CI_JOB_NAME--$CI_COMMIT_REF_NAME--sha-$CI_COMMIT_SHA"
@@ -1748,6 +1750,7 @@ voip-be-on-merge-request:
    expire_in: 2 week
    paths:
      - $CI_JOB_NAME-public
      - COMPLEXITY/logs

complexity-stereo-in-stereo-out:
  extends:
+0 −4
Original line number Diff line number Diff line
@@ -699,10 +699,8 @@ int main(
        lfeRoutingConfigs[i] = NULL;
    }

#ifdef FIX_DISCLAIMER
    IVAS_REND_PrintDisclaimer();

#endif
    CmdlnArgs args = parseCmdlnArgs( argc, argv );

    if ( args.nonDiegeticPan && !( ( args.inConfig.numAudioObjects == 0 && args.inConfig.multiChannelBuses[0].audioConfig == IVAS_AUDIO_CONFIG_MONO ) ||
@@ -864,7 +862,6 @@ int main(
        exit( -1 );
    }

#ifdef FIX_DISCLAIMER
    fprintf( stdout, "Input audio file:       %s\n", args.inputFilePath );
    fprintf( stdout, "Output audio file:      %s\n\n", args.outputFilePath );

@@ -907,7 +904,6 @@ int main(
        exit( -1 );
    }

#endif
    /* === Configure === */
    if ( ( error = IVAS_REND_InitConfig( hIvasRend, args.outConfig.audioConfig ) ) != IVAS_ERR_OK )
    {
+0 −4
Original line number Diff line number Diff line
@@ -2563,10 +2563,8 @@ Word16 shr_ro( Word16 var1, Word16 var2, Flag *Overflow )
    {
        var_out = shr_o( var1, var2, Overflow );

#ifdef FIX_1049_SHR_RO_COMPLEXITY
#ifdef WMOPS
        multiCounter[currCounter].shr--;
#endif
#endif
        if ( var2 > 0 )
        {
@@ -2577,13 +2575,11 @@ Word16 shr_ro( Word16 var1, Word16 var2, Flag *Overflow )
        }
    }

#ifdef FIX_1049_SHR_RO_COMPLEXITY
#ifdef WMOPS
    multiCounter[currCounter].shr_r++;
#endif

    BASOP_CHECK();
#endif

    return ( var_out );
}
+48 −110
Original line number Diff line number Diff line
@@ -775,9 +775,7 @@ ivas_error config_acelp1(
    ACELP_config *acelp_cfg,               /* i  : ACELP bit-allocation            */
    const Word16 signalling_bits,          /* i  : number of signalling bits       */
    const Word16 coder_type,               /* i  : coder type                      */
#ifdef NONBE_FIX_GSC_BSTR
    const Word16 inactive_coder_type_flag, /* i  : AVQ (0) or GSC (1) IC flag      */
#endif
    const Word16 tc_subfr,                 /* i  : TC subfr ID                     */
    const Word16 tc_call,                  /* i  : TC call number (0,1,2,3,5(DEC)) */
    Word16 *nBits_es_Pred,                 /* o  : number of bits for Es_pred Q    */
@@ -797,9 +795,7 @@ ivas_error config_acelp1(
    Word16 flag_hardcoded, coder_type_sw, fix_first;
    Word32 core_brate;
#ifdef DEBUGGING
#ifdef REMOVE_IVAS_UNUSED_PARAMETERS_WARNING
    (void) active_cnt;
#endif
#endif
    ivas_error error;

@@ -1080,13 +1076,9 @@ ivas_error config_acelp1(
        test();
        test();
        test();
#ifdef NONBE_FIX_GSC_BSTR
        IF( ( NE_16( coder_type, UNVOICED ) && NE_16( coder_type, AUDIO ) && coder_type != INACTIVE && !( LE_32( core_brate, ACELP_8k00 ) && NE_16( coder_type, TRANSITION ) ) ) /* mid bitrates in GC and VC, low+mid bitrates in TC */ ||
            ( coder_type == INACTIVE && !inactive_coder_type_flag ) /* AVQ inactive */
        )
#else
        IF( ( NE_16( coder_type, UNVOICED ) && NE_16( coder_type, AUDIO ) && coder_type != INACTIVE && !( LE_32( core_brate, ACELP_8k00 ) && NE_16( coder_type, TRANSITION ) ) ) || ( coder_type == INACTIVE && GT_32( total_brate, MAX_GSC_INACTIVE_BRATE ) ) )
#endif
        {
            *nBits_es_Pred = Es_pred_bits_tbl[BIT_ALLOC_IDX_fx( core_brate, coder_type, -1, -1 )];
            move16();
@@ -1207,11 +1199,7 @@ ivas_error config_acelp1(
    {
        test();
        test();
#ifdef NONBE_FIX_GSC_BSTR
        IF( coder_type == INACTIVE && EQ_16( L_frame, L_FRAME16k ) && inactive_coder_type_flag ) /* GSC Inactive @16kHz */
#else
        IF( coder_type == INACTIVE && EQ_16( L_frame, L_FRAME16k ) && LE_32( total_brate, MAX_GSC_INACTIVE_BRATE ) ) /* GSC Inactive @16kHz */
#endif
        {
            acelp_cfg->ltf_mode = FULL_BAND;
            move16();
@@ -1429,14 +1417,10 @@ ivas_error config_acelp1(
        acelp_cfg->fixed_cdk_index[3] = -1;
        move16();
    }
#ifdef NONBE_FIX_GSC_BSTR
    ELSE IF( ( coder_type != INACTIVE && EQ_16( nb_subfr, NB_SUBFR ) && NE_16( coder_type, AUDIO ) ) || /* @12.8kHz core except of GSC */
             ( EQ_16( nb_subfr, NB_SUBFR16k ) && ( !inactive_coder_type_flag || coder_type != INACTIVE ) ) /* @16kHz core GC, TC, AVQ inactive */ ||
             EQ_16( core, HQ_CORE ) /* ACELP -> HQ switching in EVS */
    )
#else
    ELSE IF( ( coder_type != INACTIVE && EQ_16( nb_subfr, NB_SUBFR ) && NE_16( coder_type, AUDIO ) ) || ( EQ_16( nb_subfr, NB_SUBFR16k ) && ( GT_32( total_brate, MAX_GSC_INACTIVE_BRATE ) || coder_type != INACTIVE ) ) || EQ_16( core, HQ_CORE ) )
#endif
    {
        /* pitch Q & gain Q bit-budget - part 2*/
        FOR( i = 0; i < nb_subfr; i++ )
@@ -1500,13 +1484,9 @@ ivas_error config_acelp1(
        test();
        test();
        test();
#ifdef NONBE_FIX_GSC_BSTR
        IF( flag_hardcoded /* EVS */ ||
            ( GE_32( core_brate_inp, MIN_BRATE_AVQ_EXC ) && coder_type != INACTIVE ) /* high-birate ACELP except IC */ ||
            ( !inactive_coder_type_flag && coder_type == INACTIVE ) /* AVQ inactive */ )
#else
        IF( flag_hardcoded || ( GE_32( core_brate_inp, MIN_BRATE_AVQ_EXC ) && coder_type != INACTIVE ) || ( GT_32( total_brate, MAX_GSC_INACTIVE_BRATE ) && coder_type == INACTIVE ) )
#endif
        {
            FOR( i = 0; i < nb_subfr; i++ )
            {
@@ -1615,12 +1595,8 @@ ivas_error config_acelp1(
        test();
        test();
        test();
#ifdef NONBE_FIX_GSC_BSTR
        IF( ( GE_32( core_brate_inp, MIN_BRATE_AVQ_EXC ) && coder_type != INACTIVE ) /* high-birate ACELP except IC */ ||
            ( !inactive_coder_type_flag && coder_type == INACTIVE ) /* AVQ inactive */ )
#else
        IF( ( GE_32( core_brate_inp, MIN_BRATE_AVQ_EXC ) && coder_type != INACTIVE ) || ( GT_32( total_brate, MAX_GSC_INACTIVE_BRATE ) && coder_type == INACTIVE ) )
#endif
        {
            FOR( i = 0; i < nb_subfr; i++ )
            {
@@ -1660,13 +1636,9 @@ ivas_error config_acelp1(
            }
        }
    }
#ifdef NONBE_FIX_GSC_BSTR
    ELSE IF( ( EQ_16( coder_type, UNVOICED ) && EQ_16( tdm_low_rate_mode, 1 ) && EQ_16( element_mode, IVAS_CPE_TD ) ) /* LBR secondary channel in TD stereo */ ||
             ( ( coder_type == INACTIVE || EQ_16( coder_type, AUDIO ) ) && EQ_16( nb_subfr, NB_SUBFR ) ) /* GSC @12.8kHz */ ||
             ( coder_type == INACTIVE && inactive_coder_type_flag ) /* AVQ inactive */ )
#else
    ELSE IF( ( EQ_16( coder_type, UNVOICED ) && EQ_16( tdm_low_rate_mode, 1 ) && EQ_16( element_mode, IVAS_CPE_TD ) ) || ( ( coder_type == INACTIVE || EQ_16( coder_type, AUDIO ) ) && EQ_16( nb_subfr, NB_SUBFR ) ) || ( coder_type == INACTIVE && LE_32( total_brate, MAX_GSC_INACTIVE_BRATE ) ) )
#endif
    {
        Word32 Local_BR, Pitch_BR;
        Word16 Pitch_CT;
@@ -1807,12 +1779,8 @@ ivas_error config_acelp1(
        test();
        test();
        test();
#ifdef NONBE_FIX_GSC_BSTR
        IF( ( EQ_16( L_frame, L_FRAME16k ) && coder_type == INACTIVE && inactive_coder_type_flag ) /* GSC Inactive @16kHz */ ||
            ( GSC_IVAS_mode > 0 && EQ_16( L_frame, L_FRAME16k ) ) ) /* IVAS GSC @16kHz */
#else
        IF( ( EQ_16( L_frame, L_FRAME16k ) && coder_type == INACTIVE && LE_32( total_brate, MAX_GSC_INACTIVE_BRATE ) ) || ( GSC_IVAS_mode > 0 && EQ_16( L_frame, L_FRAME16k ) ) ) /* GSC Inactive @16kHz */
#endif
        {
            acelp_cfg->ubits = 0;
            move16();
@@ -1932,9 +1900,7 @@ ivas_error config_acelp1_IVAS(
    ACELP_config *acelp_cfg,               /* i  : ACELP bit-allocation            */
    const Word16 signaling_bits,           /* i  : number of signaling bits        */
    const Word16 coder_type,               /* i  : coder type                      */
#ifdef NONBE_FIX_GSC_BSTR
    const Word16 inactive_coder_type_flag, /* i  : AVQ (0) or GSC (1) IC flag      */
#endif
    const Word16 tc_subfr,                 /* i  : TC subfr ID                     */
    const Word16 tc_call,                  /* i  : TC call number (0,1,2,3,5(DEC)) */
    Word16 *nBits_es_Pred,                 /* o  : number of bits for Es_pred Q    */
@@ -2216,12 +2182,8 @@ ivas_error config_acelp1_IVAS(
        test();
        test();
        /* gain Q bit-budget - part 1: 'Es_pred' of memory-less gain Q */
#ifdef NONBE_FIX_GSC_BSTR
        IF( ( NE_16( coder_type, UNVOICED ) && NE_16( coder_type, AUDIO ) && coder_type != INACTIVE && !( LE_32( core_brate, ACELP_8k00 ) && NE_16( coder_type, TRANSITION ) ) ) /* mid bitrates in GC and VC, low+mid bitrates in TC */ ||
            ( coder_type == INACTIVE && !inactive_coder_type_flag ) /* AVQ inactive */ )
#else
        IF( ( NE_16( coder_type, UNVOICED ) && NE_16( coder_type, AUDIO ) && ( coder_type != INACTIVE ) && !( LE_32( core_brate, ACELP_8k00 ) && NE_16( coder_type, TRANSITION ) ) ) || ( ( coder_type == INACTIVE ) && GT_32( total_brate, MAX_GSC_INACTIVE_BRATE ) ) )
#endif
        {
            *nBits_es_Pred = Es_pred_bits_tbl[BIT_ALLOC_IDX( core_brate, coder_type, -1, -1 )];
            move16();
@@ -2346,11 +2308,7 @@ ivas_error config_acelp1_IVAS(
    {
        test();
        test();
#ifdef NONBE_FIX_GSC_BSTR
        IF( coder_type == INACTIVE && EQ_16( L_frame, L_FRAME16k ) && inactive_coder_type_flag ) /* GSC Inactive @16kHz */
#else
        IF( coder_type == INACTIVE && EQ_16( L_frame, L_FRAME16k ) && LE_32( total_brate, MAX_GSC_INACTIVE_BRATE ) ) /* GSC Inactive @16kHz */
#endif
        {
            acelp_cfg->ltf_mode = FULL_BAND;
            move16();
@@ -2566,13 +2524,9 @@ ivas_error config_acelp1_IVAS(
        acelp_cfg->fixed_cdk_index[3] = -1;
        move16();
    }
#ifdef NONBE_FIX_GSC_BSTR
    ELSE IF( ( coder_type != INACTIVE && EQ_16( nb_subfr, NB_SUBFR ) && NE_16( coder_type, AUDIO ) ) /* @12.8kHz core except of GSC */ ||
             ( EQ_16( nb_subfr, NB_SUBFR16k ) && ( !inactive_coder_type_flag || coder_type != INACTIVE ) ) /* @16kHz core GC, TC, AVQ inactive */ ||
             EQ_16( core, HQ_CORE ) /* ACELP -> HQ switching in EVS */ )
#else
    ELSE IF( ( coder_type != INACTIVE && EQ_16( nb_subfr, NB_SUBFR ) && NE_16( coder_type, AUDIO ) ) || ( EQ_16( nb_subfr, NB_SUBFR16k ) && ( GT_32( total_brate, MAX_GSC_INACTIVE_BRATE ) || coder_type != INACTIVE ) ) || EQ_16( core, HQ_CORE ) )
#endif
    {
        /* pitch Q & gain Q bit-budget - part 2*/
        FOR( i = 0; i < nb_subfr; i++ )
@@ -2636,13 +2590,9 @@ ivas_error config_acelp1_IVAS(
        test();
        test();
        /* algebraic codebook bit-budget */
#ifdef NONBE_FIX_GSC_BSTR
        IF( flag_hardcoded /* EVS */ ||
            ( GE_32( core_brate_inp, MIN_BRATE_AVQ_EXC ) && coder_type != INACTIVE ) /* high-birate ACELP except IC */ ||
            ( !inactive_coder_type_flag && coder_type == INACTIVE ) /* AVQ inactive */ )
#else
        IF( flag_hardcoded || ( GE_32( core_brate_inp, MIN_BRATE_AVQ_EXC ) && coder_type != INACTIVE ) || ( GT_32( total_brate, MAX_GSC_INACTIVE_BRATE ) && coder_type == INACTIVE ) )
#endif
        {
            FOR( i = 0; i < nb_subfr; i++ )
            {
@@ -2743,12 +2693,8 @@ ivas_error config_acelp1_IVAS(
        test();
        test();
        /* AVQ codebook */
#ifdef NONBE_FIX_GSC_BSTR
        IF( ( GE_32( core_brate_inp, MIN_BRATE_AVQ_EXC ) && coder_type != INACTIVE ) /* high-birate ACELP except IC */ ||
            ( !inactive_coder_type_flag && coder_type == INACTIVE ) /* AVQ inactive */ )
#else
        IF( ( GE_32( core_brate_inp, MIN_BRATE_AVQ_EXC ) && coder_type != INACTIVE ) || ( GT_32( total_brate, MAX_GSC_INACTIVE_BRATE ) && coder_type == INACTIVE ) )
#endif
        {
            FOR( i = 0; i < nb_subfr; i++ )
            {
@@ -2786,13 +2732,9 @@ ivas_error config_acelp1_IVAS(
            }
        }
    }
#ifdef NONBE_FIX_GSC_BSTR
    ELSE IF( ( EQ_16( coder_type, UNVOICED ) && EQ_16( tdm_low_rate_mode, 1 ) && EQ_16( element_mode, IVAS_CPE_TD ) ) /* LBR secondary channel in TD stereo */ ||
             ( ( coder_type == INACTIVE || EQ_16( coder_type, AUDIO ) ) && EQ_16( nb_subfr, NB_SUBFR ) ) /* GSC @12.8kHz */ ||
             ( coder_type == INACTIVE && inactive_coder_type_flag ) /* AVQ inactive */ )
#else
    ELSE IF( ( EQ_16( coder_type, UNVOICED ) && EQ_16( tdm_low_rate_mode, 1 ) && EQ_16( element_mode, IVAS_CPE_TD ) ) || ( ( coder_type == INACTIVE || EQ_16( coder_type, AUDIO ) ) && EQ_16( nb_subfr, NB_SUBFR ) ) || ( coder_type == INACTIVE && LE_32( total_brate, MAX_GSC_INACTIVE_BRATE ) ) )
#endif
    {
        Word32 Local_BR, Pitch_BR;
        Word16 Pitch_CT;
@@ -2933,12 +2875,8 @@ ivas_error config_acelp1_IVAS(
        test();
        test();
        test();
#ifdef NONBE_FIX_GSC_BSTR
        IF( ( EQ_16( L_frame, L_FRAME16k ) && coder_type == INACTIVE && inactive_coder_type_flag ) /* GSC Inactive @16kHz */ ||
            ( GSC_IVAS_mode > 0 && EQ_16( L_frame, L_FRAME16k ) ) ) /* IVAS GSC @16kHz */
#else
        IF( ( EQ_16( L_frame, L_FRAME16k ) && coder_type == INACTIVE && LE_32( total_brate, MAX_GSC_INACTIVE_BRATE ) ) || ( GSC_IVAS_mode > 0 && EQ_16( L_frame, L_FRAME16k ) ) ) /* GSC Inactive @16kHz */
#endif
        {
            acelp_cfg->ubits = 0;
            move16();
+0 −2
Original line number Diff line number Diff line
@@ -526,10 +526,8 @@ void reset_indices_enc_fx(
{
    Word16 i;

#ifdef MSAN_FIX
    hBstr->nb_ind_tot = 0;
    move16();
#endif
    hBstr->nb_bits_tot = 0;
    move16();
    hBstr->next_ind_fx = 0;
Loading