Loading .gitlab-ci.yml +39 −26 Original line number Diff line number Diff line Loading @@ -244,6 +244,7 @@ stages: extends: .test-job-linux before_script: - if [ ! -d "$TESTV_DIR" ]; then mkdir -p $TESTV_DIR; fi - python3 scripts/prepare_combined_format_inputs.py - cp -r scripts/testv/* $TESTV_DIR/ # --------------------------------------------------------------- Loading Loading @@ -397,7 +398,7 @@ build-codec-windows-msbuild: - *print-common-info-windows - *activate-WX-windows - py .\scripts\strip_split_rendering.py - MSBuild.exe .\Workspace_msvc\Workspace_msvc.sln /property:Configuration=Debug - MSBuild.exe -maxcpucount .\Workspace_msvc\Workspace_msvc.sln /property:Configuration=Debug # --------------------------------------------------------------- # Test jobs for merge requests Loading Loading @@ -440,7 +441,7 @@ codec-smoke-test: # code selftest testvectors with memory-sanitizer binaries codec-msan: extends: - .test-job-linux - .test-job-linux-needs-testv-dir - .rules-merge-request stage: test needs: ["build-codec-sanitizers-linux"] Loading @@ -448,22 +449,26 @@ codec-msan: - *print-common-info - make clean - make -j CLANG=1 - python3 scripts/self_test.py -z console --create | tee test_output.txt - run_errors=$(cat test_output.txt | grep -ic "run errors") || true - if [ $run_errors != 0 ] ; then echo "Run errors in self_test.py with Clang memory-sanitizer"; exit 1; fi - testcase_timeout=180 - exit_code=0 - python3 -m pytest tests/codec_be_on_mr_nonselection/test_param_file.py -v --update_ref 1 -m create_ref --html=report.html --self-contained-html --junit-xml=report-junit.xml --testcase_timeout=$testcase_timeout --ref_encoder_path ./IVAS_cod --ref_decoder_path ./IVAS_dec || exit_code=$? - if [ $exit_code != 0 ] ; then echo "Run errors found by Clang memory-sanitizer"; exit 1; fi artifacts: name: "mr-$CI_MERGE_REQUEST_IID--sha-$CI_COMMIT_SHORT_SHA--stage-$CI_JOB_STAGE--results" expire_in: 1 week when: always paths: - scripts/ref/logs/ - test_output.txt - report-junit.xml - report.html expose_as: "msan selftest results" reports: junit: - report-junit.xml # code selftest testvectors with address-sanitizer binaries codec-asan: extends: - .test-job-linux - .test-job-linux-needs-testv-dir - .rules-merge-request stage: test needs: ["build-codec-sanitizers-linux"] Loading @@ -471,22 +476,26 @@ codec-asan: - *print-common-info - make clean - make -j CLANG=2 - python3 scripts/self_test.py -z console --create | tee test_output.txt - run_errors=$(cat test_output.txt | grep -ic "run errors") || true - if [ $run_errors != 0 ] ; then echo "Run errors in self_test.py with Clang address-sanitizer"; exit 1; fi - testcase_timeout=180 - exit_code=0 - python3 -m pytest tests/codec_be_on_mr_nonselection/test_param_file.py -v --update_ref 1 -m create_ref --html=report.html --self-contained-html --junit-xml=report-junit.xml --testcase_timeout=$testcase_timeout --ref_encoder_path ./IVAS_cod --ref_decoder_path ./IVAS_dec || exit_code=$? - if [ $exit_code != 0 ] ; then echo "Run errors found by Clang address-sanitizer"; exit 1; fi artifacts: name: "mr-$CI_MERGE_REQUEST_IID--sha-$CI_COMMIT_SHORT_SHA--stage-$CI_JOB_STAGE--results" expire_in: 1 week when: always paths: - scripts/ref/logs/ - test_output.txt - report-junit.xml - report.html expose_as: "asan selftest results" reports: junit: - report-junit.xml # code selftest testvectors with address-sanitizer binaries codec-usan: extends: - .test-job-linux - .test-job-linux-needs-testv-dir - .rules-merge-request stage: test needs: ["build-codec-sanitizers-linux"] Loading @@ -494,17 +503,21 @@ codec-usan: - *print-common-info - make clean - make -j CLANG=3 - UBSAN_OPTIONS=suppressions=scripts/ubsan.supp,report_error_type=1 python3 scripts/self_test.py -z console --create - grep_exit_code=0 - grep UndefinedBehaviorSanitizer scripts/ref/logs/* || grep_exit_code=$? - if [ $grep_exit_code != 1 ] ; then echo "Run errors in self_test.py with Clang undefined-behavior-sanitizer"; exit 1; fi - testcase_timeout=180 - exit_code=0 - UBSAN_OPTIONS=suppressions=scripts/ubsan.supp,report_error_type=1 python3 -m pytest tests/codec_be_on_mr_nonselection/test_param_file.py -v --update_ref 1 -m create_ref --html=report.html --self-contained-html --junit-xml=report-junit.xml --testcase_timeout=$testcase_timeout --ref_encoder_path ./IVAS_cod --ref_decoder_path ./IVAS_dec || exit_code=$? - if [ $exit_code != 0 ] ; then echo "Run errors found by Clang undefined-behavior-sanitizer"; exit 1; fi artifacts: name: "mr-$CI_MERGE_REQUEST_IID--sha-$CI_COMMIT_SHORT_SHA--stage-$CI_JOB_STAGE--results" expire_in: 1 week when: always paths: - scripts/ref/logs/ - report-junit.xml - report.html expose_as: "usan selftest results" reports: junit: - report-junit.xml # test renderer executable renderer-smoke-test: Loading Loading @@ -607,7 +620,7 @@ renderer-usan: # compare renderer bitexactness between target and source branch renderer-pytest-on-merge-request: extends: - .test-job-linux - .test-job-linux-needs-testv-dir - .rules-merge-request needs: ["build-codec-linux-make"] # TODO: set reasonable timeout, will most likely take less Loading Loading @@ -682,7 +695,7 @@ split-rendering-smoke-test: # compare split-rendering bitexactness between target and source branch split-rendering-pytest-on-merge-request: extends: - .test-job-linux - .test-job-linux-needs-testv-dir - .rules-merge-request needs: ["build-codec-linux-make"] # TODO: set reasonable timeout, will most likely take less Loading Loading @@ -755,7 +768,7 @@ split-rendering-pytest-on-merge-request: # compare bit exactness between target and source branch ivas-pytest-on-merge-request: extends: - .test-job-linux - .test-job-linux-needs-testv-dir - .rules-merge-request stage: compare needs: ["build-codec-linux-cmake", "codec-smoke-test"] Loading Loading @@ -812,7 +825,7 @@ ivas-pytest-on-merge-request: # Check interop IVAS_cod_test -> IVAS_dec_ref ivas-interop-on-merge-request: extends: - .test-job-linux - .test-job-linux-needs-testv-dir - .rules-merge-request stage: test needs: ["build-codec-linux-cmake"] Loading Loading @@ -1045,7 +1058,7 @@ be-2-evs-windows: - *print-common-info-windows - $winoutdata = $null - MSBuild.exe .\Workspace_msvc\Workspace_msvc.sln /property:Configuration=Release | tee -variable winoutdata - MSBuild.exe -maxcpucount .\Workspace_msvc\Workspace_msvc.sln /property:Configuration=Release | tee -variable winoutdata - $winoutdata | Out-File $BUILD_OUTPUT -Encoding Utf8 # copy over to never change the testvector dir Loading Loading @@ -1085,7 +1098,7 @@ be-2-evs-linux: codec-comparison-on-main-push: extends: - .test-job-linux - .test-job-linux-needs-testv-dir - .rules-main-push stage: compare needs: ["build-codec-linux-cmake"] Loading Loading @@ -1182,7 +1195,7 @@ test-be-to-release: script: - echo "$CI_COMMIT_BRANCH" - MSBuild.exe .\Workspace_msvc\Workspace_msvc.sln /property:Configuration=Debug /p:Platform=win32 /m | tee -variable winoutdata - MSBuild.exe -maxcpucount .\Workspace_msvc\Workspace_msvc.sln /property:Configuration=Debug /p:Platform=win32 /m | tee -variable winoutdata # path to release candidate refs defined in config.toml Loading apps/decoder.c +40 −0 Original line number Diff line number Diff line Loading @@ -199,6 +199,9 @@ int main( #ifdef NONBE_FIX_BINARY_BINAURAL_READING IVAS_DEC_HRTF_HANDLE *hHrtfTD = NULL; IVAS_DEC_HRTF_CREND_HANDLE *hSetOfHRTF = NULL; #ifdef NONBE_FIX_922_PRECOMPUTED_HRTF_PROPERTIES IVAS_DEC_HRTF_STATISTICS_HANDLE *hHrtfStatistics = NULL; #endif #endif #ifdef DEBUGGING int32_t noClipping; Loading Loading @@ -776,6 +779,7 @@ int main( } #endif #ifndef NONBE_FIX_922_PRECOMPUTED_HRTF_PROPERTIES #ifdef FIX_638_ENERGIE_IAC_ROM_TABLES #ifdef NONBE_FIX_BINARY_BINAURAL_READING if ( ( *hHrtfTD != NULL ) && ( error = load_reverb_binary( *hHrtfTD, hrtfReader ) ) != IVAS_ERR_OK ) Loading @@ -794,6 +798,7 @@ int main( } #endif #endif #endif #ifndef NONBE_FIX_BINARY_BINAURAL_READING IVAS_DEC_HRTF_CREND_HANDLE hSetOfHRTF = NULL; Loading Loading @@ -881,6 +886,36 @@ int main( fprintf( stderr, "\nError in loading HRTF binary file %s for parametric binauralizer \n\n", arg.hrtfFileName ); goto cleanup; } #endif #ifdef NONBE_FIX_922_PRECOMPUTED_HRTF_PROPERTIES #ifdef FIX_638_ENERGIE_IAC_ROM_TABLES #ifdef NONBE_FIX_BINARY_BINAURAL_READING if ( ( error = IVAS_DEC_GetHrtfStatisticsHandle( hIvasDec, &hHrtfStatistics ) ) != IVAS_ERR_OK ) { fprintf( stderr, "\nIVAS_DEC_GetHrtfHandle failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) ); goto cleanup; } if ( ( error = load_reverb_binary( *hHrtfStatistics, arg.output_Fs, 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 { destroy_hrtf_statistics( hHrtfStatistics ); } } #else if ( ( hHrtfTD != NULL ) && ( error = load_reverb_binary( hHrtfTD, hrtfReader ) ) != IVAS_ERR_OK ) { fprintf( stderr, "\nError in loading HRTF binary file %s \n\n", arg.hrtfFileName ); goto cleanup; } #endif #endif #endif } Loading Loading @@ -973,6 +1008,11 @@ cleanup: #endif IVAS_DEC_GetHrtfCRendHandle( hIvasDec, &hSetOfHRTF ); destroy_SetOfHRTF( hSetOfHRTF ); #ifdef NONBE_FIX_922_PRECOMPUTED_HRTF_PROPERTIES IVAS_DEC_GetHrtfStatisticsHandle( hIvasDec, &hHrtfStatistics ); destroy_hrtf_statistics( hHrtfStatistics ); #endif } IVAS_DEC_Close( &hIvasDec ); Loading apps/renderer.c +30 −0 Original line number Diff line number Diff line Loading @@ -748,6 +748,9 @@ int main( IVAS_DEC_HRTF_FASTCONV_HANDLE *hHrtfFastConv = NULL; IVAS_DEC_HRTF_PARAMBIN_HANDLE *hHrtfParambin = NULL; IVAS_DEC_HRTF_HANDLE *hHrtfTD = NULL; #ifdef NONBE_FIX_922_PRECOMPUTED_HRTF_PROPERTIES IVAS_DEC_HRTF_STATISTICS_HANDLE *hHrtfStatistics = NULL; #endif #endif IsmPositionProvider *positionProvider; LfeRoutingConfig *lfeRoutingConfigs[RENDERER_MAX_MC_INPUTS]; Loading Loading @@ -1053,6 +1056,7 @@ int main( } } #ifndef NONBE_FIX_922_PRECOMPUTED_HRTF_PROPERTIES #ifdef FIX_638_ENERGIE_IAC_ROM_TABLES if ( ( hHrtfTD != NULL ) && ( error = load_reverb_binary( *hHrtfTD, hrtfFileReader ) ) != IVAS_ERR_OK ) { Loading @@ -1062,6 +1066,7 @@ int main( goto cleanup; } } #endif #endif if ( ( error = IVAS_REND_GetHrtfCRendHandle( hIvasRend, &hSetOfHRTF ) ) != IVAS_ERR_OK ) Loading Loading @@ -1120,6 +1125,28 @@ int main( destroy_parambin_hrtf( hHrtfParambin ); } } #ifdef NONBE_FIX_922_PRECOMPUTED_HRTF_PROPERTIES #ifdef FIX_638_ENERGIE_IAC_ROM_TABLES if ( ( error = IVAS_REND_GetHrtfStatisticsHandle( hIvasRend, &hHrtfStatistics ) ) != IVAS_ERR_OK ) { fprintf( stderr, "\nIVAS_REND_GetHrtfStatisticsHandle failed\n\n" ); goto cleanup; } if ( ( error = load_reverb_binary( *hHrtfStatistics, args.sampleRate, hrtfFileReader ) ) != IVAS_ERR_OK ) { if ( error != IVAS_ERR_BINARY_FILE_WITHOUT_BINAURAL_RENDERER_DATA ) { fprintf( stderr, "\nError in loading HRTF binary file %s \n\n", args.customHrtfFilePath ); goto cleanup; } else { destroy_hrtf_statistics( hHrtfStatistics ); } } #endif #endif } hrtfFileReader_close( &hrtfFileReader ); Loading Loading @@ -2260,6 +2287,9 @@ cleanup: #ifdef NONBE_FIX_BINARY_BINAURAL_READING destroy_td_hrtf( hHrtfTD ); destroy_SetOfHRTF( hSetOfHRTF ); #ifdef NONBE_FIX_922_PRECOMPUTED_HRTF_PROPERTIES destroy_hrtf_statistics( hHrtfStatistics ); #endif #endif IVAS_REND_Close( &hIvasRend ); IsmPositionProvider_close( positionProvider ); Loading ci/smoke_test.sh +1 −1 Original line number Diff line number Diff line Loading @@ -56,7 +56,7 @@ dly_profile=./scripts/dly_error_profiles/dly_error_profile_10.dat ism_md_cmd="--ism_metadata_files /usr/local/ltv/ltvISM1.csv /usr/local/ltv/ltvISM2.csv /usr/local/ltv/ltvISM3.csv /usr/local/ltv/ltvISM4.csv" duration_arg="-U 1:2" verbosity_cmd="-z console" timeout_cmd="--timeout 5" timeout_cmd="--timeout 20" ep_file="ci/complexity_measurements/ep_10pct_fer.g192" if [ $BUILD -eq 1 ];then Loading lib_com/common_api_types.h +3 −0 Original line number Diff line number Diff line Loading @@ -163,6 +163,9 @@ typedef struct TDREND_HRFILT_FiltSet_struct *IVAS_DEC_HRTF_HANDLE; typedef struct ivas_hrtfs_crend_structure *IVAS_DEC_HRTF_CREND_HANDLE; typedef struct ivas_hrtfs_fastconv_struct *IVAS_DEC_HRTF_FASTCONV_HANDLE; typedef struct ivas_hrtfs_parambin_struct *IVAS_DEC_HRTF_PARAMBIN_HANDLE; #ifdef NONBE_FIX_922_PRECOMPUTED_HRTF_PROPERTIES typedef struct ivas_hrtfs_statistics_struct *IVAS_DEC_HRTF_STATISTICS_HANDLE; #endif typedef struct cldfb_filter_bank_struct *IVAS_CLDFB_FILTER_BANK_HANDLE; typedef struct ivas_LS_setup_custom *IVAS_LSSETUP_CUSTOM_HANDLE; Loading Loading
.gitlab-ci.yml +39 −26 Original line number Diff line number Diff line Loading @@ -244,6 +244,7 @@ stages: extends: .test-job-linux before_script: - if [ ! -d "$TESTV_DIR" ]; then mkdir -p $TESTV_DIR; fi - python3 scripts/prepare_combined_format_inputs.py - cp -r scripts/testv/* $TESTV_DIR/ # --------------------------------------------------------------- Loading Loading @@ -397,7 +398,7 @@ build-codec-windows-msbuild: - *print-common-info-windows - *activate-WX-windows - py .\scripts\strip_split_rendering.py - MSBuild.exe .\Workspace_msvc\Workspace_msvc.sln /property:Configuration=Debug - MSBuild.exe -maxcpucount .\Workspace_msvc\Workspace_msvc.sln /property:Configuration=Debug # --------------------------------------------------------------- # Test jobs for merge requests Loading Loading @@ -440,7 +441,7 @@ codec-smoke-test: # code selftest testvectors with memory-sanitizer binaries codec-msan: extends: - .test-job-linux - .test-job-linux-needs-testv-dir - .rules-merge-request stage: test needs: ["build-codec-sanitizers-linux"] Loading @@ -448,22 +449,26 @@ codec-msan: - *print-common-info - make clean - make -j CLANG=1 - python3 scripts/self_test.py -z console --create | tee test_output.txt - run_errors=$(cat test_output.txt | grep -ic "run errors") || true - if [ $run_errors != 0 ] ; then echo "Run errors in self_test.py with Clang memory-sanitizer"; exit 1; fi - testcase_timeout=180 - exit_code=0 - python3 -m pytest tests/codec_be_on_mr_nonselection/test_param_file.py -v --update_ref 1 -m create_ref --html=report.html --self-contained-html --junit-xml=report-junit.xml --testcase_timeout=$testcase_timeout --ref_encoder_path ./IVAS_cod --ref_decoder_path ./IVAS_dec || exit_code=$? - if [ $exit_code != 0 ] ; then echo "Run errors found by Clang memory-sanitizer"; exit 1; fi artifacts: name: "mr-$CI_MERGE_REQUEST_IID--sha-$CI_COMMIT_SHORT_SHA--stage-$CI_JOB_STAGE--results" expire_in: 1 week when: always paths: - scripts/ref/logs/ - test_output.txt - report-junit.xml - report.html expose_as: "msan selftest results" reports: junit: - report-junit.xml # code selftest testvectors with address-sanitizer binaries codec-asan: extends: - .test-job-linux - .test-job-linux-needs-testv-dir - .rules-merge-request stage: test needs: ["build-codec-sanitizers-linux"] Loading @@ -471,22 +476,26 @@ codec-asan: - *print-common-info - make clean - make -j CLANG=2 - python3 scripts/self_test.py -z console --create | tee test_output.txt - run_errors=$(cat test_output.txt | grep -ic "run errors") || true - if [ $run_errors != 0 ] ; then echo "Run errors in self_test.py with Clang address-sanitizer"; exit 1; fi - testcase_timeout=180 - exit_code=0 - python3 -m pytest tests/codec_be_on_mr_nonselection/test_param_file.py -v --update_ref 1 -m create_ref --html=report.html --self-contained-html --junit-xml=report-junit.xml --testcase_timeout=$testcase_timeout --ref_encoder_path ./IVAS_cod --ref_decoder_path ./IVAS_dec || exit_code=$? - if [ $exit_code != 0 ] ; then echo "Run errors found by Clang address-sanitizer"; exit 1; fi artifacts: name: "mr-$CI_MERGE_REQUEST_IID--sha-$CI_COMMIT_SHORT_SHA--stage-$CI_JOB_STAGE--results" expire_in: 1 week when: always paths: - scripts/ref/logs/ - test_output.txt - report-junit.xml - report.html expose_as: "asan selftest results" reports: junit: - report-junit.xml # code selftest testvectors with address-sanitizer binaries codec-usan: extends: - .test-job-linux - .test-job-linux-needs-testv-dir - .rules-merge-request stage: test needs: ["build-codec-sanitizers-linux"] Loading @@ -494,17 +503,21 @@ codec-usan: - *print-common-info - make clean - make -j CLANG=3 - UBSAN_OPTIONS=suppressions=scripts/ubsan.supp,report_error_type=1 python3 scripts/self_test.py -z console --create - grep_exit_code=0 - grep UndefinedBehaviorSanitizer scripts/ref/logs/* || grep_exit_code=$? - if [ $grep_exit_code != 1 ] ; then echo "Run errors in self_test.py with Clang undefined-behavior-sanitizer"; exit 1; fi - testcase_timeout=180 - exit_code=0 - UBSAN_OPTIONS=suppressions=scripts/ubsan.supp,report_error_type=1 python3 -m pytest tests/codec_be_on_mr_nonselection/test_param_file.py -v --update_ref 1 -m create_ref --html=report.html --self-contained-html --junit-xml=report-junit.xml --testcase_timeout=$testcase_timeout --ref_encoder_path ./IVAS_cod --ref_decoder_path ./IVAS_dec || exit_code=$? - if [ $exit_code != 0 ] ; then echo "Run errors found by Clang undefined-behavior-sanitizer"; exit 1; fi artifacts: name: "mr-$CI_MERGE_REQUEST_IID--sha-$CI_COMMIT_SHORT_SHA--stage-$CI_JOB_STAGE--results" expire_in: 1 week when: always paths: - scripts/ref/logs/ - report-junit.xml - report.html expose_as: "usan selftest results" reports: junit: - report-junit.xml # test renderer executable renderer-smoke-test: Loading Loading @@ -607,7 +620,7 @@ renderer-usan: # compare renderer bitexactness between target and source branch renderer-pytest-on-merge-request: extends: - .test-job-linux - .test-job-linux-needs-testv-dir - .rules-merge-request needs: ["build-codec-linux-make"] # TODO: set reasonable timeout, will most likely take less Loading Loading @@ -682,7 +695,7 @@ split-rendering-smoke-test: # compare split-rendering bitexactness between target and source branch split-rendering-pytest-on-merge-request: extends: - .test-job-linux - .test-job-linux-needs-testv-dir - .rules-merge-request needs: ["build-codec-linux-make"] # TODO: set reasonable timeout, will most likely take less Loading Loading @@ -755,7 +768,7 @@ split-rendering-pytest-on-merge-request: # compare bit exactness between target and source branch ivas-pytest-on-merge-request: extends: - .test-job-linux - .test-job-linux-needs-testv-dir - .rules-merge-request stage: compare needs: ["build-codec-linux-cmake", "codec-smoke-test"] Loading Loading @@ -812,7 +825,7 @@ ivas-pytest-on-merge-request: # Check interop IVAS_cod_test -> IVAS_dec_ref ivas-interop-on-merge-request: extends: - .test-job-linux - .test-job-linux-needs-testv-dir - .rules-merge-request stage: test needs: ["build-codec-linux-cmake"] Loading Loading @@ -1045,7 +1058,7 @@ be-2-evs-windows: - *print-common-info-windows - $winoutdata = $null - MSBuild.exe .\Workspace_msvc\Workspace_msvc.sln /property:Configuration=Release | tee -variable winoutdata - MSBuild.exe -maxcpucount .\Workspace_msvc\Workspace_msvc.sln /property:Configuration=Release | tee -variable winoutdata - $winoutdata | Out-File $BUILD_OUTPUT -Encoding Utf8 # copy over to never change the testvector dir Loading Loading @@ -1085,7 +1098,7 @@ be-2-evs-linux: codec-comparison-on-main-push: extends: - .test-job-linux - .test-job-linux-needs-testv-dir - .rules-main-push stage: compare needs: ["build-codec-linux-cmake"] Loading Loading @@ -1182,7 +1195,7 @@ test-be-to-release: script: - echo "$CI_COMMIT_BRANCH" - MSBuild.exe .\Workspace_msvc\Workspace_msvc.sln /property:Configuration=Debug /p:Platform=win32 /m | tee -variable winoutdata - MSBuild.exe -maxcpucount .\Workspace_msvc\Workspace_msvc.sln /property:Configuration=Debug /p:Platform=win32 /m | tee -variable winoutdata # path to release candidate refs defined in config.toml Loading
apps/decoder.c +40 −0 Original line number Diff line number Diff line Loading @@ -199,6 +199,9 @@ int main( #ifdef NONBE_FIX_BINARY_BINAURAL_READING IVAS_DEC_HRTF_HANDLE *hHrtfTD = NULL; IVAS_DEC_HRTF_CREND_HANDLE *hSetOfHRTF = NULL; #ifdef NONBE_FIX_922_PRECOMPUTED_HRTF_PROPERTIES IVAS_DEC_HRTF_STATISTICS_HANDLE *hHrtfStatistics = NULL; #endif #endif #ifdef DEBUGGING int32_t noClipping; Loading Loading @@ -776,6 +779,7 @@ int main( } #endif #ifndef NONBE_FIX_922_PRECOMPUTED_HRTF_PROPERTIES #ifdef FIX_638_ENERGIE_IAC_ROM_TABLES #ifdef NONBE_FIX_BINARY_BINAURAL_READING if ( ( *hHrtfTD != NULL ) && ( error = load_reverb_binary( *hHrtfTD, hrtfReader ) ) != IVAS_ERR_OK ) Loading @@ -794,6 +798,7 @@ int main( } #endif #endif #endif #ifndef NONBE_FIX_BINARY_BINAURAL_READING IVAS_DEC_HRTF_CREND_HANDLE hSetOfHRTF = NULL; Loading Loading @@ -881,6 +886,36 @@ int main( fprintf( stderr, "\nError in loading HRTF binary file %s for parametric binauralizer \n\n", arg.hrtfFileName ); goto cleanup; } #endif #ifdef NONBE_FIX_922_PRECOMPUTED_HRTF_PROPERTIES #ifdef FIX_638_ENERGIE_IAC_ROM_TABLES #ifdef NONBE_FIX_BINARY_BINAURAL_READING if ( ( error = IVAS_DEC_GetHrtfStatisticsHandle( hIvasDec, &hHrtfStatistics ) ) != IVAS_ERR_OK ) { fprintf( stderr, "\nIVAS_DEC_GetHrtfHandle failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) ); goto cleanup; } if ( ( error = load_reverb_binary( *hHrtfStatistics, arg.output_Fs, 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 { destroy_hrtf_statistics( hHrtfStatistics ); } } #else if ( ( hHrtfTD != NULL ) && ( error = load_reverb_binary( hHrtfTD, hrtfReader ) ) != IVAS_ERR_OK ) { fprintf( stderr, "\nError in loading HRTF binary file %s \n\n", arg.hrtfFileName ); goto cleanup; } #endif #endif #endif } Loading Loading @@ -973,6 +1008,11 @@ cleanup: #endif IVAS_DEC_GetHrtfCRendHandle( hIvasDec, &hSetOfHRTF ); destroy_SetOfHRTF( hSetOfHRTF ); #ifdef NONBE_FIX_922_PRECOMPUTED_HRTF_PROPERTIES IVAS_DEC_GetHrtfStatisticsHandle( hIvasDec, &hHrtfStatistics ); destroy_hrtf_statistics( hHrtfStatistics ); #endif } IVAS_DEC_Close( &hIvasDec ); Loading
apps/renderer.c +30 −0 Original line number Diff line number Diff line Loading @@ -748,6 +748,9 @@ int main( IVAS_DEC_HRTF_FASTCONV_HANDLE *hHrtfFastConv = NULL; IVAS_DEC_HRTF_PARAMBIN_HANDLE *hHrtfParambin = NULL; IVAS_DEC_HRTF_HANDLE *hHrtfTD = NULL; #ifdef NONBE_FIX_922_PRECOMPUTED_HRTF_PROPERTIES IVAS_DEC_HRTF_STATISTICS_HANDLE *hHrtfStatistics = NULL; #endif #endif IsmPositionProvider *positionProvider; LfeRoutingConfig *lfeRoutingConfigs[RENDERER_MAX_MC_INPUTS]; Loading Loading @@ -1053,6 +1056,7 @@ int main( } } #ifndef NONBE_FIX_922_PRECOMPUTED_HRTF_PROPERTIES #ifdef FIX_638_ENERGIE_IAC_ROM_TABLES if ( ( hHrtfTD != NULL ) && ( error = load_reverb_binary( *hHrtfTD, hrtfFileReader ) ) != IVAS_ERR_OK ) { Loading @@ -1062,6 +1066,7 @@ int main( goto cleanup; } } #endif #endif if ( ( error = IVAS_REND_GetHrtfCRendHandle( hIvasRend, &hSetOfHRTF ) ) != IVAS_ERR_OK ) Loading Loading @@ -1120,6 +1125,28 @@ int main( destroy_parambin_hrtf( hHrtfParambin ); } } #ifdef NONBE_FIX_922_PRECOMPUTED_HRTF_PROPERTIES #ifdef FIX_638_ENERGIE_IAC_ROM_TABLES if ( ( error = IVAS_REND_GetHrtfStatisticsHandle( hIvasRend, &hHrtfStatistics ) ) != IVAS_ERR_OK ) { fprintf( stderr, "\nIVAS_REND_GetHrtfStatisticsHandle failed\n\n" ); goto cleanup; } if ( ( error = load_reverb_binary( *hHrtfStatistics, args.sampleRate, hrtfFileReader ) ) != IVAS_ERR_OK ) { if ( error != IVAS_ERR_BINARY_FILE_WITHOUT_BINAURAL_RENDERER_DATA ) { fprintf( stderr, "\nError in loading HRTF binary file %s \n\n", args.customHrtfFilePath ); goto cleanup; } else { destroy_hrtf_statistics( hHrtfStatistics ); } } #endif #endif } hrtfFileReader_close( &hrtfFileReader ); Loading Loading @@ -2260,6 +2287,9 @@ cleanup: #ifdef NONBE_FIX_BINARY_BINAURAL_READING destroy_td_hrtf( hHrtfTD ); destroy_SetOfHRTF( hSetOfHRTF ); #ifdef NONBE_FIX_922_PRECOMPUTED_HRTF_PROPERTIES destroy_hrtf_statistics( hHrtfStatistics ); #endif #endif IVAS_REND_Close( &hIvasRend ); IsmPositionProvider_close( positionProvider ); Loading
ci/smoke_test.sh +1 −1 Original line number Diff line number Diff line Loading @@ -56,7 +56,7 @@ dly_profile=./scripts/dly_error_profiles/dly_error_profile_10.dat ism_md_cmd="--ism_metadata_files /usr/local/ltv/ltvISM1.csv /usr/local/ltv/ltvISM2.csv /usr/local/ltv/ltvISM3.csv /usr/local/ltv/ltvISM4.csv" duration_arg="-U 1:2" verbosity_cmd="-z console" timeout_cmd="--timeout 5" timeout_cmd="--timeout 20" ep_file="ci/complexity_measurements/ep_10pct_fer.g192" if [ $BUILD -eq 1 ];then Loading
lib_com/common_api_types.h +3 −0 Original line number Diff line number Diff line Loading @@ -163,6 +163,9 @@ typedef struct TDREND_HRFILT_FiltSet_struct *IVAS_DEC_HRTF_HANDLE; typedef struct ivas_hrtfs_crend_structure *IVAS_DEC_HRTF_CREND_HANDLE; typedef struct ivas_hrtfs_fastconv_struct *IVAS_DEC_HRTF_FASTCONV_HANDLE; typedef struct ivas_hrtfs_parambin_struct *IVAS_DEC_HRTF_PARAMBIN_HANDLE; #ifdef NONBE_FIX_922_PRECOMPUTED_HRTF_PROPERTIES typedef struct ivas_hrtfs_statistics_struct *IVAS_DEC_HRTF_STATISTICS_HANDLE; #endif typedef struct cldfb_filter_bank_struct *IVAS_CLDFB_FILTER_BANK_HANDLE; typedef struct ivas_LS_setup_custom *IVAS_LSSETUP_CUSTOM_HANDLE; Loading