Loading apps/decoder.c +34 −12 Original line number Diff line number Diff line Loading @@ -766,7 +766,8 @@ int main( } else { dealloc_HRTF_binary( hHrtfTD ); free( *hHrtfTD ); *hHrtfTD = NULL; } } #else Loading Loading @@ -816,47 +817,72 @@ int main( #endif } #ifdef FIX_BINARY_BINAURAL_READING IVAS_DEC_HRTF_FASTCONV_HANDLE *hHrtfFastConv = NULL; #else IVAS_DEC_HRTF_FASTCONV_HANDLE hHrtfFastConv = NULL; #endif if ( ( error = IVAS_DEC_GetHrtfFastConvHandle( hIvasDec, &hHrtfFastConv ) ) != IVAS_ERR_OK ) { fprintf( stderr, "\nIVAS_DEC_GetHrtfFastConvHandle failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) ); goto cleanup; } if ( ( error = load_fastconv_HRTF_from_binary( hHrtfFastConv, hrtfReader ) ) != IVAS_ERR_OK ) { #ifdef FIX_BINARY_BINAURAL_READING if ( ( error = load_fastconv_HRTF_from_binary( *hHrtfFastConv, hrtfReader ) ) != IVAS_ERR_OK ) { if ( error != IVAS_ERR_BINARY_FILE_WITHOUT_BINAURAL_RENDERER_DATA ) { fprintf( stderr, "\nError in loading HRTF binary file %s \n\n", arg.hrtfFileName ); goto cleanup; } else { free( *hHrtfFastConv ); *hHrtfFastConv = NULL; } } #else if ( ( error = load_fastconv_HRTF_from_binary( hHrtfFastConv, hrtfReader ) ) != IVAS_ERR_OK ) { fprintf( stderr, "\nError in loading HRTF binary file %s \n\n", arg.hrtfFileName ); goto cleanup; #endif } #endif #ifdef FIX_BINARY_BINAURAL_READING IVAS_DEC_HRTF_PARAMBIN_HANDLE *hHrtfParambin = NULL; #else IVAS_DEC_HRTF_PARAMBIN_HANDLE hHrtfParambin = NULL; #endif if ( ( error = IVAS_DEC_GetHrtfParamBinHandle( hIvasDec, &hHrtfParambin ) ) != IVAS_ERR_OK ) { fprintf( stderr, "\nIVAS_DEC_GetHrtfParamBinHandle failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) ); goto cleanup; } if ( ( error = load_parambin_HRTF_from_binary( hHrtfParambin, hrtfReader ) ) != IVAS_ERR_OK ) { #ifdef FIX_BINARY_BINAURAL_READING if ( ( error = load_parambin_HRTF_from_binary( *hHrtfParambin, hrtfReader ) ) != IVAS_ERR_OK ) { if ( error != IVAS_ERR_BINARY_FILE_WITHOUT_BINAURAL_RENDERER_DATA ) { fprintf( stderr, "\nError in loading HRTF binary file %s \n\n", arg.hrtfFileName ); goto cleanup; } else { free( *hHrtfParambin ); *hHrtfParambin = NULL; } } #else if ( ( error = load_parambin_HRTF_from_binary( hHrtfParambin, hrtfReader ) ) != IVAS_ERR_OK ) { fprintf( stderr, "\nError in loading HRTF binary file %s \n\n", arg.hrtfFileName ); goto cleanup; #endif } #endif } Loading Loading @@ -925,11 +951,7 @@ cleanup: IVAS_DEC_HRTF_HANDLE hHrtfTD = NULL; #endif IVAS_DEC_GetHrtfHandle( hIvasDec, &hHrtfTD ); #ifdef FIX_BINARY_BINAURAL_READING dealloc_HRTF_binary( hHrtfTD ); #else dealloc_HRTF_binary( hHrtfTD ); #endif dealloc_HRTF_binary( *hHrtfTD ); IVAS_DEC_HRTF_CREND_HANDLE hSetOfHRTF = NULL; IVAS_DEC_GetHrtfCRendHandle( hIvasDec, &hSetOfHRTF ); destroy_SetOfHRTF( hSetOfHRTF ); Loading lib_dec/lib_dec.c +18 −2 Original line number Diff line number Diff line Loading @@ -1810,7 +1810,11 @@ ivas_error IVAS_DEC_GetHrtfCRendHandle( ivas_error IVAS_DEC_GetHrtfFastConvHandle( IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */ #ifdef FIX_BINARY_BINAURAL_READING IVAS_DEC_HRTF_FASTCONV_HANDLE **hHrtfFastConv /* o : FASTCONV HRTF handle */ #else IVAS_DEC_HRTF_FASTCONV_HANDLE *hHrtfFastConv /* o : FASTCONV HRTF handle */ #endif ) { if ( hIvasDec == NULL || hIvasDec->st_ivas == NULL || hIvasDec->st_ivas->hHrtfFastConv == NULL ) Loading @@ -1818,7 +1822,11 @@ ivas_error IVAS_DEC_GetHrtfFastConvHandle( return IVAS_ERR_WRONG_PARAMS; } #ifdef FIX_BINARY_BINAURAL_READING *hHrtfFastConv = &hIvasDec->st_ivas->hHrtfFastConv; #else *hHrtfFastConv = hIvasDec->st_ivas->hHrtfFastConv; #endif return IVAS_ERR_OK; } Loading @@ -1832,7 +1840,11 @@ ivas_error IVAS_DEC_GetHrtfFastConvHandle( ivas_error IVAS_DEC_GetHrtfParamBinHandle( IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */ #ifdef FIX_BINARY_BINAURAL_READING IVAS_DEC_HRTF_PARAMBIN_HANDLE **hHrtfParambin /* o : Parametric binauralizer HRTF handle */ #else IVAS_DEC_HRTF_PARAMBIN_HANDLE *hHrtfParambin /* o : Parametric binauralizer HRTF handle */ #endif ) { if ( hIvasDec == NULL || hIvasDec->st_ivas == NULL || hIvasDec->st_ivas->hHrtfParambin == NULL ) Loading @@ -1840,7 +1852,11 @@ ivas_error IVAS_DEC_GetHrtfParamBinHandle( return IVAS_ERR_WRONG_PARAMS; } #ifdef FIX_BINARY_BINAURAL_READING *hHrtfParambin = &hIvasDec->st_ivas->hHrtfParambin; #else *hHrtfParambin = hIvasDec->st_ivas->hHrtfParambin; #endif return IVAS_ERR_OK; } Loading lib_dec/lib_dec.h +8 −0 Original line number Diff line number Diff line Loading @@ -390,12 +390,20 @@ ivas_error IVAS_DEC_GetHrtfCRendHandle( ivas_error IVAS_DEC_GetHrtfFastConvHandle( IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */ #ifdef FIX_BINARY_BINAURAL_READING IVAS_DEC_HRTF_FASTCONV_HANDLE **hHrtfFastConv /* o : FASTCONV HRTF handle */ #else IVAS_DEC_HRTF_FASTCONV_HANDLE *hHrtfFastConv /* o : FASTCONV HRTF handle */ #endif ); ivas_error IVAS_DEC_GetHrtfParamBinHandle( IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */ #ifdef FIX_BINARY_BINAURAL_READING IVAS_DEC_HRTF_PARAMBIN_HANDLE **hHrtfParambin /* o : Parametric binauralizer HRTF handle */ #else IVAS_DEC_HRTF_PARAMBIN_HANDLE *hHrtfParambin /* o : Parametric binauralizer HRTF handle */ #endif ); Loading lib_util/hrtf_file_reader.c +29 −17 Original line number Diff line number Diff line Loading @@ -742,31 +742,18 @@ static void HRTF_energy_sections_precalc( *---------------------------------------------------------------------*/ ivas_error dealloc_HRTF_binary( #ifdef FIX_BINARY_BINAURAL_READING IVAS_DEC_HRTF_HANDLE *phHrtf /* i/o: HRTF handle */ #else IVAS_DEC_HRTF_HANDLE hHrtf /* i/o: HRTF handle */ #endif ) { int16_t i; ivas_error error; #ifdef FIX_BINARY_BINAURAL_READING IVAS_DEC_HRTF_HANDLE hHrtf; #endif error = IVAS_ERR_OK; #ifdef FIX_BINARY_BINAURAL_READING if ( phHrtf == NULL || *phHrtf == NULL ) #else if ( hHrtf == NULL ) #endif { return error; } #ifdef FIX_BINARY_BINAURAL_READING hHrtf = *phHrtf; #endif if ( !hHrtf->ModelParams.modelROM ) { if ( hHrtf->ModelParams.UseItdModel ) Loading Loading @@ -813,9 +800,6 @@ ivas_error dealloc_HRTF_binary( free( hHrtf->lr_energy_and_iac_dyn[i] ); } } #ifdef FIX_BINARY_BINAURAL_READING *phHrtf = NULL; #endif return error; } Loading Loading @@ -1393,6 +1377,10 @@ ivas_error load_fastconv_HRTF_from_binary( ivas_error header_check_result; ivas_hrtfs_file_header_t hrtfs_file_header; int16_t hrtf_id; #ifdef FIX_BINARY_BINAURAL_READING int16_t asFastconv = 0; #endif f_hrtf = hrtfReader->file; Loading Loading @@ -1438,6 +1426,9 @@ ivas_error load_fastconv_HRTF_from_binary( free( hrtf_data ); return IVAS_ERROR( IVAS_ERR_INTERNAL_FATAL, "Could not create HRTF from binary file" ); } #ifdef FIX_BINARY_BINAURAL_READING asFastconv = 1; #endif } else { Loading @@ -1446,7 +1437,15 @@ ivas_error load_fastconv_HRTF_from_binary( } free( hrtf_data ); #ifdef FIX_BINARY_BINAURAL_READING if ( asFastconv ) return IVAS_ERR_OK; else return IVAS_ERR_BINARY_FILE_WITHOUT_BINAURAL_RENDERER_DATA; #else return IVAS_ERR_OK; #endif } Loading Loading @@ -1538,6 +1537,9 @@ ivas_error load_parambin_HRTF_from_binary( ivas_error header_check_result; ivas_hrtfs_file_header_t hrtfs_file_header; int16_t hrtf_id; #ifdef FIX_BINARY_BINAURAL_READING int16_t asParam = 0; #endif f_hrtf = hrtfReader->file; Loading Loading @@ -1586,6 +1588,9 @@ ivas_error load_parambin_HRTF_from_binary( free( hrtf_data ); return IVAS_ERROR( IVAS_ERR_INTERNAL_FATAL, "Could not create HRTF from binary file" ); } #ifdef FIX_BINARY_BINAURAL_READING asParam = 1; #endif } else { Loading @@ -1594,7 +1599,14 @@ ivas_error load_parambin_HRTF_from_binary( } free( hrtf_data ); #ifdef FIX_BINARY_BINAURAL_READING if ( asParam ) return IVAS_ERR_OK; else return IVAS_ERR_BINARY_FILE_WITHOUT_BINAURAL_RENDERER_DATA; #else return IVAS_ERR_OK; #endif } Loading lib_util/hrtf_file_reader.h +0 −4 Original line number Diff line number Diff line Loading @@ -146,11 +146,7 @@ ivas_error load_parambin_HRTF_from_binary( *---------------------------------------------------------------------*/ ivas_error dealloc_HRTF_binary( #ifdef FIX_BINARY_BINAURAL_READING IVAS_DEC_HRTF_HANDLE *phHrtf /* i/o: HRTF handle */ #else IVAS_DEC_HRTF_HANDLE hHrtf /* i/o: HRTF handle */ #endif ); #endif /* IVAS_HRTF_FILE_READER_H */ Loading
apps/decoder.c +34 −12 Original line number Diff line number Diff line Loading @@ -766,7 +766,8 @@ int main( } else { dealloc_HRTF_binary( hHrtfTD ); free( *hHrtfTD ); *hHrtfTD = NULL; } } #else Loading Loading @@ -816,47 +817,72 @@ int main( #endif } #ifdef FIX_BINARY_BINAURAL_READING IVAS_DEC_HRTF_FASTCONV_HANDLE *hHrtfFastConv = NULL; #else IVAS_DEC_HRTF_FASTCONV_HANDLE hHrtfFastConv = NULL; #endif if ( ( error = IVAS_DEC_GetHrtfFastConvHandle( hIvasDec, &hHrtfFastConv ) ) != IVAS_ERR_OK ) { fprintf( stderr, "\nIVAS_DEC_GetHrtfFastConvHandle failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) ); goto cleanup; } if ( ( error = load_fastconv_HRTF_from_binary( hHrtfFastConv, hrtfReader ) ) != IVAS_ERR_OK ) { #ifdef FIX_BINARY_BINAURAL_READING if ( ( error = load_fastconv_HRTF_from_binary( *hHrtfFastConv, hrtfReader ) ) != IVAS_ERR_OK ) { if ( error != IVAS_ERR_BINARY_FILE_WITHOUT_BINAURAL_RENDERER_DATA ) { fprintf( stderr, "\nError in loading HRTF binary file %s \n\n", arg.hrtfFileName ); goto cleanup; } else { free( *hHrtfFastConv ); *hHrtfFastConv = NULL; } } #else if ( ( error = load_fastconv_HRTF_from_binary( hHrtfFastConv, hrtfReader ) ) != IVAS_ERR_OK ) { fprintf( stderr, "\nError in loading HRTF binary file %s \n\n", arg.hrtfFileName ); goto cleanup; #endif } #endif #ifdef FIX_BINARY_BINAURAL_READING IVAS_DEC_HRTF_PARAMBIN_HANDLE *hHrtfParambin = NULL; #else IVAS_DEC_HRTF_PARAMBIN_HANDLE hHrtfParambin = NULL; #endif if ( ( error = IVAS_DEC_GetHrtfParamBinHandle( hIvasDec, &hHrtfParambin ) ) != IVAS_ERR_OK ) { fprintf( stderr, "\nIVAS_DEC_GetHrtfParamBinHandle failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) ); goto cleanup; } if ( ( error = load_parambin_HRTF_from_binary( hHrtfParambin, hrtfReader ) ) != IVAS_ERR_OK ) { #ifdef FIX_BINARY_BINAURAL_READING if ( ( error = load_parambin_HRTF_from_binary( *hHrtfParambin, hrtfReader ) ) != IVAS_ERR_OK ) { if ( error != IVAS_ERR_BINARY_FILE_WITHOUT_BINAURAL_RENDERER_DATA ) { fprintf( stderr, "\nError in loading HRTF binary file %s \n\n", arg.hrtfFileName ); goto cleanup; } else { free( *hHrtfParambin ); *hHrtfParambin = NULL; } } #else if ( ( error = load_parambin_HRTF_from_binary( hHrtfParambin, hrtfReader ) ) != IVAS_ERR_OK ) { fprintf( stderr, "\nError in loading HRTF binary file %s \n\n", arg.hrtfFileName ); goto cleanup; #endif } #endif } Loading Loading @@ -925,11 +951,7 @@ cleanup: IVAS_DEC_HRTF_HANDLE hHrtfTD = NULL; #endif IVAS_DEC_GetHrtfHandle( hIvasDec, &hHrtfTD ); #ifdef FIX_BINARY_BINAURAL_READING dealloc_HRTF_binary( hHrtfTD ); #else dealloc_HRTF_binary( hHrtfTD ); #endif dealloc_HRTF_binary( *hHrtfTD ); IVAS_DEC_HRTF_CREND_HANDLE hSetOfHRTF = NULL; IVAS_DEC_GetHrtfCRendHandle( hIvasDec, &hSetOfHRTF ); destroy_SetOfHRTF( hSetOfHRTF ); Loading
lib_dec/lib_dec.c +18 −2 Original line number Diff line number Diff line Loading @@ -1810,7 +1810,11 @@ ivas_error IVAS_DEC_GetHrtfCRendHandle( ivas_error IVAS_DEC_GetHrtfFastConvHandle( IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */ #ifdef FIX_BINARY_BINAURAL_READING IVAS_DEC_HRTF_FASTCONV_HANDLE **hHrtfFastConv /* o : FASTCONV HRTF handle */ #else IVAS_DEC_HRTF_FASTCONV_HANDLE *hHrtfFastConv /* o : FASTCONV HRTF handle */ #endif ) { if ( hIvasDec == NULL || hIvasDec->st_ivas == NULL || hIvasDec->st_ivas->hHrtfFastConv == NULL ) Loading @@ -1818,7 +1822,11 @@ ivas_error IVAS_DEC_GetHrtfFastConvHandle( return IVAS_ERR_WRONG_PARAMS; } #ifdef FIX_BINARY_BINAURAL_READING *hHrtfFastConv = &hIvasDec->st_ivas->hHrtfFastConv; #else *hHrtfFastConv = hIvasDec->st_ivas->hHrtfFastConv; #endif return IVAS_ERR_OK; } Loading @@ -1832,7 +1840,11 @@ ivas_error IVAS_DEC_GetHrtfFastConvHandle( ivas_error IVAS_DEC_GetHrtfParamBinHandle( IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */ #ifdef FIX_BINARY_BINAURAL_READING IVAS_DEC_HRTF_PARAMBIN_HANDLE **hHrtfParambin /* o : Parametric binauralizer HRTF handle */ #else IVAS_DEC_HRTF_PARAMBIN_HANDLE *hHrtfParambin /* o : Parametric binauralizer HRTF handle */ #endif ) { if ( hIvasDec == NULL || hIvasDec->st_ivas == NULL || hIvasDec->st_ivas->hHrtfParambin == NULL ) Loading @@ -1840,7 +1852,11 @@ ivas_error IVAS_DEC_GetHrtfParamBinHandle( return IVAS_ERR_WRONG_PARAMS; } #ifdef FIX_BINARY_BINAURAL_READING *hHrtfParambin = &hIvasDec->st_ivas->hHrtfParambin; #else *hHrtfParambin = hIvasDec->st_ivas->hHrtfParambin; #endif return IVAS_ERR_OK; } Loading
lib_dec/lib_dec.h +8 −0 Original line number Diff line number Diff line Loading @@ -390,12 +390,20 @@ ivas_error IVAS_DEC_GetHrtfCRendHandle( ivas_error IVAS_DEC_GetHrtfFastConvHandle( IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */ #ifdef FIX_BINARY_BINAURAL_READING IVAS_DEC_HRTF_FASTCONV_HANDLE **hHrtfFastConv /* o : FASTCONV HRTF handle */ #else IVAS_DEC_HRTF_FASTCONV_HANDLE *hHrtfFastConv /* o : FASTCONV HRTF handle */ #endif ); ivas_error IVAS_DEC_GetHrtfParamBinHandle( IVAS_DEC_HANDLE hIvasDec, /* i/o: IVAS decoder handle */ #ifdef FIX_BINARY_BINAURAL_READING IVAS_DEC_HRTF_PARAMBIN_HANDLE **hHrtfParambin /* o : Parametric binauralizer HRTF handle */ #else IVAS_DEC_HRTF_PARAMBIN_HANDLE *hHrtfParambin /* o : Parametric binauralizer HRTF handle */ #endif ); Loading
lib_util/hrtf_file_reader.c +29 −17 Original line number Diff line number Diff line Loading @@ -742,31 +742,18 @@ static void HRTF_energy_sections_precalc( *---------------------------------------------------------------------*/ ivas_error dealloc_HRTF_binary( #ifdef FIX_BINARY_BINAURAL_READING IVAS_DEC_HRTF_HANDLE *phHrtf /* i/o: HRTF handle */ #else IVAS_DEC_HRTF_HANDLE hHrtf /* i/o: HRTF handle */ #endif ) { int16_t i; ivas_error error; #ifdef FIX_BINARY_BINAURAL_READING IVAS_DEC_HRTF_HANDLE hHrtf; #endif error = IVAS_ERR_OK; #ifdef FIX_BINARY_BINAURAL_READING if ( phHrtf == NULL || *phHrtf == NULL ) #else if ( hHrtf == NULL ) #endif { return error; } #ifdef FIX_BINARY_BINAURAL_READING hHrtf = *phHrtf; #endif if ( !hHrtf->ModelParams.modelROM ) { if ( hHrtf->ModelParams.UseItdModel ) Loading Loading @@ -813,9 +800,6 @@ ivas_error dealloc_HRTF_binary( free( hHrtf->lr_energy_and_iac_dyn[i] ); } } #ifdef FIX_BINARY_BINAURAL_READING *phHrtf = NULL; #endif return error; } Loading Loading @@ -1393,6 +1377,10 @@ ivas_error load_fastconv_HRTF_from_binary( ivas_error header_check_result; ivas_hrtfs_file_header_t hrtfs_file_header; int16_t hrtf_id; #ifdef FIX_BINARY_BINAURAL_READING int16_t asFastconv = 0; #endif f_hrtf = hrtfReader->file; Loading Loading @@ -1438,6 +1426,9 @@ ivas_error load_fastconv_HRTF_from_binary( free( hrtf_data ); return IVAS_ERROR( IVAS_ERR_INTERNAL_FATAL, "Could not create HRTF from binary file" ); } #ifdef FIX_BINARY_BINAURAL_READING asFastconv = 1; #endif } else { Loading @@ -1446,7 +1437,15 @@ ivas_error load_fastconv_HRTF_from_binary( } free( hrtf_data ); #ifdef FIX_BINARY_BINAURAL_READING if ( asFastconv ) return IVAS_ERR_OK; else return IVAS_ERR_BINARY_FILE_WITHOUT_BINAURAL_RENDERER_DATA; #else return IVAS_ERR_OK; #endif } Loading Loading @@ -1538,6 +1537,9 @@ ivas_error load_parambin_HRTF_from_binary( ivas_error header_check_result; ivas_hrtfs_file_header_t hrtfs_file_header; int16_t hrtf_id; #ifdef FIX_BINARY_BINAURAL_READING int16_t asParam = 0; #endif f_hrtf = hrtfReader->file; Loading Loading @@ -1586,6 +1588,9 @@ ivas_error load_parambin_HRTF_from_binary( free( hrtf_data ); return IVAS_ERROR( IVAS_ERR_INTERNAL_FATAL, "Could not create HRTF from binary file" ); } #ifdef FIX_BINARY_BINAURAL_READING asParam = 1; #endif } else { Loading @@ -1594,7 +1599,14 @@ ivas_error load_parambin_HRTF_from_binary( } free( hrtf_data ); #ifdef FIX_BINARY_BINAURAL_READING if ( asParam ) return IVAS_ERR_OK; else return IVAS_ERR_BINARY_FILE_WITHOUT_BINAURAL_RENDERER_DATA; #else return IVAS_ERR_OK; #endif } Loading
lib_util/hrtf_file_reader.h +0 −4 Original line number Diff line number Diff line Loading @@ -146,11 +146,7 @@ ivas_error load_parambin_HRTF_from_binary( *---------------------------------------------------------------------*/ ivas_error dealloc_HRTF_binary( #ifdef FIX_BINARY_BINAURAL_READING IVAS_DEC_HRTF_HANDLE *phHrtf /* i/o: HRTF handle */ #else IVAS_DEC_HRTF_HANDLE hHrtf /* i/o: HRTF handle */ #endif ); #endif /* IVAS_HRTF_FILE_READER_H */