From 74b0d774494a16bf2354b17554471b10c4af0132 Mon Sep 17 00:00:00 2001 From: Treffehn Date: Thu, 20 Apr 2023 17:53:34 +0200 Subject: [PATCH 1/2] fixed concat bug --- ivas_processing_scripts/audiotools/audiofile.py | 3 ++- ivas_processing_scripts/processing/processing.py | 12 +++++++++++- ivas_processing_scripts/utils.py | 2 +- 3 files changed, 14 insertions(+), 3 deletions(-) diff --git a/ivas_processing_scripts/audiotools/audiofile.py b/ivas_processing_scripts/audiotools/audiofile.py index f8fad48f..a3c84e7e 100755 --- a/ivas_processing_scripts/audiotools/audiofile.py +++ b/ivas_processing_scripts/audiotools/audiofile.py @@ -153,6 +153,7 @@ def concat( silence_pre: int, silence_post: int, in_fs: Optional[int] = 48000, + num_channels: Optional[int] = None, pad_noise: Optional[bool] = False, preamble: Optional[int] = None, pad_noise_preamble: Optional[bool] = False, @@ -189,7 +190,7 @@ def concat( # Read input files for in_file in in_filenames: - x, fs = read(in_file, fs=in_fs) + x, fs = read(in_file, fs=in_fs, nchannels=num_channels) if fs_compare and fs_compare != fs: raise ValueError("Sampling rates of files to concatenate don't match") else: diff --git a/ivas_processing_scripts/processing/processing.py b/ivas_processing_scripts/processing/processing.py index 76e25fe7..3df3a1fa 100755 --- a/ivas_processing_scripts/processing/processing.py +++ b/ivas_processing_scripts/processing/processing.py @@ -46,6 +46,7 @@ from ivas_processing_scripts.audiotools.metadata import ( from ivas_processing_scripts.constants import LOGGER_DATEFMT, LOGGER_FORMAT from ivas_processing_scripts.processing.config import TestConfig from ivas_processing_scripts.utils import apply_func_parallel, list_audio, pairwise +from ivas_processing_scripts.audiotools import audio class Processing(ABC): @@ -108,12 +109,21 @@ def concat_setup(cfg: TestConfig, logger: logging.Logger): f"{cfg.input_path.name}_concatenated.wav" ) + # determine number of channels for pcm and raw files + if hasattr(cfg, "preprocessing"): + tmp_in_fmt = cfg.preprocessing.get("fmt", cfg.input["fmt"]) + else: + tmp_in_fmt = cfg.input["fmt"] + tmp_audio = audio.fromtype(tmp_in_fmt) + tmp_num_chans = tmp_audio.num_channels + cfg.splits = concat( cfg.items_list, cfg.concat_file, cfg.concat_silence.get("pre", 0), cfg.concat_silence.get("post", 0), - cfg.input.get("fs", 48000), + in_fs=cfg.input.get("fs", 48000), + num_channels=tmp_num_chans, preamble=cfg.preamble, pad_noise_preamble=cfg.pad_noise_preamble, ) diff --git a/ivas_processing_scripts/utils.py b/ivas_processing_scripts/utils.py index f28dd79f..f271ec76 100755 --- a/ivas_processing_scripts/utils.py +++ b/ivas_processing_scripts/utils.py @@ -41,7 +41,7 @@ from pathlib import Path from shutil import which from typing import Callable, Iterable, Optional, Union -ALLOWED_INPUT_EXT = (".wav", ".pcm", ".txt") +ALLOWED_INPUT_EXT = (".wav", ".pcm", ".txt", ".raw") BIN_DIR = Path(__file__).parent.joinpath("bin") -- GitLab From 248576ed8e125688035c25e9a78e446f11c07a48 Mon Sep 17 00:00:00 2001 From: Treffehn Date: Thu, 20 Apr 2023 17:58:25 +0200 Subject: [PATCH 2/2] formatting --- ivas_processing_scripts/processing/processing.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ivas_processing_scripts/processing/processing.py b/ivas_processing_scripts/processing/processing.py index 3df3a1fa..e755a325 100755 --- a/ivas_processing_scripts/processing/processing.py +++ b/ivas_processing_scripts/processing/processing.py @@ -38,6 +38,7 @@ from shutil import copyfile from typing import Iterable, Union from warnings import warn +from ivas_processing_scripts.audiotools import audio from ivas_processing_scripts.audiotools.audiofile import concat, split from ivas_processing_scripts.audiotools.metadata import ( concat_meta_from_file, @@ -46,7 +47,6 @@ from ivas_processing_scripts.audiotools.metadata import ( from ivas_processing_scripts.constants import LOGGER_DATEFMT, LOGGER_FORMAT from ivas_processing_scripts.processing.config import TestConfig from ivas_processing_scripts.utils import apply_func_parallel, list_audio, pairwise -from ivas_processing_scripts.audiotools import audio class Processing(ABC): -- GitLab