Commit a6fe2b86 authored by vaclav's avatar vaclav
Browse files

Merge remote-tracking branch 'remotes/origin/main' into...

Merge remote-tracking branch 'remotes/origin/main' into 1240-st-tcx_only-set-after-ivas_decision_matrix_enc
parents 6c847830 36ac91c1
Loading
Loading
Loading
Loading
Loading
+11 −3
Original line number Diff line number Diff line
@@ -3775,13 +3775,17 @@ static ivas_error IVAS_DEC_LoadHrtfFromFile(

        if ( binaural_renderer == IVAS_BIN_RENDERER_TYPE_TDREND || binaural_renderer_sec == IVAS_BIN_RENDERER_TYPE_TDREND || binaural_renderer == IVAS_BIN_RENDERER_TYPE_DEFAULT )
        {
            if ( ( error = IVAS_DEC_GetHrtfHandle( hIvasDec, &hHrtfBinary->hHrtfTD ) ) != IVAS_ERR_OK )
            if ( ( error = IVAS_DEC_GetHrtfTDrendHandle( hIvasDec, &hHrtfBinary->hHrtfTD ) ) != IVAS_ERR_OK )
            {
                fprintf( stderr, "\nIVAS_DEC_GetHrtfHandle failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) );
                fprintf( stderr, "\nIVAS_DEC_GetHrtfTDrendHandle failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) );
                return error;
            }

#ifdef FIX_1228_SAMPLING_RATE_MISMATCH_IN_HRTF_FILE
            if ( ( error = load_TDrend_HRTF_binary( *hHrtfBinary->hHrtfTD, output_Fs, hHrtfBinary->hrtfReader ) ) != IVAS_ERR_OK )
#else
            if ( ( error = load_HRTF_binary( *hHrtfBinary->hHrtfTD, hHrtfBinary->hrtfReader ) ) != IVAS_ERR_OK )
#endif
            {
                if ( error != IVAS_ERR_BINARY_FILE_WITHOUT_BINAURAL_RENDERER_DATA )
                {
@@ -3881,11 +3885,15 @@ static ivas_error IVAS_DEC_LoadHrtfFromFile(
        }
    }

#ifdef FIX_1228_SAMPLING_RATE_MISMATCH_IN_HRTF_FILE
    if ( hHrtfBinary->hHrtfStatistics == NULL && ( binaural_renderer == IVAS_BIN_RENDERER_TYPE_FASTCONV || binaural_renderer == IVAS_BIN_RENDERER_TYPE_CREND ) && OutputConfig == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB )
#else
    if ( hHrtfBinary->hHrtfStatistics == NULL )
#endif
    {
        if ( ( error = IVAS_DEC_GetHrtfStatisticsHandle( hIvasDec, &hHrtfBinary->hHrtfStatistics ) ) != IVAS_ERR_OK )
        {
            fprintf( stderr, "\nIVAS_DEC_GetHrtfHandle failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) );
            fprintf( stderr, "\nIVAS_DEC_GetHrtfStatisticsHandle failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) );
            return error;
        }

+4 −0
Original line number Diff line number Diff line
@@ -910,7 +910,11 @@ int main(
                goto cleanup;
            }

#ifdef FIX_1228_SAMPLING_RATE_MISMATCH_IN_HRTF_FILE
            if ( ( error = load_TDrend_HRTF_binary( *hHrtfTD, args.sampleRate, hrtfFileReader ) ) != IVAS_ERR_OK )
#else
            if ( ( error = load_HRTF_binary( *hHrtfTD, hrtfFileReader ) ) != IVAS_ERR_OK )
#endif
            {
                if ( error != IVAS_ERR_BINARY_FILE_WITHOUT_BINAURAL_RENDERER_DATA )
                {
+7 −0
Original line number Diff line number Diff line
@@ -79,6 +79,9 @@ typedef enum
    IVAS_ERR_ACOUSTIC_ENVIRONMENT_NOT_SUPPORTED,
    IVAS_ERR_OBJECTS_EDITING_NOT_SUPPORTED,
    IVAS_ERR_INVALID_HRTF,
#ifdef FIX_1228_SAMPLING_RATE_MISMATCH_IN_HRTF_FILE
    IVAS_ERR_INVALID_HRTF_SAMPLING_RATE,
#endif
    IVAS_ERR_BINARY_FILE_WITHOUT_BINAURAL_RENDERER_DATA,
    IVAS_ERR_INVALID_INPUT_FORMAT,
    IVAS_ERR_INVALID_INDEX,
@@ -259,6 +262,10 @@ static inline const char *ivas_error_to_string( ivas_error error_code )
            return "Objects editing not supported";
        case IVAS_ERR_INVALID_HRTF:
            return "Unsupported HRTF filter set";
#ifdef FIX_1228_SAMPLING_RATE_MISMATCH_IN_HRTF_FILE
        case IVAS_ERR_INVALID_HRTF_SAMPLING_RATE:
            return "Wrong sampling rate in HRTF binary file";
#endif
        case IVAS_ERR_BINARY_FILE_WITHOUT_BINAURAL_RENDERER_DATA:
            return "Renderer data missing in HRTF binary file";
        case IVAS_ERR_INVALID_INPUT_FORMAT:
+1 −0
Original line number Diff line number Diff line
@@ -163,6 +163,7 @@
#define FIX_1226_FASTCONV_HRTF_LOADING_OPTIM            /* VA: issue 1226: for FastConv binaural renderer in decoder, load only HTRT coefficient set that is needed */
#define FIX_1227_Crend_HRTF_LOADING_OPTIM               /* VA: issue 1227: for Crend binaural renderer in decoder, load only HTRT coefficient set that is needed */
#define FIX_1222_OMASA_DEC_CHANNEL_BUFFERS              /* VA: issue 1222: Reduction of the number of channel buffers in OMASA decoder */
#define FIX_1228_SAMPLING_RATE_MISMATCH_IN_HRTF_FILE    /* VA: issue 1228: Exit the processing when a HRTF binary file with wrong sampling rate is provided */


/* #################### End BE switches ################################## */
+12 −8
Original line number Diff line number Diff line
@@ -2679,12 +2679,12 @@ ivas_error IVAS_DEC_FeedCustomLsData(


/*---------------------------------------------------------------------*
 * IVAS_DEC_GetHrtfHandle( )
 *
 * IVAS_DEC_GetHrtfTDrendHandle( )
 *
 * Get TD binaural renderer handle
 *---------------------------------------------------------------------*/

ivas_error IVAS_DEC_GetHrtfHandle(
ivas_error IVAS_DEC_GetHrtfTDrendHandle(
    IVAS_DEC_HANDLE hIvasDec,      /* i/o: IVAS decoder handle      */
    IVAS_DEC_HRTF_HANDLE **hHrtfTD /* o  : HRTF handle              */
)
@@ -2703,7 +2703,7 @@ ivas_error IVAS_DEC_GetHrtfHandle(
/*---------------------------------------------------------------------*
 * IVAS_DEC_GetHrtfCRendHandle( )
 *
 *
 * Get Crend binaural renderer handle
 *---------------------------------------------------------------------*/

ivas_error IVAS_DEC_GetHrtfCRendHandle(
@@ -2738,7 +2738,7 @@ ivas_error IVAS_DEC_GetHrtfCRendHandle(
/*---------------------------------------------------------------------*
 * IVAS_DEC_GetHrtfFastConvHandle( )
 *
 *
 * Get FastConv binaural renderer handle
 *---------------------------------------------------------------------*/

ivas_error IVAS_DEC_GetHrtfFastConvHandle(
@@ -2760,7 +2760,7 @@ ivas_error IVAS_DEC_GetHrtfFastConvHandle(
/*---------------------------------------------------------------------*
 * IVAS_DEC_GetHrtfParamBinHandle( )
 *
 *
 * Get Parametric binaural renderer handle
 *---------------------------------------------------------------------*/

ivas_error IVAS_DEC_GetHrtfParamBinHandle(
@@ -2781,7 +2781,7 @@ ivas_error IVAS_DEC_GetHrtfParamBinHandle(
/*---------------------------------------------------------------------*
 * IVAS_DEC_GetHrtfStatisticsHandle( )
 *
 *
 * Get HRTF statistics (room effect) binaural renderer handle
 *---------------------------------------------------------------------*/

ivas_error IVAS_DEC_GetHrtfStatisticsHandle(
@@ -2867,7 +2867,11 @@ ivas_error IVAS_DEC_HRTF_binary_open(
            }
        }

#ifdef FIX_1228_SAMPLING_RATE_MISMATCH_IN_HRTF_FILE
        if ( st_ivas->hHrtfStatistics == NULL && ( binaural_renderer == IVAS_BIN_RENDERER_TYPE_FASTCONV || binaural_renderer == IVAS_BIN_RENDERER_TYPE_CREND ) && st_ivas->hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB )
#else
        if ( st_ivas->hHrtfStatistics == NULL )
#endif
        {
            if ( ( error = ivas_HRTF_statistics_binary_open( &st_ivas->hHrtfStatistics ) ) != IVAS_ERR_OK )
            {
@@ -2883,7 +2887,7 @@ ivas_error IVAS_DEC_HRTF_binary_open(
/*---------------------------------------------------------------------*
 * IVAS_DEC_HRTF_binary_close( )
 *
 *
 * Deallocate HRTF binary handles
 *---------------------------------------------------------------------*/

ivas_error IVAS_DEC_HRTF_binary_close(
Loading