Commit 1405816c authored by multrus's avatar multrus
Browse files

[cleanup] accept FIX_1435_MOVE_STEREO_PANNING

parent cc820764
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -175,7 +175,6 @@
/* #################### Start NON-BE switches ############################ */
/* any switch which is non-be wrt. TS 26.258 V3.0 */

#define FIX_1435_MOVE_STEREO_PANNING                    /* VA: issue 1435: do the EVS stereo panning in the renderer */
#define FIX_1454_FIX_STEREO_TO_FOA_JBM                  /* VA: issue 1454: fix buggy stereo to FOA in JBM */
#define FIX_1461_CNG_BW_SWITCHING                       /* Eri: issue 1461: Stereo parameters are not updated when SID/NODATA forces BW to stay the same */
#define FIX_2252_LP_CNG_STARTS_SID                      /* VA: issues 2251 and 2252: fix LP CNG uninitialized value in bitstream that starts with an SID */
+0 −25
Original line number Diff line number Diff line
@@ -959,12 +959,10 @@ ivas_error ivas_dec_render(
        {
            ivas_ls_setup_conversion( st_ivas, st_ivas->nchan_transport, *nSamplesRendered, p_tc, p_output );
        }
#ifdef FIX_1435_MOVE_STEREO_PANNING
        else if ( st_ivas->renderer_type == RENDERER_NON_DIEGETIC_DOWNMIX )
        {
            ivas_apply_non_diegetic_panning( p_tc[0], p_output, st_ivas->hDecoderConfig->non_diegetic_pan_gain, *nSamplesRendered );
        }
#endif
        else if ( st_ivas->renderer_type == RENDERER_SBA_LINEAR_ENC )
        {
#ifdef FIX_1454_FIX_STEREO_TO_FOA_JBM
@@ -1973,15 +1971,11 @@ int16_t ivas_dec_get_num_tc_channels(

    ivas_total_brate = st_ivas->hDecoderConfig->ivas_total_brate;

#ifdef FIX_1435_MOVE_STEREO_PANNING
    if ( st_ivas->ivas_format == MONO_FORMAT )
    {
        num_tc = 1;
    }
    else if ( st_ivas->ivas_format == STEREO_FORMAT && st_ivas->hDecoderConfig->nchan_out == 1 )
#else
    if ( st_ivas->ivas_format == STEREO_FORMAT && st_ivas->hDecoderConfig->nchan_out == 1 )
#endif
    {
        num_tc = 1;
    }
@@ -2090,12 +2084,6 @@ int16_t ivas_dec_get_num_tc_channels(
            }
        }
    }
#ifndef FIX_1435_MOVE_STEREO_PANNING
    else if ( st_ivas->ivas_format == MONO_FORMAT && st_ivas->renderer_type == RENDERER_NON_DIEGETIC_DOWNMIX )
    {
        num_tc = MAX_OUTPUT_CHANNELS_IN_DIEGETIC_PAN;
    }
#endif

    return num_tc;
}
@@ -2559,9 +2547,7 @@ TC_BUFFER_MODE ivas_dec_get_tc_buffer_mode(
        case RENDERER_MONO_DOWNMIX:
            buffer_mode = TC_BUFFER_MODE_BUFFER;
            break;
#ifdef FIX_1435_MOVE_STEREO_PANNING
        case RENDERER_NON_DIEGETIC_DOWNMIX:
#endif
        case RENDERER_TD_PANNING:
        case RENDERER_BINAURAL_OBJECTS_TD:
        case RENDERER_BINAURAL_FASTCONV:
@@ -2579,17 +2565,6 @@ TC_BUFFER_MODE ivas_dec_get_tc_buffer_mode(
        case RENDERER_OSBA_LS:
            buffer_mode = TC_BUFFER_MODE_RENDERER;
            break;
#ifndef FIX_1435_MOVE_STEREO_PANNING
        case RENDERER_NON_DIEGETIC_DOWNMIX:
            if ( st_ivas->ivas_format == MONO_FORMAT )
            {
                buffer_mode = TC_BUFFER_MODE_BUFFER;
            }
            else
            {
                buffer_mode = TC_BUFFER_MODE_RENDERER;
            }
#endif
            break;
        case RENDERER_MC_PARAMMC:
            if ( st_ivas->hParamMC->synthesis_conf == PARAM_MC_SYNTH_MONO_STEREO )
+0 −10
Original line number Diff line number Diff line
@@ -228,17 +228,9 @@ void ivas_renderer_select(
     * Non-binaural rendering configurations
     *-----------------------------------------------------------------*/

#ifdef FIX_1435_MOVE_STEREO_PANNING
    else if ( st_ivas->ivas_format == MONO_FORMAT || st_ivas->ivas_format == STEREO_FORMAT )
#else
    else if ( st_ivas->ivas_format == MONO_FORMAT )
#endif
    {
#ifdef FIX_1435_MOVE_STEREO_PANNING
        if ( st_ivas->ivas_format == MONO_FORMAT && output_config == IVAS_AUDIO_CONFIG_STEREO )
#else
        if ( output_config == IVAS_AUDIO_CONFIG_STEREO )
#endif
        {
            *renderer_type = RENDERER_NON_DIEGETIC_DOWNMIX;
        }
@@ -246,13 +238,11 @@ void ivas_renderer_select(
        {
            *renderer_type = RENDERER_MC;
        }
#ifdef FIX_1435_MOVE_STEREO_PANNING
        else if ( st_ivas->ivas_format == STEREO_FORMAT &&
                  ( output_config == IVAS_AUDIO_CONFIG_FOA || output_config == IVAS_AUDIO_CONFIG_HOA2 || output_config == IVAS_AUDIO_CONFIG_HOA3 ) )
        {
            *renderer_type = RENDERER_SBA_LINEAR_ENC;
        }
#endif
    }
    else if ( st_ivas->ivas_format == ISM_FORMAT )
    {
+0 −37
Original line number Diff line number Diff line
@@ -2193,18 +2193,7 @@ static ivas_error ivas_dec_setup_all(

    if ( hIvasDec->mode == IVAS_DEC_MODE_EVS )
    {
#ifdef FIX_1435_MOVE_STEREO_PANNING
        *nTransportChannels = 1;
#else
        if ( hIvasDec->st_ivas->renderer_type == RENDERER_NON_DIEGETIC_DOWNMIX )
        {
            *nTransportChannels = MAX_OUTPUT_CHANNELS_IN_DIEGETIC_PAN;
        }
        else
        {
            *nTransportChannels = 1;
        }
#endif
    }
    else
    {
@@ -4783,14 +4772,8 @@ static ivas_error evs_dec_main(
)
{
    DEC_CORE_HANDLE *hCoreCoder;
#ifndef FIX_1435_MOVE_STEREO_PANNING
    float mixer_left, mixer_rigth;
    float *p_output[MAX_TRANSPORT_CHANNELS];
    int16_t ch, nOutSamples;
#else
    float *p_output[1];
    int16_t nOutSamples;
#endif
    ivas_error error;

    hCoreCoder = st_ivas->hSCE[0]->hCoreCoder;
@@ -4799,18 +4782,7 @@ static ivas_error evs_dec_main(

    mdct_switching_dec( hCoreCoder[0] );

#ifdef FIX_1435_MOVE_STEREO_PANNING
    p_output[0] = st_ivas->p_output_f[0];
#else
    for ( ch = 0; ch < MAX_TRANSPORT_CHANNELS; ch++ )
    {
        p_output[ch] = st_ivas->p_output_f[ch];
        if ( p_output[ch] != NULL )
        {
            set_zero( p_output[ch], L_FRAME48k );
        }
    }
#endif

    /* run the main EVS decoding routine */
    if ( hCoreCoder[0]->codec_mode == MODE1 )
@@ -4857,15 +4829,6 @@ static ivas_error evs_dec_main(

    st_ivas->BER_detect = hCoreCoder[0]->BER_detect;

#ifndef FIX_1435_MOVE_STEREO_PANNING
    if ( st_ivas->renderer_type == RENDERER_NON_DIEGETIC_DOWNMIX )
    {
        mixer_left = ( st_ivas->hDecoderConfig->non_diegetic_pan_gain + 1.f ) * 0.5f;
        mixer_rigth = 1.f - mixer_left;
        v_multc( p_output[0], mixer_rigth, p_output[1], nOutSamples );
        v_multc( p_output[0], mixer_left, p_output[0], nOutSamples );
    }
#endif
    if ( st_ivas->hDecoderConfig->Opt_tsm && st_ivas->hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_MONO )
    {
        /* BE workaround: in order to keep EVS bit-exact wrt. TS 26.443, convert 'float' output data to 'short' before the TSM */