Commit 27f490ec authored by emerit's avatar emerit
Browse files

improve main script

parent 81cee0d6
Loading
Loading
Loading
Loading
+34 −10
Original line number Diff line number Diff line
@@ -38,6 +38,13 @@ clear all;
close all;
clc;

if isfolder(['binaural_renderers_hrtf_data' filesep() 'IVAS_default'])
    rmdir(['binaural_renderers_hrtf_data' filesep() 'IVAS_default'],'s');
end
if isfolder(['binaural_renderers_hrtf_data' filesep() 'temp'])
    rmdir(['binaural_renderers_hrtf_data' filesep() 'temp'],'s');
end

%% Add path to routines needed scripts
addpath('./matlab_hrir_generation_scripts/');
addpath('./param_bin/');
@@ -45,7 +52,7 @@ addpath('./fastconv/');
addpath(genpath('../td_object_renderer/modeling_tool/'));

%% Set arguments
generateCustomBinaryFile = false;
generateCustomBinaryFile = true;
generateBinaryFile_fx = true;
generate_BE = false;
writeRomFileOutput = true & ~generateCustomBinaryFile; %% generation of rom files if true
@@ -57,20 +64,28 @@ ivas_path = ['..' filesep '..' filesep];

%% Set input files
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.sofa';
    output_bin_name = 'ivas_binaural_51_brir-lc';
%    hrir_file_name = 'HRIR_128_Meth5_IRC_51_Q10_symL_Itrp1_48000.sofa';
    hrir_file_name = 'FABIAN_HRIR_measured_HATO_0.sofa';
%     hrir_file_name = 'ari-dtf_nh2.sofa'; % fail for TD renderer
    % hrir_file_name = 'BiLi-IRC_1101_C_HRIR_96000.sofa'; % fail for TD renderer
    % hrir_file_name = 'cipic-subject_003.sofa'; % fail for TD renderer
    % hrir_file_name = 'Listen-IRC_1002_C_44100.sofa'; % fail for TD renderer
    % hrir_file_name = 'mit_kemar_normal_pinna.sofa'; % fail for TD renderer
    %hrir_file_name = 'RIEC_hrir_subject_001.sofa'; % fail for TD renderer
    hrir_file_name_init = hrir_file_name;
    output_bin_name = 'ivas_binaural_custom';
    brir_file_name = 'bbcrdlr_all_speakers.sofa';
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.sofa';
    hrir_file_name_init = hrir_file_name;
    output_bin_name = 'ivas_binaural';
end
    brir_file_name = 'IIS_BRIR_officialMPEG_Combined.sofa';
end
hrir_path = fullfile ('.','HRIRs_sofa');
brir_path = fullfile ('.','BRIRs_sofa');
%% Set output files
rom_path = [ivas_path 'lib_rend'];
binary_path = fullfile ('.','binaural_renderers_hrtf_data');
binary_path = fullfile ('.','binaural_renderers_hrtf_data/temp');
binary_name = [erase(hrir_file_name,'.sofa') '+' erase(brir_file_name, '.sofa') ];
if ~(exist(binary_path, 'dir'))
  mkdir(binary_path);
@@ -92,7 +107,11 @@ end
%% generate td binauralizer rom  or binary values

dataSpec.dataBase = 'IVAS';
if generateCustomBinaryFile
    dataSpec.subjId = 'custom';
else
    dataSpec.subjId = 'default';
end
% specify HR filter directory
dataSpec.hrfInDir = hrir_file;
dataSpec.hrfOutDir = binary_path;
@@ -105,9 +124,13 @@ Mod_Hrf_Itd_Main(dataSpec);

%% generate crend rom  or binary values
SOFA_save_to_mat(hrir_file);
SOFA_save_to_mat(brir_file);
SOFA_save_to_mat(brir_file,'Combined');

if generateCustomBinaryFile
    convert_SD2SHD_HRIRs(hrir_path,hrir_file_name,-1);
else
    convert_SD2SHD_HRIRs(hrir_path,hrir_file_name,128);
end

command = ['.' filesep() 'generate_crend_ivas_tables'];

@@ -194,6 +217,7 @@ if writeRomFileOutput == true
    
    fclose(fp);
end

%% concatenate all previously generated binary files to binary file for IVAS decoder or renderer. One per sample rates

if writeBinaryOutput == true