Commit 6e508c6c authored by emerit's avatar emerit
Browse files

fix transmission non diegetic pan at lower birate

parent b4593201
Loading
Loading
Loading
Loading
+24 −8
Original line number Diff line number Diff line
@@ -329,6 +329,8 @@ ivas_error ivas_ism_metadata_enc(
            }
#ifdef ISM_NON_DIEGETIC_PAN
            if ( hIsmMeta[ch]->ism_metadata_flag == 2 )
            {
                if ( ism_extended_metadata_flag && ( ism_metadata_flag_global & 0x2 ) )
                {
                    push_indice( hBstr, IND_ISM_NDP_FLAG, 1, ISM_METADATA_IS_NDP_BITS );
                    if ( ism_mode == ISM_MODE_DISC )
@@ -340,7 +342,21 @@ ivas_error ivas_ism_metadata_enc(
                        idx_angle1_abs = hParamIsm->azi_index[ch];
                    }
                    encode_angle_indices( hBstr, &( hIsmMetaData->position_angle ), hIsmMetaData->last_ism_metadata_flag, hSCE[0]->hCoreCoder[0]->ini_frame, idx_angle1_abs, 0, &flag_abs_azimuth[ch], NULL );

                }
                else
                {
                    if ( ism_mode == ISM_MODE_DISC )
                    {
                        idx_angle1_abs = ism_quant_meta( hIsmMetaData->azimuth, &valQ, ism_azimuth_borders, ISM_Q_STEP, ISM_Q_STEP_BORDER, 1 << ISM_AZIMUTH_NBITS );
                        idx_angle2_abs = ism_quant_meta( hIsmMetaData->elevation, &valQ, ism_elevation_borders, ISM_Q_STEP, ISM_Q_STEP_BORDER, 1 << ISM_ELEVATION_NBITS );
                    }
                    else /* ISM_MODE_PARAM */
                    {
                        idx_angle1_abs = hParamIsm->azi_index[ch];
                        idx_angle2_abs = hParamIsm->ele_index[ch];
                    }
                    encode_angle_indices( hBstr, &( hIsmMetaData->position_angle ), hIsmMetaData->last_ism_metadata_flag, hSCE[0]->hCoreCoder[0]->ini_frame, idx_angle1_abs, idx_angle2_abs, &flag_abs_azimuth[ch], &flag_abs_elevation[ch] );
                }
                /* save number of metadata bits written */
                if ( ism_mode == ISM_MODE_DISC )
                {
@@ -358,7 +374,7 @@ ivas_error ivas_ism_metadata_enc(
                 * Quantize and encode azimuth and elevation
                 *----------------------------------------------------------------*/
#ifdef ISM_NON_DIEGETIC_PAN
                if ( ism_metadata_flag_global & 0x2 )
                if ( ism_extended_metadata_flag && ( ism_metadata_flag_global & 0x2 ) )
                {
                    push_indice( hBstr, IND_ISM_NDP_FLAG, 0, ISM_METADATA_IS_NDP_BITS );
                }