Loading Workspace_msvc/lib_dec.vcxproj +2 −1 Original line number Diff line number Diff line Loading @@ -213,6 +213,8 @@ <ClCompile Include="..\lib_dec\ivas_core_dec_fx.c" /> <ClCompile Include="..\lib_dec\ivas_cpe_dec_fx.c" /> <ClCompile Include="..\lib_dec\ivas_decision_matrix_dec_fx.c" /> <ClCompile Include="..\lib_dec\ivas_dec_fx.c" /> <ClCompile Include="..\lib_dec\ivas_dec_render_fx.c" /> <ClCompile Include="..\lib_dec\ivas_dirac_dec_fx.c" /> <ClCompile Include="..\lib_dec\ivas_dirac_output_synthesis_cov_fx.c" /> <ClCompile Include="..\lib_dec\ivas_entropy_decoder_fx.c" /> Loading @@ -222,7 +224,6 @@ <ClCompile Include="..\lib_dec\ivas_ism_metadata_dec_fx.c" /> <ClCompile Include="..\lib_dec\ivas_ism_param_dec_fx.c" /> <ClCompile Include="..\lib_dec\ivas_ism_renderer_fx.c" /> <ClCompile Include="..\lib_dec\ivas_jbm_dec_fx.c" /> <ClCompile Include="..\lib_dec\ivas_lfe_dec_fx.c" /> <ClCompile Include="..\lib_dec\ivas_lfe_plc_fx.c" /> <ClCompile Include="..\lib_dec\ivas_ls_custom_dec_fx.c" /> Loading Workspace_msvc/lib_dec.vcxproj.filters +6 −6 Original line number Diff line number Diff line Loading @@ -326,9 +326,6 @@ <ClCompile Include="..\lib_dec\vlpc_2st_dec_fx.c"> <Filter>decoder_all_c</Filter> </ClCompile> <ClCompile Include="..\lib_dec\ivas_binRenderer_internal_fx.c"> <Filter>decoder_ivas_c</Filter> </ClCompile> <ClCompile Include="..\lib_dec\ivas_core_dec_fx.c"> <Filter>decoder_ivas_c</Filter> </ClCompile> Loading Loading @@ -362,9 +359,6 @@ <ClCompile Include="..\lib_dec\ivas_ism_renderer_fx.c"> <Filter>decoder_ivas_c</Filter> </ClCompile> <ClCompile Include="..\lib_dec\ivas_jbm_dec_fx.c"> <Filter>decoder_ivas_c</Filter> </ClCompile> <ClCompile Include="..\lib_dec\ivas_ls_custom_dec_fx.c"> <Filter>decoder_ivas_c</Filter> </ClCompile> Loading Loading @@ -509,6 +503,12 @@ <ClCompile Include="..\lib_dec\rom_dec_fx.c"> <Filter>decoder_all_c</Filter> </ClCompile> <ClCompile Include="..\lib_dec\ivas_dec_fx.c"> <Filter>decoder_ivas_c</Filter> </ClCompile> <ClCompile Include="..\lib_dec\ivas_dec_render_fx.c"> <Filter>decoder_ivas_c</Filter> </ClCompile> </ItemGroup> <ItemGroup> <ClInclude Include="..\lib_dec\lib_dec.h" /> Loading apps/decoder.c +42 −36 Original line number Diff line number Diff line Loading @@ -408,7 +408,6 @@ int main( asked_num_subframes = arg.render_num_subframes; uint16_t aeID = arg.aeSequence.count > 0 ? arg.aeSequence.pID[0] : IVAS_DEFAULT_AEID; arg.enableHeadRotation = arg.enableHeadRotation || arg.outputConfig == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED || arg.outputConfig == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM; if ( ( error = IVAS_DEC_Configure( hIvasDec, arg.output_Fs, arg.outputConfig, arg.render_num_subframes, arg.customLsOutputEnabled, arg.hrtfReaderEnabled, arg.enableHeadRotation, arg.enableExternalOrientation, arg.orientation_tracking, arg.renderConfigEnabled, arg.roomSize, arg.non_diegetic_pan_enabled, Loading @@ -418,22 +417,10 @@ int main( goto cleanup; } if ( ( error = IVAS_DEC_GetRenderNumSubfr( hIvasDec, &arg.render_num_subframes ) ) != IVAS_ERR_OK ) { fprintf( stderr, "\nIVAS_DEC_GetRenderNumSubfr failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) ); goto cleanup; } if ( arg.render_num_subframes != asked_num_subframes ) { fprintf( stderr, "\nChanged render framesize, only 20ms are allowed for decoding to EXT!\n" ); } /*------------------------------------------------------------------------------------------* * Configure Split rendering *------------------------------------------------------------------------------------------*/ asked_num_subframes = arg.render_num_subframes; if ( arg.outputConfig == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED || arg.outputConfig == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) { if ( ( error = IVAS_DEC_EnableSplitRendering( hIvasDec ) ) != IVAS_ERR_OK ) Loading @@ -441,6 +428,7 @@ int main( fprintf( stderr, "\nSplit rendering configure failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) ); goto cleanup; } } if ( ( error = IVAS_DEC_GetRenderNumSubfr( hIvasDec, &arg.render_num_subframes ) ) != IVAS_ERR_OK ) { Loading @@ -450,8 +438,7 @@ int main( if ( !arg.renderConfigEnabled && ( arg.render_num_subframes != asked_num_subframes ) ) { fprintf( stderr, "\nChanged render framesize, only 20ms are allowed for non-0dof split rendering!\n" ); } fprintf( stderr, "\nChanged render framesize, only 20ms allowed!\n" ); } /*------------------------------------------------------------------------------------------* Loading Loading @@ -1996,6 +1983,7 @@ static ivas_error decodeG192( bool needNewFrame; int16_t nSamplesRendered, nSamplesRendered_loop, nSamplesToRender; IsmFileWriter *ismWriters[IVAS_MAX_NUM_OBJECTS]; IVAS_QUATERNION Quaternions[IVAS_MAX_PARAM_SPATIAL_SUBFRAMES] = { { -12582912, 0, 0, 0, 22 }, { -12582912, 0, 0, 0, 22 }, { -12582912, 0, 0, 0, 22 }, { -12582912, 0, 0, 0, 22 } }; IVAS_VECTOR3 Pos[IVAS_MAX_PARAM_SPATIAL_SUBFRAMES] = { { 0, 0, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0 } }; int16_t vec_pos_update, vec_pos_len; SplitFileReadWrite *splitRendWriter = NULL; Loading Loading @@ -2144,10 +2132,8 @@ static ivas_error decodeG192( } /* Head-tracking input simulation */ if ( arg.enableHeadRotation ) if ( arg.enableHeadRotation || isSplitRend ) { IVAS_QUATERNION Quaternions[IVAS_MAX_PARAM_SPATIAL_SUBFRAMES]; if ( headRotReader == NULL ) { for ( i = 0; i < (int16_t) num_subframes; i++ ) Loading Loading @@ -2187,7 +2173,6 @@ static ivas_error decodeG192( if ( arg.enableExternalOrientation ) { IVAS_QUATERNION Quaternions[IVAS_MAX_PARAM_SPATIAL_SUBFRAMES]; int8_t enableHeadRotation[IVAS_MAX_PARAM_SPATIAL_SUBFRAMES]; int8_t enableExternalOrientation[IVAS_MAX_PARAM_SPATIAL_SUBFRAMES]; int8_t enableRotationInterpolation[IVAS_MAX_PARAM_SPATIAL_SUBFRAMES]; Loading Loading @@ -2534,16 +2519,30 @@ static ivas_error decodeG192( } /* Head-tracking input simulation */ if ( arg.enableHeadRotation ) if ( arg.enableHeadRotation || isSplitRend ) { if ( headRotReader == NULL ) { Quaternions[i].w_fx = -12582912; Quaternions[i].x_fx = 0; Quaternions[i].y_fx = 0; Quaternions[i].z_fx = 0; Quaternions[i].q_fact = 22; Pos[i].x = 0.0f; Pos[i].y = 0.0f; Pos[i].z = 0.0f; Pos[i].q_fact = 25; } else { IVAS_QUATERNION Quaternion; if ( ( error = HeadRotationFileReading( headRotReader, &Quaternion, &Pos[0] ) ) != IVAS_ERR_OK ) if ( ( error = HeadRotationFileReading( headRotReader, &Quaternions[0], &Pos[0] ) ) != IVAS_ERR_OK ) { fprintf( stderr, "\nError %s while reading head orientation from %s\n", IVAS_DEC_GetErrorMessage( error ), RotationFileReader_getFilePath( headRotReader ) ); goto cleanup; } } if ( ( error = IVAS_DEC_FeedHeadTrackData( hIvasDec, Quaternion, Pos[0], 0, DEFAULT_AXIS ) ) != IVAS_ERR_OK ) if ( ( error = IVAS_DEC_FeedHeadTrackData( hIvasDec, Quaternions[0], Pos[0], 0, DEFAULT_AXIS ) ) != IVAS_ERR_OK ) { fprintf( stderr, "\nIVAS_DEC_FeedHeadTrackData failed: %s\n", IVAS_DEC_GetErrorMessage( error ) ); goto cleanup; Loading Loading @@ -2775,6 +2774,7 @@ static ivas_error decodeVoIP( IVAS_DEC_BS_FORMAT bsFormat = IVAS_DEC_BS_UNKOWN; IsmFileWriter *ismWriters[IVAS_MAX_NUM_OBJECTS]; IVAS_QUATERNION Quaternions[IVAS_MAX_PARAM_SPATIAL_SUBFRAMES] = { { -12582912, 0, 0, 0, 22 }, { -12582912, 0, 0, 0, 22 }, { -12582912, 0, 0, 0, 22 }, { -12582912, 0, 0, 0, 22 } }; IVAS_VECTOR3 Pos[IVAS_MAX_PARAM_SPATIAL_SUBFRAMES] = { { 0, 0, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0 } }; int16_t vec_pos_update, vec_pos_len; int16_t nOutSamples = 0; Loading Loading @@ -2975,10 +2975,8 @@ static ivas_error decodeVoIP( } /* Head-tracking input simulation */ if ( arg.enableHeadRotation ) if ( arg.enableHeadRotation || isSplitRend ) { IVAS_QUATERNION Quaternions[IVAS_MAX_PARAM_SPATIAL_SUBFRAMES]; if ( headRotReader == NULL ) { for ( i = 0; i < (int16_t) num_subframes; i++ ) Loading Loading @@ -3018,7 +3016,6 @@ static ivas_error decodeVoIP( if ( arg.enableExternalOrientation ) { IVAS_QUATERNION Quaternions[IVAS_MAX_PARAM_SPATIAL_SUBFRAMES]; int8_t enableHeadRotation[IVAS_MAX_PARAM_SPATIAL_SUBFRAMES]; int8_t enableExternalOrientation[IVAS_MAX_PARAM_SPATIAL_SUBFRAMES]; int8_t enableRotationInterpolation[IVAS_MAX_PARAM_SPATIAL_SUBFRAMES]; Loading Loading @@ -3932,6 +3929,15 @@ static ivas_error restartDecoder( goto cleanup; } if ( arg->outputConfig == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED || arg->outputConfig == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) { if ( ( error = IVAS_DEC_EnableSplitRendering( hIvasDec ) ) != IVAS_ERR_OK ) { fprintf( stderr, "\nSplit rendering configure failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) ); goto cleanup; } } if ( ( error = IVAS_DEC_GetRenderNumSubfr( hIvasDec, &arg->render_num_subframes ) ) != IVAS_ERR_OK ) { fprintf( stderr, "\nIVAS_DEC_GetRenderNumSubfr failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) ); Loading apps/encoder.c +1 −1 Original line number Diff line number Diff line Loading @@ -2049,7 +2049,7 @@ static void usage_enc( void ) fprintf( stdout, " where 0 = adaptive, 3-100 = fixed in number of frames,\n" ); fprintf( stdout, " default is deactivated\n" ); fprintf( stdout, "-dtx : Activate DTX mode with a SID update rate of 8 frames\n" ); fprintf( stdout, " Note: DTX is supported in EVS, stereo, ISM, SBA up to 80kbps and MASA up to 128kbps \n" ); fprintf( stdout, " Note: DTX is supported on all bitrates for EVS, stereo, ISM, and MASA, and up to 80 kbps for SBA.\n" ); fprintf( stdout, "-rf p o : Activate channel-aware mode for WB and SWB signal at 13.2kbps, \n" ); fprintf( stdout, " where FEC indicator, p: LO or HI, and FEC offset, o: 2, 3, 5, or 7 in number of frames.\n" ); fprintf( stdout, " Alternatively p and o can be replaced by a rf configuration file with each line \n" ); Loading apps/encoder_fmtsw.c +1 −1 Original line number Diff line number Diff line Loading @@ -2152,7 +2152,7 @@ static void usage_enc( void ) fprintf( stdout, " where 0 = adaptive, 3-100 = fixed in number of frames,\n" ); fprintf( stdout, " default is deactivated\n" ); fprintf( stdout, "-dtx : Activate DTX mode with a SID update rate of 8 frames\n" ); fprintf( stdout, " Note: DTX is supported in EVS, stereo, ISM, SBA up to 80kbps and MASA up to 128kbps \n" ); fprintf( stdout, " Note: DTX is supported on all bitrates for EVS, stereo, ISM, and MASA, and up to 80 kbps for SBA.\n" ); fprintf( stdout, "-rf p o : Activate channel-aware mode for WB and SWB signal at 13.2kbps, \n" ); fprintf( stdout, " where FEC indicator, p: LO or HI, and FEC offset, o: 2, 3, 5, or 7 in number of frames.\n" ); fprintf( stdout, " Alternatively p and o can be replaced by a rf configuration file with each line \n" ); Loading Loading
Workspace_msvc/lib_dec.vcxproj +2 −1 Original line number Diff line number Diff line Loading @@ -213,6 +213,8 @@ <ClCompile Include="..\lib_dec\ivas_core_dec_fx.c" /> <ClCompile Include="..\lib_dec\ivas_cpe_dec_fx.c" /> <ClCompile Include="..\lib_dec\ivas_decision_matrix_dec_fx.c" /> <ClCompile Include="..\lib_dec\ivas_dec_fx.c" /> <ClCompile Include="..\lib_dec\ivas_dec_render_fx.c" /> <ClCompile Include="..\lib_dec\ivas_dirac_dec_fx.c" /> <ClCompile Include="..\lib_dec\ivas_dirac_output_synthesis_cov_fx.c" /> <ClCompile Include="..\lib_dec\ivas_entropy_decoder_fx.c" /> Loading @@ -222,7 +224,6 @@ <ClCompile Include="..\lib_dec\ivas_ism_metadata_dec_fx.c" /> <ClCompile Include="..\lib_dec\ivas_ism_param_dec_fx.c" /> <ClCompile Include="..\lib_dec\ivas_ism_renderer_fx.c" /> <ClCompile Include="..\lib_dec\ivas_jbm_dec_fx.c" /> <ClCompile Include="..\lib_dec\ivas_lfe_dec_fx.c" /> <ClCompile Include="..\lib_dec\ivas_lfe_plc_fx.c" /> <ClCompile Include="..\lib_dec\ivas_ls_custom_dec_fx.c" /> Loading
Workspace_msvc/lib_dec.vcxproj.filters +6 −6 Original line number Diff line number Diff line Loading @@ -326,9 +326,6 @@ <ClCompile Include="..\lib_dec\vlpc_2st_dec_fx.c"> <Filter>decoder_all_c</Filter> </ClCompile> <ClCompile Include="..\lib_dec\ivas_binRenderer_internal_fx.c"> <Filter>decoder_ivas_c</Filter> </ClCompile> <ClCompile Include="..\lib_dec\ivas_core_dec_fx.c"> <Filter>decoder_ivas_c</Filter> </ClCompile> Loading Loading @@ -362,9 +359,6 @@ <ClCompile Include="..\lib_dec\ivas_ism_renderer_fx.c"> <Filter>decoder_ivas_c</Filter> </ClCompile> <ClCompile Include="..\lib_dec\ivas_jbm_dec_fx.c"> <Filter>decoder_ivas_c</Filter> </ClCompile> <ClCompile Include="..\lib_dec\ivas_ls_custom_dec_fx.c"> <Filter>decoder_ivas_c</Filter> </ClCompile> Loading Loading @@ -509,6 +503,12 @@ <ClCompile Include="..\lib_dec\rom_dec_fx.c"> <Filter>decoder_all_c</Filter> </ClCompile> <ClCompile Include="..\lib_dec\ivas_dec_fx.c"> <Filter>decoder_ivas_c</Filter> </ClCompile> <ClCompile Include="..\lib_dec\ivas_dec_render_fx.c"> <Filter>decoder_ivas_c</Filter> </ClCompile> </ItemGroup> <ItemGroup> <ClInclude Include="..\lib_dec\lib_dec.h" /> Loading
apps/decoder.c +42 −36 Original line number Diff line number Diff line Loading @@ -408,7 +408,6 @@ int main( asked_num_subframes = arg.render_num_subframes; uint16_t aeID = arg.aeSequence.count > 0 ? arg.aeSequence.pID[0] : IVAS_DEFAULT_AEID; arg.enableHeadRotation = arg.enableHeadRotation || arg.outputConfig == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED || arg.outputConfig == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM; if ( ( error = IVAS_DEC_Configure( hIvasDec, arg.output_Fs, arg.outputConfig, arg.render_num_subframes, arg.customLsOutputEnabled, arg.hrtfReaderEnabled, arg.enableHeadRotation, arg.enableExternalOrientation, arg.orientation_tracking, arg.renderConfigEnabled, arg.roomSize, arg.non_diegetic_pan_enabled, Loading @@ -418,22 +417,10 @@ int main( goto cleanup; } if ( ( error = IVAS_DEC_GetRenderNumSubfr( hIvasDec, &arg.render_num_subframes ) ) != IVAS_ERR_OK ) { fprintf( stderr, "\nIVAS_DEC_GetRenderNumSubfr failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) ); goto cleanup; } if ( arg.render_num_subframes != asked_num_subframes ) { fprintf( stderr, "\nChanged render framesize, only 20ms are allowed for decoding to EXT!\n" ); } /*------------------------------------------------------------------------------------------* * Configure Split rendering *------------------------------------------------------------------------------------------*/ asked_num_subframes = arg.render_num_subframes; if ( arg.outputConfig == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED || arg.outputConfig == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) { if ( ( error = IVAS_DEC_EnableSplitRendering( hIvasDec ) ) != IVAS_ERR_OK ) Loading @@ -441,6 +428,7 @@ int main( fprintf( stderr, "\nSplit rendering configure failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) ); goto cleanup; } } if ( ( error = IVAS_DEC_GetRenderNumSubfr( hIvasDec, &arg.render_num_subframes ) ) != IVAS_ERR_OK ) { Loading @@ -450,8 +438,7 @@ int main( if ( !arg.renderConfigEnabled && ( arg.render_num_subframes != asked_num_subframes ) ) { fprintf( stderr, "\nChanged render framesize, only 20ms are allowed for non-0dof split rendering!\n" ); } fprintf( stderr, "\nChanged render framesize, only 20ms allowed!\n" ); } /*------------------------------------------------------------------------------------------* Loading Loading @@ -1996,6 +1983,7 @@ static ivas_error decodeG192( bool needNewFrame; int16_t nSamplesRendered, nSamplesRendered_loop, nSamplesToRender; IsmFileWriter *ismWriters[IVAS_MAX_NUM_OBJECTS]; IVAS_QUATERNION Quaternions[IVAS_MAX_PARAM_SPATIAL_SUBFRAMES] = { { -12582912, 0, 0, 0, 22 }, { -12582912, 0, 0, 0, 22 }, { -12582912, 0, 0, 0, 22 }, { -12582912, 0, 0, 0, 22 } }; IVAS_VECTOR3 Pos[IVAS_MAX_PARAM_SPATIAL_SUBFRAMES] = { { 0, 0, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0 } }; int16_t vec_pos_update, vec_pos_len; SplitFileReadWrite *splitRendWriter = NULL; Loading Loading @@ -2144,10 +2132,8 @@ static ivas_error decodeG192( } /* Head-tracking input simulation */ if ( arg.enableHeadRotation ) if ( arg.enableHeadRotation || isSplitRend ) { IVAS_QUATERNION Quaternions[IVAS_MAX_PARAM_SPATIAL_SUBFRAMES]; if ( headRotReader == NULL ) { for ( i = 0; i < (int16_t) num_subframes; i++ ) Loading Loading @@ -2187,7 +2173,6 @@ static ivas_error decodeG192( if ( arg.enableExternalOrientation ) { IVAS_QUATERNION Quaternions[IVAS_MAX_PARAM_SPATIAL_SUBFRAMES]; int8_t enableHeadRotation[IVAS_MAX_PARAM_SPATIAL_SUBFRAMES]; int8_t enableExternalOrientation[IVAS_MAX_PARAM_SPATIAL_SUBFRAMES]; int8_t enableRotationInterpolation[IVAS_MAX_PARAM_SPATIAL_SUBFRAMES]; Loading Loading @@ -2534,16 +2519,30 @@ static ivas_error decodeG192( } /* Head-tracking input simulation */ if ( arg.enableHeadRotation ) if ( arg.enableHeadRotation || isSplitRend ) { if ( headRotReader == NULL ) { Quaternions[i].w_fx = -12582912; Quaternions[i].x_fx = 0; Quaternions[i].y_fx = 0; Quaternions[i].z_fx = 0; Quaternions[i].q_fact = 22; Pos[i].x = 0.0f; Pos[i].y = 0.0f; Pos[i].z = 0.0f; Pos[i].q_fact = 25; } else { IVAS_QUATERNION Quaternion; if ( ( error = HeadRotationFileReading( headRotReader, &Quaternion, &Pos[0] ) ) != IVAS_ERR_OK ) if ( ( error = HeadRotationFileReading( headRotReader, &Quaternions[0], &Pos[0] ) ) != IVAS_ERR_OK ) { fprintf( stderr, "\nError %s while reading head orientation from %s\n", IVAS_DEC_GetErrorMessage( error ), RotationFileReader_getFilePath( headRotReader ) ); goto cleanup; } } if ( ( error = IVAS_DEC_FeedHeadTrackData( hIvasDec, Quaternion, Pos[0], 0, DEFAULT_AXIS ) ) != IVAS_ERR_OK ) if ( ( error = IVAS_DEC_FeedHeadTrackData( hIvasDec, Quaternions[0], Pos[0], 0, DEFAULT_AXIS ) ) != IVAS_ERR_OK ) { fprintf( stderr, "\nIVAS_DEC_FeedHeadTrackData failed: %s\n", IVAS_DEC_GetErrorMessage( error ) ); goto cleanup; Loading Loading @@ -2775,6 +2774,7 @@ static ivas_error decodeVoIP( IVAS_DEC_BS_FORMAT bsFormat = IVAS_DEC_BS_UNKOWN; IsmFileWriter *ismWriters[IVAS_MAX_NUM_OBJECTS]; IVAS_QUATERNION Quaternions[IVAS_MAX_PARAM_SPATIAL_SUBFRAMES] = { { -12582912, 0, 0, 0, 22 }, { -12582912, 0, 0, 0, 22 }, { -12582912, 0, 0, 0, 22 }, { -12582912, 0, 0, 0, 22 } }; IVAS_VECTOR3 Pos[IVAS_MAX_PARAM_SPATIAL_SUBFRAMES] = { { 0, 0, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0 } }; int16_t vec_pos_update, vec_pos_len; int16_t nOutSamples = 0; Loading Loading @@ -2975,10 +2975,8 @@ static ivas_error decodeVoIP( } /* Head-tracking input simulation */ if ( arg.enableHeadRotation ) if ( arg.enableHeadRotation || isSplitRend ) { IVAS_QUATERNION Quaternions[IVAS_MAX_PARAM_SPATIAL_SUBFRAMES]; if ( headRotReader == NULL ) { for ( i = 0; i < (int16_t) num_subframes; i++ ) Loading Loading @@ -3018,7 +3016,6 @@ static ivas_error decodeVoIP( if ( arg.enableExternalOrientation ) { IVAS_QUATERNION Quaternions[IVAS_MAX_PARAM_SPATIAL_SUBFRAMES]; int8_t enableHeadRotation[IVAS_MAX_PARAM_SPATIAL_SUBFRAMES]; int8_t enableExternalOrientation[IVAS_MAX_PARAM_SPATIAL_SUBFRAMES]; int8_t enableRotationInterpolation[IVAS_MAX_PARAM_SPATIAL_SUBFRAMES]; Loading Loading @@ -3932,6 +3929,15 @@ static ivas_error restartDecoder( goto cleanup; } if ( arg->outputConfig == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED || arg->outputConfig == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) { if ( ( error = IVAS_DEC_EnableSplitRendering( hIvasDec ) ) != IVAS_ERR_OK ) { fprintf( stderr, "\nSplit rendering configure failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) ); goto cleanup; } } if ( ( error = IVAS_DEC_GetRenderNumSubfr( hIvasDec, &arg->render_num_subframes ) ) != IVAS_ERR_OK ) { fprintf( stderr, "\nIVAS_DEC_GetRenderNumSubfr failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) ); Loading
apps/encoder.c +1 −1 Original line number Diff line number Diff line Loading @@ -2049,7 +2049,7 @@ static void usage_enc( void ) fprintf( stdout, " where 0 = adaptive, 3-100 = fixed in number of frames,\n" ); fprintf( stdout, " default is deactivated\n" ); fprintf( stdout, "-dtx : Activate DTX mode with a SID update rate of 8 frames\n" ); fprintf( stdout, " Note: DTX is supported in EVS, stereo, ISM, SBA up to 80kbps and MASA up to 128kbps \n" ); fprintf( stdout, " Note: DTX is supported on all bitrates for EVS, stereo, ISM, and MASA, and up to 80 kbps for SBA.\n" ); fprintf( stdout, "-rf p o : Activate channel-aware mode for WB and SWB signal at 13.2kbps, \n" ); fprintf( stdout, " where FEC indicator, p: LO or HI, and FEC offset, o: 2, 3, 5, or 7 in number of frames.\n" ); fprintf( stdout, " Alternatively p and o can be replaced by a rf configuration file with each line \n" ); Loading
apps/encoder_fmtsw.c +1 −1 Original line number Diff line number Diff line Loading @@ -2152,7 +2152,7 @@ static void usage_enc( void ) fprintf( stdout, " where 0 = adaptive, 3-100 = fixed in number of frames,\n" ); fprintf( stdout, " default is deactivated\n" ); fprintf( stdout, "-dtx : Activate DTX mode with a SID update rate of 8 frames\n" ); fprintf( stdout, " Note: DTX is supported in EVS, stereo, ISM, SBA up to 80kbps and MASA up to 128kbps \n" ); fprintf( stdout, " Note: DTX is supported on all bitrates for EVS, stereo, ISM, and MASA, and up to 80 kbps for SBA.\n" ); fprintf( stdout, "-rf p o : Activate channel-aware mode for WB and SWB signal at 13.2kbps, \n" ); fprintf( stdout, " where FEC indicator, p: LO or HI, and FEC offset, o: 2, 3, 5, or 7 in number of frames.\n" ); fprintf( stdout, " Alternatively p and o can be replaced by a rf configuration file with each line \n" ); Loading