Commit 0af0e852 authored by Anika Treffehn's avatar Anika Treffehn
Browse files

Merge branch 'fix_concat_wrong_n_channels_for_pcm' into 'main'

fixed concat bug

See merge request !12
parents 3dc54155 248576ed
Loading
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -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:
+11 −1
Original line number Diff line number Diff line
@@ -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,
@@ -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,
    )
+1 −1
Original line number Diff line number Diff line
@@ -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")