From 653137d1b4940011d5433766cc0fe8fcbd69cb23 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tomas=20Toftg=C3=A5rd?= Date: Wed, 14 Jun 2023 00:47:00 +0200 Subject: [PATCH 1/3] Append zeros to input signal of reverb to allow filter to ring out. --- ivas_processing_scripts/audiotools/wrappers/reverb.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ivas_processing_scripts/audiotools/wrappers/reverb.py b/ivas_processing_scripts/audiotools/wrappers/reverb.py index fc37b0f6..62c6dfdc 100644 --- a/ivas_processing_scripts/audiotools/wrappers/reverb.py +++ b/ivas_processing_scripts/audiotools/wrappers/reverb.py @@ -89,6 +89,9 @@ def reverb( tmp_input.audio = resample_itu(tmp_input, IR.fs) tmp_input.fs = IR.fs + # add trailing zeros + tmp_input.audio = np.concatenate([tmp_input.audio, np.zeros((IR.audio.shape[0]-1, 1))]) + # write input audio signal to temporary file in .pcm format tmp_input_file = tmp_dir.joinpath("tmp_reverbIn.pcm") write(tmp_input_file, tmp_input.audio, tmp_input.fs) -- GitLab From 7f61001ebd3a7c21db9052bbbf84fe4c77c0fb62 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tomas=20Toftg=C3=A5rd?= Date: Wed, 14 Jun 2023 00:48:56 +0200 Subject: [PATCH 2/3] Adjust delay of second sentence for process_stereo_items.py given extended output from reverb. --- ivas_processing_scripts/generation/process_stereo_items.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/ivas_processing_scripts/generation/process_stereo_items.py b/ivas_processing_scripts/generation/process_stereo_items.py index 4d58eb22..86fdb030 100644 --- a/ivas_processing_scripts/generation/process_stereo_items.py +++ b/ivas_processing_scripts/generation/process_stereo_items.py @@ -193,6 +193,7 @@ def generate_stereo_scene( else: source_overlap = 0.0 + len_s1 = 0 y = audio.ChannelBasedAudio("STEREO") for i in range(N_sources): # parse parameters from the scene description @@ -223,6 +224,9 @@ def generate_stereo_scene( fs=cfg.IR_fs, ) + if i == 0: + len_s1 = x.audio.shape[0] + # convolve with stereo IR x = reverb_stereo(x, IR) @@ -233,7 +237,7 @@ def generate_stereo_scene( # shift the second (and all other) source files (positive shift creates overlap, negative shift creates a gap) if i > 0: # get the length of the first source file - N_delay = len(y.audio[:, 0]) + N_delay = len_s1 # add the shift N_delay += int(-source_overlap * x.fs) -- GitLab From 42bf7176690288b6b983f9cd476dc9adf603785d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tomas=20Toftg=C3=A5rd?= Date: Wed, 14 Jun 2023 00:59:55 +0200 Subject: [PATCH 3/3] Adjust delay of second sentence for process_ambi_items.py given extended output from reverb. --- ivas_processing_scripts/generation/process_ambi_items.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/ivas_processing_scripts/generation/process_ambi_items.py b/ivas_processing_scripts/generation/process_ambi_items.py index 64176841..cd8b80d3 100644 --- a/ivas_processing_scripts/generation/process_ambi_items.py +++ b/ivas_processing_scripts/generation/process_ambi_items.py @@ -203,6 +203,7 @@ def generate_ambi_scene( else: ambi_format = "FOA" + len_s1 = 0 y = audio.SceneBasedAudio(ambi_format) for i in range(N_sources): # parse parameters from the scene description @@ -233,6 +234,9 @@ def generate_ambi_scene( fs=cfg.IR_fs, ) + if i == 0: + len_s1 = x.audio.shape[0] + # convolve with the FOA/HOA2 IR if ambi_format == "FOA": x = reverb_foa(x, IR) @@ -246,7 +250,7 @@ def generate_ambi_scene( # shift the second (and all other) source files (positive shift creates overlap, negative shift creates a gap) if i > 0: # get the length of the first source file - N_delay = len(y.audio[:, 0]) + N_delay = len_s1 # add the shift N_delay += int(-source_overlap * x.fs) -- GitLab