Commit baf63d2f authored by Jan Kiene's avatar Jan Kiene
Browse files

Merge branch 'fix_binary_loading_tests' into 'main'

[CI] Fix HRTF binary loading tests

See merge request !1377
parents b7be58e4 97cedcfe
Loading
Loading
Loading
Loading
Loading
+23 −0
Original line number Diff line number Diff line
@@ -1046,6 +1046,29 @@ lc3plus-ensure-no-code-changes:
    - modified_files=$(git status -s)
    - if [[ $modified_files ]]; then printf 'LC3plus codebase was modified!\n\n'"$modified_files"'\n\n'; exit $EXIT_CODE_FAIL; fi

check-bitexactness-hrtf-rom-and-file:
  extends:
    - .test-job-linux
    - .rules-merge-request
  stage: test
  needs: ["build-codec-linux-cmake"]
  timeout: "5 minutes"
  script:
    - *print-common-info
    - cmake .
    - make -j
    - python3 tests/create_short_testvectors.py --which all --cut_len 1.0
    - python3 -m pytest tests/hrtf_binary_loading --html=report.html --junit-xml=report-junit.xml --self-contained-html
  artifacts:
    paths:
      - report.html
      - report-junit.xml
    when: always
    name: "$CI_JOB_NAME--$CI_MERGE_REQUEST_ID--sha-$CI_COMMIT_SHA--hrtf-loading"
    expose_as: "logs-hrtf-loading"
    expire_in: "5 days"


# ---------------------------------------------------------------
# Test jobs for main branch
# ---------------------------------------------------------------
+28 −5
Original line number Diff line number Diff line
@@ -48,14 +48,22 @@ addpath(genpath('../td_object_renderer/modeling_tool/'));
writeRomFileOutput = true; %% generation of rom files if true
writeBinaryOutput = true; %% generation of binary files if true. Always true for TD renderer
writeEachRendererBinaryOutput = true; %% generation of binary split files each containing binary data for individual renderer 

normalizeSofaInputData = false; %% if true SOFA IR are nomalized
%% Set ivas root path
ivas_path = ['..' filesep '..' filesep];

generateCustomBinaryFile = false;

%% Set input files
%hrir_file_name = 'D1_48K_24bit_256tap_FIR_SOFA.sofa';
%hrir_file_name = 'HRIR_128_Meth5_IRC_51_Q10_symL_Itrp1_48000.sofa';
hrir_file_name = 'HRIR_128_Meth5_IRC_53_Q10_symL_Itrp1_48000.sofa';
if generateCustomBinaryFile
    hrir_file_name_init = 'HRIR_128_Meth5_IRC_51_Q10_symL_Itrp1_48000.sofa';
    hrir_file_name = 'HRIR_128_Meth5_IRC_51_Q10_symL_Itrp1_48000_norm.sofa';
    output_bin_name = 'ivas_binaural_51_brir-lc';
else 
    hrir_file_name_init = 'HRIR_128_Meth5_IRC_53_Q10_symL_Itrp1_48000.sofa';
    hrir_file_name = 'HRIR_128_Meth5_IRC_53_Q10_symL_Itrp1_48000_norm.sofa';
    output_bin_name = 'ivas_binaural';
end
brir_file_name = 'IIS_BRIR_officialMPEG_Combined.sofa';
hrir_path = fullfile ('.','HRIRs_sofa');
brir_path = fullfile ('.','BRIRs_sofa');
@@ -63,14 +71,23 @@ brir_path = fullfile ('.','BRIRs_sofa');
rom_path = [ivas_path 'lib_rend'];
binary_path = fullfile ('.','binaural_renderers_hrtf_data');
binary_name = [erase(hrir_file_name,'.sofa') '+' erase(brir_file_name, '.sofa') ];
output_bin_name = 'ivas_binaural';
if ~(exist(binary_path, 'dir'))
  mkdir(binary_path);
end

hrir_file_init = fullfile( hrir_path, hrir_file_name_init);
hrir_file = fullfile( hrir_path, hrir_file_name);
brir_file = fullfile( brir_path, brir_file_name);

%% normalize input HRTF

if (normalizeSofaInputData)
    SOFA_normalize(hrir_file_init,hrir_file);
else
    hrir_file_name = hrir_file_name_init;
    hrir_file = hrir_file_init;
end

%% generate td binauralizer rom  or binary values

dataSpec.dataBase = 'IVAS';
@@ -100,6 +117,12 @@ if writeBinaryOutput == true
                ];
end

if generateCustomBinaryFile
    command = [command ...
                    ' -brir_optim_config_path' ...
                    ' brir_low_complexity_optim.cfg ' ...
                    ]
end                     
command = [command ...
                    ' -compute_reverb_rom ' ...
                    erase(hrir_file,'.sofa') '.mat ' ...
Loading