Loading lib_com/common_api_types.h +1 −0 Original line number Original line Diff line number Diff line Loading @@ -115,6 +115,7 @@ typedef enum { { IVAS_SPLIT_REND_CODEC_LCLD, IVAS_SPLIT_REND_CODEC_LCLD, IVAS_SPLIT_REND_CODEC_LC3PLUS, IVAS_SPLIT_REND_CODEC_LC3PLUS, IVAS_SPLIT_REND_CODEC_NONE } IVAS_SPLIT_REND_CODEC; } IVAS_SPLIT_REND_CODEC; #endif #endif Loading lib_dec/ivas_init_dec.c +14 −2 Original line number Original line Diff line number Diff line Loading @@ -1282,21 +1282,33 @@ ivas_error ivas_init_decoder( } } #ifdef SPLIT_REND_LC3PLUS #ifdef SPLIT_REND_LC3PLUS #ifdef SPLIT_REND_CLDFB_ISM if ( ( st_ivas->hDecoderConfig->output_config == AUDIO_CONFIG_BINAURAL_SPLIT_CLDFB ) || ( st_ivas->hDecoderConfig->output_config == AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) ) #else if ( st_ivas->hDecoderConfig->output_config == AUDIO_CONFIG_BINAURAL_SPLIT_CLDFB ) if ( st_ivas->hDecoderConfig->output_config == AUDIO_CONFIG_BINAURAL_SPLIT_CLDFB ) #endif { { ivas_renderSplitGetMultiBinPoseData( ivas_renderSplitGetMultiBinPoseData( &st_ivas->hRenderConfig->split_rend_config, &st_ivas->hRenderConfig->split_rend_config, &st_ivas->splitBinRend.splitrend.multiBinPoseData, &st_ivas->splitBinRend.splitrend.multiBinPoseData, st_ivas->hHeadTrackData->sr_pose_pred_axis ); st_ivas->hHeadTrackData->sr_pose_pred_axis ); /* Split rendering with ISMs only supported with LC3plus */ /* Split rendering with ISMs only supported with LC3plus */ #ifndef SPLIT_REND_CLDFB_ISM assert( st_ivas->hRenderConfig->split_rend_config.codec == IVAS_SPLIT_REND_CODEC_LC3PLUS ); assert( st_ivas->hRenderConfig->split_rend_config.codec == IVAS_SPLIT_REND_CODEC_LC3PLUS ); #endif #ifdef FIX_SPLIT_REND_OPEN_ERROR_HANDLING #ifdef FIX_SPLIT_REND_OPEN_ERROR_HANDLING error = error = #endif #endif ivas_split_renderer_open( &st_ivas->splitBinRend.splitrend, ivas_split_renderer_open( &st_ivas->splitBinRend.splitrend, &st_ivas->hRenderConfig->split_rend_config, &st_ivas->hRenderConfig->split_rend_config, hDecoderConfig->output_Fs, 0, 0 ); hDecoderConfig->output_Fs, 0, #ifdef SPLIT_REND_CLDFB_ISM ( st_ivas->hDecoderConfig->output_config == AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) ? 1 : 0 #else 0 #endif ); #ifdef FIX_SPLIT_REND_OPEN_ERROR_HANDLING #ifdef FIX_SPLIT_REND_OPEN_ERROR_HANDLING if ( error != IVAS_ERR_OK ) if ( error != IVAS_ERR_OK ) Loading lib_rend/ivas_splitRendererPre.c +7 −0 Original line number Original line Diff line number Diff line Loading @@ -2005,6 +2005,13 @@ static ivas_error ivas_renderMultiTDBinToSplitBinaural( } } #endif #endif } } #ifdef SPLIT_REND_LC3PLUS else { pBits->pose_correction = hSplitBin->multiBinPoseData.poseCorrectionMode; pBits->codec = IVAS_SPLIT_REND_CODEC_NONE; } #endif /*zero pad*/ /*zero pad*/ bit_len = SplitRendBitRate / FRAMES_PER_SEC; bit_len = SplitRendBitRate / FRAMES_PER_SEC; Loading Loading
lib_com/common_api_types.h +1 −0 Original line number Original line Diff line number Diff line Loading @@ -115,6 +115,7 @@ typedef enum { { IVAS_SPLIT_REND_CODEC_LCLD, IVAS_SPLIT_REND_CODEC_LCLD, IVAS_SPLIT_REND_CODEC_LC3PLUS, IVAS_SPLIT_REND_CODEC_LC3PLUS, IVAS_SPLIT_REND_CODEC_NONE } IVAS_SPLIT_REND_CODEC; } IVAS_SPLIT_REND_CODEC; #endif #endif Loading
lib_dec/ivas_init_dec.c +14 −2 Original line number Original line Diff line number Diff line Loading @@ -1282,21 +1282,33 @@ ivas_error ivas_init_decoder( } } #ifdef SPLIT_REND_LC3PLUS #ifdef SPLIT_REND_LC3PLUS #ifdef SPLIT_REND_CLDFB_ISM if ( ( st_ivas->hDecoderConfig->output_config == AUDIO_CONFIG_BINAURAL_SPLIT_CLDFB ) || ( st_ivas->hDecoderConfig->output_config == AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) ) #else if ( st_ivas->hDecoderConfig->output_config == AUDIO_CONFIG_BINAURAL_SPLIT_CLDFB ) if ( st_ivas->hDecoderConfig->output_config == AUDIO_CONFIG_BINAURAL_SPLIT_CLDFB ) #endif { { ivas_renderSplitGetMultiBinPoseData( ivas_renderSplitGetMultiBinPoseData( &st_ivas->hRenderConfig->split_rend_config, &st_ivas->hRenderConfig->split_rend_config, &st_ivas->splitBinRend.splitrend.multiBinPoseData, &st_ivas->splitBinRend.splitrend.multiBinPoseData, st_ivas->hHeadTrackData->sr_pose_pred_axis ); st_ivas->hHeadTrackData->sr_pose_pred_axis ); /* Split rendering with ISMs only supported with LC3plus */ /* Split rendering with ISMs only supported with LC3plus */ #ifndef SPLIT_REND_CLDFB_ISM assert( st_ivas->hRenderConfig->split_rend_config.codec == IVAS_SPLIT_REND_CODEC_LC3PLUS ); assert( st_ivas->hRenderConfig->split_rend_config.codec == IVAS_SPLIT_REND_CODEC_LC3PLUS ); #endif #ifdef FIX_SPLIT_REND_OPEN_ERROR_HANDLING #ifdef FIX_SPLIT_REND_OPEN_ERROR_HANDLING error = error = #endif #endif ivas_split_renderer_open( &st_ivas->splitBinRend.splitrend, ivas_split_renderer_open( &st_ivas->splitBinRend.splitrend, &st_ivas->hRenderConfig->split_rend_config, &st_ivas->hRenderConfig->split_rend_config, hDecoderConfig->output_Fs, 0, 0 ); hDecoderConfig->output_Fs, 0, #ifdef SPLIT_REND_CLDFB_ISM ( st_ivas->hDecoderConfig->output_config == AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) ? 1 : 0 #else 0 #endif ); #ifdef FIX_SPLIT_REND_OPEN_ERROR_HANDLING #ifdef FIX_SPLIT_REND_OPEN_ERROR_HANDLING if ( error != IVAS_ERR_OK ) if ( error != IVAS_ERR_OK ) Loading
lib_rend/ivas_splitRendererPre.c +7 −0 Original line number Original line Diff line number Diff line Loading @@ -2005,6 +2005,13 @@ static ivas_error ivas_renderMultiTDBinToSplitBinaural( } } #endif #endif } } #ifdef SPLIT_REND_LC3PLUS else { pBits->pose_correction = hSplitBin->multiBinPoseData.poseCorrectionMode; pBits->codec = IVAS_SPLIT_REND_CODEC_NONE; } #endif /*zero pad*/ /*zero pad*/ bit_len = SplitRendBitRate / FRAMES_PER_SEC; bit_len = SplitRendBitRate / FRAMES_PER_SEC; Loading