Commit 678ce25c authored by reutelhuber's avatar reutelhuber
Browse files

add function for setting sba_dirac_stereo_flag

parent 957de910
Loading
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -3304,6 +3304,12 @@ void ivas_sba_dirac_stereo_config(
    STEREO_DFT_CONFIG_DATA_HANDLE hConfig                       /* o  : DFT stereo configuration                */
);

#ifdef SBA2MONO
int16_t ivas_get_sba_dirac_stereo_flag(
    Decoder_Struct *st_ivas                                     /* i/o: IVAS decoder structure                  */
);
#endif

void ivas_sba_dirac_stereo_smooth_parameters(
    STEREO_DFT_DEC_DATA_HANDLE hStereoDft,                      /* i/o: encoder DFT stereo handle               */
    ivas_spar_md_dec_state_t *hMdDec,                           /* i/o: SPAR MD handle for upmixing             */
+9 −1
Original line number Diff line number Diff line
@@ -984,7 +984,7 @@ ivas_error ivas_init_decoder(
                                             st_ivas->hSpar->dirac_to_spar_md_bands, st_ivas->hQMetaData->useLowerBandRes, st_ivas->hSpar->enc_param_start_band, 0 );
                }
#ifdef SBA2MONO
                st_ivas->sba_dirac_stereo_flag = ( output_config == AUDIO_CONFIG_STEREO || ( output_config == AUDIO_CONFIG_MONO && st_ivas->nchan_transport == 1 ) );
                st_ivas->sba_dirac_stereo_flag = ivas_get_sba_dirac_stereo_flag( st_ivas );
#else
                st_ivas->sba_dirac_stereo_flag = ( output_config == AUDIO_CONFIG_STEREO );
#endif
@@ -996,7 +996,11 @@ ivas_error ivas_init_decoder(
                    return error;
                }

#ifdef SBA2MONO
                st_ivas->sba_dirac_stereo_flag = ivas_get_sba_dirac_stereo_flag( st_ivas );
#else
                st_ivas->sba_dirac_stereo_flag = ( st_ivas->nchan_transport == 1 && output_config == AUDIO_CONFIG_STEREO );
#endif
            }
        }

@@ -1166,7 +1170,11 @@ ivas_error ivas_init_decoder(
                return error;
            }

#ifdef SBA2MONO
            st_ivas->sba_dirac_stereo_flag = ivas_get_sba_dirac_stereo_flag( st_ivas );
#else
            st_ivas->sba_dirac_stereo_flag = ( st_ivas->nchan_transport == 1 && output_config == AUDIO_CONFIG_STEREO );
#endif

            if ( st_ivas->renderer_type != RENDERER_DISABLE && st_ivas->renderer_type != RENDERER_MCMASA_MONO_STEREO )
            {

lib_dec/ivas_mcmasa_dec.c

100644 → 100755
+4 −0
Original line number Diff line number Diff line
@@ -76,7 +76,11 @@ ivas_error ivas_mcmasa_dec_reconfig(
        return error;
    }

#ifdef SBA2MONO
    st_ivas->sba_dirac_stereo_flag = ivas_get_sba_dirac_stereo_flag( st_ivas );
#else
    st_ivas->sba_dirac_stereo_flag = ( st_ivas->nchan_transport == 1 && st_ivas->hOutSetup.output_config == AUDIO_CONFIG_STEREO );
#endif

    if ( st_ivas->renderer_type != RENDERER_DISABLE && st_ivas->renderer_type != RENDERER_MCMASA_MONO_STEREO )
    {

lib_dec/ivas_mct_dec.c

100644 → 100755
+4 −0
Original line number Diff line number Diff line
@@ -707,7 +707,11 @@ static ivas_error ivas_mc_dec_reconfig(
    {
        nchan_hp20_old = nchan_transport_old;
    }
#ifdef SBA2MONO
    st_ivas->sba_dirac_stereo_flag = ivas_get_sba_dirac_stereo_flag( st_ivas );
#else
    st_ivas->sba_dirac_stereo_flag = 0; /* needs to be after getNumChanSynthesis() */
#endif

    /* renderer might have changed, reselect */
    renderer_type_old = st_ivas->renderer_type;
+5 −1
Original line number Diff line number Diff line
@@ -117,7 +117,11 @@ ivas_error ivas_sba_dec_reconfigure(
            return error;
        }

#ifdef SBA2MONO
        st_ivas->sba_dirac_stereo_flag = ivas_get_sba_dirac_stereo_flag( st_ivas );
#else
        st_ivas->sba_dirac_stereo_flag = ( st_ivas->nchan_transport == 1 && hDecoderConfig->output_config == AUDIO_CONFIG_STEREO );
#endif
    }
    else
    {
@@ -157,7 +161,7 @@ ivas_error ivas_sba_dec_reconfigure(

        hSpar = st_ivas->hSpar;
#ifdef SBA2MONO
        st_ivas->sba_dirac_stereo_flag = (hDecoderConfig->output_config == AUDIO_CONFIG_STEREO || (hDecoderConfig->output_config == AUDIO_CONFIG_MONO && st_ivas->nchan_transport == 1));
        st_ivas->sba_dirac_stereo_flag = ivas_get_sba_dirac_stereo_flag( st_ivas );
#else
        st_ivas->sba_dirac_stereo_flag = 0;
#endif
Loading