Commit d4b85d86 authored by vaclav's avatar vaclav
Browse files

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

parents 0d5d694c 89b0d019
Loading
Loading
Loading
Loading
+41 −2
Original line number Diff line number Diff line
@@ -240,6 +240,25 @@ int32_t ivas_interformat_brate(
                  ( ism_mode == ISM_MASA_MODE_DISC && element_brate == 9600 ) /* this condition corresponds to the ivas_total_brate = 24400 and 1 object */
        )
        {
#ifdef FIX_694_OMASA_EXTREME
            if ( ism_mode == ISM_MASA_MODE_PARAM_ONE_OBJ && element_brate == IVAS_13k2 )
            {
                if ( ism_imp == ISM_LOW_IMP )
                {
                    nBits = (int16_t) ( nBits * GAMMA_ISM_LOW_IMP3 );
                }
                else if ( ism_imp == ISM_MEDIUM_IMP )
                {
                    nBits = (int16_t) ( nBits * GAMMA_ISM_MEDIUM_IMP3 );
                }
                else /* ISM_HIGH_IMP */
                {
                    nBits = (int16_t) ( nBits * GAMMA_ISM_HIGH_IMP4 );
                }
            }
            else
            {
#endif
                if ( ism_imp == ISM_LOW_IMP )
                {
                    nBits = (int16_t) ( nBits * GAMMA_ISM_LOW_IMP3 );
@@ -252,7 +271,27 @@ int32_t ivas_interformat_brate(
                {
                    nBits = (int16_t) ( nBits * GAMMA_ISM_HIGH_IMP3 );
                }
#ifdef FIX_694_OMASA_EXTREME
            }
#endif
        }
#ifdef FIX_694_OMASA_EXTREME
        else if ( ism_mode == ISM_MASA_MODE_MASA_ONE_OBJ && element_brate == 16000 )
        {
            if ( ism_imp == ISM_LOW_IMP )
            {
                nBits = (int16_t) ( nBits * GAMMA_ISM_LOW_IMP );
            }
            else if ( ism_imp == ISM_MEDIUM_IMP )
            {
                nBits = (int16_t) ( nBits * GAMMA_ISM_MEDIUM_IMP );
            }
            else /* ISM_HIGH_IMP */
            {
                nBits = (int16_t) ( nBits * GAMMA_ISM_HIGH_IMP3 );
            }
        }
#endif
        else
        {
            if ( ism_imp == ISM_LOW_IMP )
+2 −0
Original line number Diff line number Diff line
@@ -1464,7 +1464,9 @@ const int16_t pr_pd_idx_pairs[3][3][2] = { { { 1, 1 },{ 2, 2 },{ 3, 3 } },{ { 1,
const int16_t remix_order_set[1][DIRAC_MAX_ANA_CHANS] = { /* WYZX --> WYXZ... */
    { 0, 1, 3, 2, 4, 5, 6, 7, 8, 9, 10 }
};
#ifdef SPAR_HOA_DBG
const int16_t keep_planar[IVAS_SPAR_MAX_CH - IVAS_SPAR_MAX_DMX_CHS] = { 1, 1, 1, 1, 1, 1 };
#endif
const int16_t HOA_keep_ind[IVAS_SPAR_MAX_FB_IN_CHAN] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 15};
const int16_t HOA_keep_ind_spar[IVAS_SPAR_MAX_CH] = {0, 1, 2, 3, 4, 8, 9, 10, 10, 10, 10};
const int16_t HOA_keep_ind_spar512[IVAS_SPAR_MAX_CH] = {0, 1, 2, 3, 4,  5, 6, 7, 8, 9, 10};
+2 −0
Original line number Diff line number Diff line
@@ -180,7 +180,9 @@ extern const ivas_huff_models_t ivas_huff_drct_r_consts[TOTAL_DRCT_QUANT_STRATS]
extern const ivas_huff_models_t ivas_huff_decd_r_consts[TOTAL_DECD_QUANT_STRATS];
extern const ivas_spar_br_table_t ivas_spar_br_table_consts[IVAS_SPAR_BR_TABLE_LEN];
extern const int16_t remix_order_set[1][DIRAC_MAX_ANA_CHANS];
#ifdef SPAR_HOA_DBG
extern const int16_t keep_planar[IVAS_SPAR_MAX_CH - FOA_CHANNELS];
#endif
extern const int16_t HOA_keep_ind[IVAS_SPAR_MAX_FB_IN_CHAN];
extern const int16_t HOA_keep_ind_spar[IVAS_SPAR_MAX_CH];
extern const int16_t HOA_keep_ind_spar512[IVAS_SPAR_MAX_CH];
+4 −0
Original line number Diff line number Diff line
@@ -313,6 +313,10 @@ void tdm_bit_alloc(
    else
    {
        *total_brate_sec = min( *total_brate_sec, element_brate_wo_meta - ( 5900 + BWE_brate ) );

#ifdef FIX_694_OMASA_EXTREME
        *total_brate_sec = max( *total_brate_sec, tdm_bit_allc_tbl[idx][coder_type] ); /* sanity check to ensure the secondary channel always gets the minimal bitrate it needs */
#endif
    }

    /* Secondary channel bitrate adjusment                                                      */
+7 −2
Original line number Diff line number Diff line
@@ -156,6 +156,9 @@
#define SPLIT_REND_PRED_QUANT_63_PNTS
#define SPLIT_REND_WITH_HEAD_ROT_PARAMBIN               /* Nokia: Issue 623: Split rendering support for parambin renderer */
#define FIX_658_SPLIT_REND_MASA                         /*Dlb : Fix for issue 658, uninitialized memory access in MASA in Split rendering 0DOF mode*/
#ifdef SBA_AND_OBJECTS
#define OSBA_SPLIT_RENDERING
#endif
#endif

#define MASA_AND_OBJECTS                                /* Nokia: Combination of MASA and objects */
@@ -163,11 +166,13 @@
#define SBA_AND_OBJECTS
#ifdef SBA_AND_OBJECTS
#define OSBA_BR_SWITCHING
#define OSBA_SPLIT_RENDERING
#endif

#define FIX_264_AUDIO_CHANNELS_TO_HEAP                  /* VA: issue 243: Move audio channels memory from stack to heap */
#define FIX_691_OSBA_CRASH                              /* FhG: Fix for issue 691: Crash for OSBA Stereo out */


#define FIX_694_OMASA_EXTREME                           /* Nokia: fix for crash in OMASA on extreme sample */

/* ################## End BE DEVELOPMENT switches ######################### */

Loading