Loading lib_dec/ivas_osba_dec.c +11 −30 Original line number Diff line number Diff line Loading @@ -150,41 +150,23 @@ ivas_error ivas_osba_dirac_td_binaural_jbm( int16_t n; ivas_error error; ivas_sba_dec_render( st_ivas, nSamplesAsked, nSamplesRendered, nSamplesAvailable, &output_f[2] ); if ( ( error = ivas_td_binaural_renderer_sf( st_ivas, output_f, *nSamplesRendered ) ) != IVAS_ERR_OK ) /* Delay the object signals to match the CLDFB delay on the first ts, taken from OMASA path */ if ( st_ivas->hSpatParamRendCom->slots_rendered == 0 ) { return error; } int16_t tcBufferSize; for ( n = 0; n < BINAURAL_CHANNELS; n++ ) { int16_t i; for ( i = 0; i < nSamplesAsked; i++ ) { output_f[n][i] = 0.5f * output_f[2 + n][i] + 0.5f * output_f[n][i]; } } tcBufferSize = st_ivas->hSpatParamRendCom->num_slots * st_ivas->hSpatParamRendCom->slot_size; #if 0 if ( st_ivas->renderer_type == RENDERER_BINAURAL_FASTCONV ) { if ( ( error = ivas_sba_upmixer_renderer( st_ivas, &output_f[channel_offset], nSamplesAsked ) ) != IVAS_ERR_OK ) for ( n = 0; n < st_ivas->nchan_ism; n++ ) { return error; float *tc_local_n = st_ivas->hTcBuffer->tc[n]; delay_signal( tc_local_n, tcBufferSize, st_ivas->hMasaIsmData->delayBuffer[n], st_ivas->hMasaIsmData->delayBuffer_size ); } } else { ivas_dirac_dec_binaural( st_ivas, st_ivas->hCombinedOrientationData, &output_f[channel_offset], st_ivas->nchan_transport #ifdef API_5MS , MAX_PARAM_SPATIAL_SUBFRAMES #endif ); } if ( ( error = ivas_td_binaural_renderer( st_ivas, p_sepobj, nSamplesAsked ) ) != IVAS_ERR_OK ) ivas_sba_dec_render( st_ivas, nSamplesAsked, nSamplesRendered, nSamplesAvailable, &output_f[2] ); if ( ( error = ivas_td_binaural_renderer_sf( st_ivas, output_f, *nSamplesRendered ) ) != IVAS_ERR_OK ) { return error; } Loading @@ -194,10 +176,9 @@ ivas_error ivas_osba_dirac_td_binaural_jbm( int16_t i; for ( i = 0; i < nSamplesAsked; i++ ) { output_f[n][i] = 0.5f * output_f[channel_offset + n][i] + 0.5f * p_sepobj[n][i]; output_f[n][i] = 0.5f * output_f[2 + n][i] + 0.5f * output_f[n][i]; } } #endif return IVAS_ERR_OK; } Loading lib_dec/ivas_spar_decoder.c +9 −8 Original line number Diff line number Diff line Loading @@ -1529,7 +1529,8 @@ void ivas_spar_dec_upmixer_sf( for ( i = 0; i < nchan_transport; i++ ) { tmp = roundf( output[i][j] * PCM16_TO_FLT_FAC ); pcm = ( tmp > MAX16B_FLT ) ? MAX16B : ( tmp < MIN16B_FLT ) ? MIN16B : (short) tmp; pcm = ( tmp > MAX16B_FLT ) ? MAX16B : ( tmp < MIN16B_FLT ) ? MIN16B : (short) tmp; dbgwrite( &pcm, sizeof( int16_t ), 1, 1, "dmx_dec.raw" ); } } Loading Loading
lib_dec/ivas_osba_dec.c +11 −30 Original line number Diff line number Diff line Loading @@ -150,41 +150,23 @@ ivas_error ivas_osba_dirac_td_binaural_jbm( int16_t n; ivas_error error; ivas_sba_dec_render( st_ivas, nSamplesAsked, nSamplesRendered, nSamplesAvailable, &output_f[2] ); if ( ( error = ivas_td_binaural_renderer_sf( st_ivas, output_f, *nSamplesRendered ) ) != IVAS_ERR_OK ) /* Delay the object signals to match the CLDFB delay on the first ts, taken from OMASA path */ if ( st_ivas->hSpatParamRendCom->slots_rendered == 0 ) { return error; } int16_t tcBufferSize; for ( n = 0; n < BINAURAL_CHANNELS; n++ ) { int16_t i; for ( i = 0; i < nSamplesAsked; i++ ) { output_f[n][i] = 0.5f * output_f[2 + n][i] + 0.5f * output_f[n][i]; } } tcBufferSize = st_ivas->hSpatParamRendCom->num_slots * st_ivas->hSpatParamRendCom->slot_size; #if 0 if ( st_ivas->renderer_type == RENDERER_BINAURAL_FASTCONV ) { if ( ( error = ivas_sba_upmixer_renderer( st_ivas, &output_f[channel_offset], nSamplesAsked ) ) != IVAS_ERR_OK ) for ( n = 0; n < st_ivas->nchan_ism; n++ ) { return error; float *tc_local_n = st_ivas->hTcBuffer->tc[n]; delay_signal( tc_local_n, tcBufferSize, st_ivas->hMasaIsmData->delayBuffer[n], st_ivas->hMasaIsmData->delayBuffer_size ); } } else { ivas_dirac_dec_binaural( st_ivas, st_ivas->hCombinedOrientationData, &output_f[channel_offset], st_ivas->nchan_transport #ifdef API_5MS , MAX_PARAM_SPATIAL_SUBFRAMES #endif ); } if ( ( error = ivas_td_binaural_renderer( st_ivas, p_sepobj, nSamplesAsked ) ) != IVAS_ERR_OK ) ivas_sba_dec_render( st_ivas, nSamplesAsked, nSamplesRendered, nSamplesAvailable, &output_f[2] ); if ( ( error = ivas_td_binaural_renderer_sf( st_ivas, output_f, *nSamplesRendered ) ) != IVAS_ERR_OK ) { return error; } Loading @@ -194,10 +176,9 @@ ivas_error ivas_osba_dirac_td_binaural_jbm( int16_t i; for ( i = 0; i < nSamplesAsked; i++ ) { output_f[n][i] = 0.5f * output_f[channel_offset + n][i] + 0.5f * p_sepobj[n][i]; output_f[n][i] = 0.5f * output_f[2 + n][i] + 0.5f * output_f[n][i]; } } #endif return IVAS_ERR_OK; } Loading
lib_dec/ivas_spar_decoder.c +9 −8 Original line number Diff line number Diff line Loading @@ -1529,7 +1529,8 @@ void ivas_spar_dec_upmixer_sf( for ( i = 0; i < nchan_transport; i++ ) { tmp = roundf( output[i][j] * PCM16_TO_FLT_FAC ); pcm = ( tmp > MAX16B_FLT ) ? MAX16B : ( tmp < MIN16B_FLT ) ? MIN16B : (short) tmp; pcm = ( tmp > MAX16B_FLT ) ? MAX16B : ( tmp < MIN16B_FLT ) ? MIN16B : (short) tmp; dbgwrite( &pcm, sizeof( int16_t ), 1, 1, "dmx_dec.raw" ); } } Loading