Commit d4c50f64 authored by vaclav's avatar vaclav
Browse files

address "VE2Nokia" comments, part 2

parent 49117d2e
Loading
Loading
Loading
Loading
+0 −98
Original line number Diff line number Diff line
@@ -586,101 +586,3 @@ ISM_MODE ivas_ism_mode_select(

    return ism_mode;
}


#ifdef MASA_AND_OBJECTS // VE2Nokia: move this function to the new file ivas_omasa_com.c (?)
/*---------------------------------------------------------------
 * ivas_omasa_ism_mode_select()
 *
 * selects the ISM mode base on bit-rate and number of objects in the combined ISM MASA format mode
 * ---------------------------------------------------------------*/

/*! r : ISM format mode */
ISM_MODE ivas_omasa_ism_mode_select(
    const int32_t ivas_total_brate, /* i  : IVAS total bitrate       */
    const int16_t no_obj            /* i  : number of objects        */
)
{
    ISM_MODE ism_mode = ISM_MODE_NONE;

    switch ( no_obj )
    {
        case 1:
#ifdef FIX_24k4_ISM1_MODE
            if ( ivas_total_brate >= IVAS_24k4 )
#else
            if ( ivas_total_brate >= IVAS_32k )
#endif
            {
                ism_mode = ISM_MASA_MODE_DISC;
            }
#ifndef FIX_24k4_ISM1_MODE
            else if ( ivas_total_brate >= IVAS_24k4 )
            {
                ism_mode = ISM_MASA_MODE_PARAM;
            }
#endif
            else
            {
                ism_mode = ISM_MODE_NONE;
            }
            break;
        case 2:
            if ( ivas_total_brate >= IVAS_64k )
            {
                ism_mode = ISM_MASA_MODE_DISC;
            }
            else if ( ivas_total_brate >= IVAS_32k )
            {
                ism_mode = ISM_MASA_MODE_ONE_OBJ;
            }
            /* else if ( ivas_total_brate >= IVAS_32k )
            {
                ism_mode = ISM_MASA_MODE_PARAM;
            } */
            else
            {
                ism_mode = ISM_MODE_NONE;
            }
            break;
        case 3:
            if ( ivas_total_brate >= IVAS_128k )
            {
                ism_mode = ISM_MASA_MODE_DISC;
            }
            else if ( ivas_total_brate >= IVAS_64k )
            {
                ism_mode = ISM_MASA_MODE_ONE_OBJ;
            }
            else if ( ivas_total_brate >= IVAS_48k )
            {
                ism_mode = ISM_MASA_MODE_PARAM;
            }
            else
            {
                ism_mode = ISM_MODE_NONE;
            }
            break;
        case 4:
            if ( ivas_total_brate >= IVAS_160k )
            {
                ism_mode = ISM_MASA_MODE_DISC;
            }
            else if ( ivas_total_brate >= IVAS_64k )
            {
                ism_mode = ISM_MASA_MODE_ONE_OBJ;
            }
            else if ( ivas_total_brate >= IVAS_48k )
            {
                ism_mode = ISM_MASA_MODE_PARAM;
            }
            else
            {
                ism_mode = ISM_MODE_NONE;
            }
            break;
    }

    return ism_mode;
}
#endif
+3 −2
Original line number Diff line number Diff line
@@ -511,6 +511,7 @@ void modify_masa_energy_ratios(
)
{
    int16_t i, m, d, b;

    for ( m = 0; m < MAX_PARAM_SPATIAL_SUBFRAMES; m++ )
    {
        if ( hQMetaData->q_direction[0].cfg.nblocks == 1 )
@@ -543,8 +544,8 @@ void modify_masa_energy_ratios(
 *---------------------------------------------------------------*/

void ivas_get_stereo_panning_gains(
    float aziDeg,
    float eleDeg,
    const float aziDeg,
    const float eleDeg,
    float panningGains[2] )
{
    float aziRad, eleRad;
+98 −0
Original line number Diff line number Diff line
@@ -55,6 +55,104 @@
#define GAMMA_ISM_HIGH_IMP2   1.35f


#ifdef MASA_AND_OBJECTS
/*---------------------------------------------------------------
 * ivas_omasa_ism_mode_select()
 *
 * selects the ISM mode base on bit-rate and number of objects in the combined ISM MASA format mode
 * ---------------------------------------------------------------*/

/*! r : ISM format mode */
ISM_MODE ivas_omasa_ism_mode_select(
    const int32_t ivas_total_brate, /* i  : IVAS total bitrate       */
    const int16_t no_obj            /* i  : number of objects        */
)
{
    ISM_MODE ism_mode = ISM_MODE_NONE;

    switch ( no_obj )
    {
        case 1:
#ifdef FIX_24k4_ISM1_MODE
            if ( ivas_total_brate >= IVAS_24k4 )
#else
            if ( ivas_total_brate >= IVAS_32k )
#endif
            {
                ism_mode = ISM_MASA_MODE_DISC;
            }
#ifndef FIX_24k4_ISM1_MODE
            else if ( ivas_total_brate >= IVAS_24k4 )
            {
                ism_mode = ISM_MASA_MODE_PARAM;
            }
#endif
            else
            {
                ism_mode = ISM_MODE_NONE;
            }
            break;
        case 2:
            if ( ivas_total_brate >= IVAS_64k )
            {
                ism_mode = ISM_MASA_MODE_DISC;
            }
            else if ( ivas_total_brate >= IVAS_32k )
            {
                ism_mode = ISM_MASA_MODE_ONE_OBJ;
            }
            /* else if ( ivas_total_brate >= IVAS_32k )
            {
                ism_mode = ISM_MASA_MODE_PARAM;
            } */
            else
            {
                ism_mode = ISM_MODE_NONE;
            }
            break;
        case 3:
            if ( ivas_total_brate >= IVAS_128k )
            {
                ism_mode = ISM_MASA_MODE_DISC;
            }
            else if ( ivas_total_brate >= IVAS_64k )
            {
                ism_mode = ISM_MASA_MODE_ONE_OBJ;
            }
            else if ( ivas_total_brate >= IVAS_48k )
            {
                ism_mode = ISM_MASA_MODE_PARAM;
            }
            else
            {
                ism_mode = ISM_MODE_NONE;
            }
            break;
        case 4:
            if ( ivas_total_brate >= IVAS_160k )
            {
                ism_mode = ISM_MASA_MODE_DISC;
            }
            else if ( ivas_total_brate >= IVAS_64k )
            {
                ism_mode = ISM_MASA_MODE_ONE_OBJ;
            }
            else if ( ivas_total_brate >= IVAS_48k )
            {
                ism_mode = ISM_MASA_MODE_PARAM;
            }
            else
            {
                ism_mode = ISM_MODE_NONE;
            }
            break;
    }

    return ism_mode;
}
#endif


/*---------------------------------------------------------------
 * ivas_interformat_brate()
 *
+7 −3
Original line number Diff line number Diff line
@@ -3346,7 +3346,11 @@ void ivas_dirac_dec_binaural(
);

#ifdef MASA_AND_OBJECTS
void ivas_get_stereo_panning_gains( float aziDeg, float eleDeg, float panningGains[2] );
void ivas_get_stereo_panning_gains( 
    const float aziDeg, 
    const float eleDeg, 
    float panningGains[2] 
);
#endif

ivas_error ivas_binaural_reverb_open(
@@ -5123,7 +5127,7 @@ void ivas_filter_process(
#ifdef MASA_AND_OBJECTS
/*----------------------------------------------------------------------------------*
* OMASA prototypes
* ----------------------------------------------------------------------------------*/
*---------------------------------------------------------------------------------*/

ivas_error ivas_omasa_enc_open(
    Encoder_Struct* st_ivas                                     /* i/o: IVAS encoder handle                     */
+1 −1
Original line number Diff line number Diff line
@@ -504,7 +504,7 @@ ivas_error ivas_ism_metadata_dec(
    {
#ifdef MASA_AND_OBJECTS
        int16_t masa_ism_flag = 0;
        if ( ism_mode == ISM_MASA_MODE_ONE_OBJ || ism_mode == ISM_MASA_MODE_DISC ) // VE2Nokia: ISM_MASA_MODE_ONE_OBJ looks obsolete here
        if ( ism_mode == ISM_MASA_MODE_DISC )
        {
            masa_ism_flag = 1;
        }
Loading