Loading lib_dec/ivas_dec.c +11 −8 Original line number Diff line number Diff line Loading @@ -64,6 +64,9 @@ ivas_error ivas_dec( int16_t nb_bits_metadata[MAX_SCE]; int32_t output_Fs, ivas_total_brate; AUDIO_CONFIG output_config; #ifdef NON_DIEGETIC_PAN float pan_left, pan_right; #endif ivas_error error; error = IVAS_ERR_OK; Loading Loading @@ -190,10 +193,10 @@ ivas_error ivas_dec( #ifdef NON_DIEGETIC_PAN else if ( st_ivas->renderer_type == RENDERER_NON_DIEGETIC_DOWNMIX ) { float mixer_left = ( st_ivas->hDecoderConfig->non_diegetic_pan_gain + 1.f ) * 0.5f; float mixer_rigth = 1.f - mixer_left; v_multc( output[0], mixer_rigth, output[1], output_frame ); v_multc( output[0], mixer_left, output[0], output_frame ); pan_left = ( st_ivas->hDecoderConfig->non_diegetic_pan_gain + 1.f ) * 0.5f; pan_right = 1.f - pan_left; v_multc( output[0], pan_right, output[1], output_frame ); v_multc( output[0], pan_left, output[0], output_frame ); } #endif else if ( st_ivas->renderer_type == RENDERER_PARAM_ISM || st_ivas->renderer_type == RENDERER_SBA_LINEAR_ENC ) Loading @@ -217,10 +220,10 @@ ivas_error ivas_dec( #ifdef NON_DIEGETIC_PAN else if ( st_ivas->renderer_type == RENDERER_NON_DIEGETIC_DOWNMIX ) { float mixer_left = ( st_ivas->hDecoderConfig->non_diegetic_pan_gain + 1.f ) * 0.5f; float mixer_rigth = 1.f - mixer_left; v_multc( output[0], mixer_rigth, output[1], output_frame ); v_multc( output[0], mixer_left, output[0], output_frame ); pan_left = ( st_ivas->hDecoderConfig->non_diegetic_pan_gain + 1.f ) * 0.5f; pan_right = 1.f - pan_left; v_multc( output[0], pan_right, output[1], output_frame ); v_multc( output[0], pan_left, output[0], output_frame ); } #endif else if ( st_ivas->renderer_type == RENDERER_TD_PANNING || st_ivas->renderer_type == RENDERER_BINAURAL_MIXER_CONV_ROOM ) Loading lib_dec/ivas_ism_renderer.c +0 −4 Original line number Diff line number Diff line Loading @@ -149,11 +149,7 @@ void ivas_ism_render( else { /* Head rotation: rotate the object positions depending the head's orientation */ #ifdef ISM_NON_DIEGETIC_PAN if ( st_ivas->hHeadTrackData != NULL && st_ivas->hHeadTrackData->num_quaternions >= 0 && st_ivas->hIsmMetaData[i]->ism_metadata_flag != 2 ) #else if ( st_ivas->hHeadTrackData != NULL && st_ivas->hHeadTrackData->num_quaternions >= 0 ) #endif { rotateAziEle( st_ivas->hIsmMetaData[i]->azimuth, st_ivas->hIsmMetaData[i]->elevation, &azimuth, &elevation, Rmat, st_ivas->hIntSetup.is_planar_setup ); } Loading lib_dec/lib_dec.c +5 −4 Original line number Diff line number Diff line Loading @@ -405,11 +405,12 @@ ivas_error IVAS_DEC_Configure( const int16_t customLsOutputEnabled, /* i : enable custom loudspeaker setup handle */ const int16_t hrtfReaderEnabled, /* i : enable HRTF binary file input */ const int16_t enableHeadRotation, /* i : enable head rotation for binaural output */ const int16_t renderConfigEnabled /* i : enable Renderer config. file for binaural output */ #ifdef NON_DIEGETIC_PAN , const int16_t renderConfigEnabled, /* i : enable Renderer config. file for binaural output */ int16_t Opt_non_diegetic_pan, /* i : diegetic or not */ float non_diegetic_pan_gain /* i : non diegetic panning gain */ #else const int16_t renderConfigEnabled /* i : enable Renderer config. file for binaural output */ #endif ) { Loading lib_dec/lib_dec.h +5 −4 Original line number Diff line number Diff line Loading @@ -133,11 +133,12 @@ ivas_error IVAS_DEC_Configure( const int16_t customLsOutputEnabled, /* i : enable custom loudspeaker setup handle */ const int16_t hrtfReaderEnabled, /* i : enable HRTF binary file input */ const int16_t enableHeadRotation, /* i : enable head rotation for binaural output */ const int16_t renderConfigEnabled /* i : enable Renderer config. file for binaural output */ #ifdef NON_DIEGETIC_PAN , const int16_t renderConfigEnabled, /* i : enable Renderer config. file for binaural output */ int16_t Opt_non_diegetic_pan, /* i : diegetic or not */ float non_diegetic_pan_gain /* i : non diegetic panning gain */ #else const int16_t renderConfigEnabled /* i : enable Renderer config. file for binaural output */ #endif ); Loading lib_enc/ivas_ism_metadata_enc.c +1 −1 Original line number Diff line number Diff line Loading @@ -389,7 +389,7 @@ ivas_error ivas_ism_metadata_enc( { hIsmMetaData->azimuth = 180.0f - hIsmMetaData->azimuth; } if ( hIsmMetaData->azimuth < 90.0f ) if ( hIsmMetaData->azimuth < -90.0f ) { hIsmMetaData->azimuth = -180.0f - hIsmMetaData->azimuth; } Loading Loading
lib_dec/ivas_dec.c +11 −8 Original line number Diff line number Diff line Loading @@ -64,6 +64,9 @@ ivas_error ivas_dec( int16_t nb_bits_metadata[MAX_SCE]; int32_t output_Fs, ivas_total_brate; AUDIO_CONFIG output_config; #ifdef NON_DIEGETIC_PAN float pan_left, pan_right; #endif ivas_error error; error = IVAS_ERR_OK; Loading Loading @@ -190,10 +193,10 @@ ivas_error ivas_dec( #ifdef NON_DIEGETIC_PAN else if ( st_ivas->renderer_type == RENDERER_NON_DIEGETIC_DOWNMIX ) { float mixer_left = ( st_ivas->hDecoderConfig->non_diegetic_pan_gain + 1.f ) * 0.5f; float mixer_rigth = 1.f - mixer_left; v_multc( output[0], mixer_rigth, output[1], output_frame ); v_multc( output[0], mixer_left, output[0], output_frame ); pan_left = ( st_ivas->hDecoderConfig->non_diegetic_pan_gain + 1.f ) * 0.5f; pan_right = 1.f - pan_left; v_multc( output[0], pan_right, output[1], output_frame ); v_multc( output[0], pan_left, output[0], output_frame ); } #endif else if ( st_ivas->renderer_type == RENDERER_PARAM_ISM || st_ivas->renderer_type == RENDERER_SBA_LINEAR_ENC ) Loading @@ -217,10 +220,10 @@ ivas_error ivas_dec( #ifdef NON_DIEGETIC_PAN else if ( st_ivas->renderer_type == RENDERER_NON_DIEGETIC_DOWNMIX ) { float mixer_left = ( st_ivas->hDecoderConfig->non_diegetic_pan_gain + 1.f ) * 0.5f; float mixer_rigth = 1.f - mixer_left; v_multc( output[0], mixer_rigth, output[1], output_frame ); v_multc( output[0], mixer_left, output[0], output_frame ); pan_left = ( st_ivas->hDecoderConfig->non_diegetic_pan_gain + 1.f ) * 0.5f; pan_right = 1.f - pan_left; v_multc( output[0], pan_right, output[1], output_frame ); v_multc( output[0], pan_left, output[0], output_frame ); } #endif else if ( st_ivas->renderer_type == RENDERER_TD_PANNING || st_ivas->renderer_type == RENDERER_BINAURAL_MIXER_CONV_ROOM ) Loading
lib_dec/ivas_ism_renderer.c +0 −4 Original line number Diff line number Diff line Loading @@ -149,11 +149,7 @@ void ivas_ism_render( else { /* Head rotation: rotate the object positions depending the head's orientation */ #ifdef ISM_NON_DIEGETIC_PAN if ( st_ivas->hHeadTrackData != NULL && st_ivas->hHeadTrackData->num_quaternions >= 0 && st_ivas->hIsmMetaData[i]->ism_metadata_flag != 2 ) #else if ( st_ivas->hHeadTrackData != NULL && st_ivas->hHeadTrackData->num_quaternions >= 0 ) #endif { rotateAziEle( st_ivas->hIsmMetaData[i]->azimuth, st_ivas->hIsmMetaData[i]->elevation, &azimuth, &elevation, Rmat, st_ivas->hIntSetup.is_planar_setup ); } Loading
lib_dec/lib_dec.c +5 −4 Original line number Diff line number Diff line Loading @@ -405,11 +405,12 @@ ivas_error IVAS_DEC_Configure( const int16_t customLsOutputEnabled, /* i : enable custom loudspeaker setup handle */ const int16_t hrtfReaderEnabled, /* i : enable HRTF binary file input */ const int16_t enableHeadRotation, /* i : enable head rotation for binaural output */ const int16_t renderConfigEnabled /* i : enable Renderer config. file for binaural output */ #ifdef NON_DIEGETIC_PAN , const int16_t renderConfigEnabled, /* i : enable Renderer config. file for binaural output */ int16_t Opt_non_diegetic_pan, /* i : diegetic or not */ float non_diegetic_pan_gain /* i : non diegetic panning gain */ #else const int16_t renderConfigEnabled /* i : enable Renderer config. file for binaural output */ #endif ) { Loading
lib_dec/lib_dec.h +5 −4 Original line number Diff line number Diff line Loading @@ -133,11 +133,12 @@ ivas_error IVAS_DEC_Configure( const int16_t customLsOutputEnabled, /* i : enable custom loudspeaker setup handle */ const int16_t hrtfReaderEnabled, /* i : enable HRTF binary file input */ const int16_t enableHeadRotation, /* i : enable head rotation for binaural output */ const int16_t renderConfigEnabled /* i : enable Renderer config. file for binaural output */ #ifdef NON_DIEGETIC_PAN , const int16_t renderConfigEnabled, /* i : enable Renderer config. file for binaural output */ int16_t Opt_non_diegetic_pan, /* i : diegetic or not */ float non_diegetic_pan_gain /* i : non diegetic panning gain */ #else const int16_t renderConfigEnabled /* i : enable Renderer config. file for binaural output */ #endif ); Loading
lib_enc/ivas_ism_metadata_enc.c +1 −1 Original line number Diff line number Diff line Loading @@ -389,7 +389,7 @@ ivas_error ivas_ism_metadata_enc( { hIsmMetaData->azimuth = 180.0f - hIsmMetaData->azimuth; } if ( hIsmMetaData->azimuth < 90.0f ) if ( hIsmMetaData->azimuth < -90.0f ) { hIsmMetaData->azimuth = -180.0f - hIsmMetaData->azimuth; } Loading