Commit e604fdac authored by multrus's avatar multrus
Browse files

introduce new function maskfilter_itu() where then the different filtering methods are called

parent 5f67ceef
Loading
Loading
Loading
Loading
Loading
+2 −10
Original line number Diff line number Diff line
@@ -43,8 +43,7 @@ from ivas_processing_scripts.audiotools.convert.scenebased import convert_sceneb
from ivas_processing_scripts.audiotools.wrappers.bs1770 import loudness_norm
from ivas_processing_scripts.audiotools.wrappers.esdru import esdru
from ivas_processing_scripts.audiotools.wrappers.filter import (
    hp50filter_itu,
    kbp20filter_itu,
    maskfilter_itu,
    lpfilter_itu,
    resample_itu,
)
@@ -237,14 +236,7 @@ def process_audio(
    if mask is not None:
        if logger:
            logger.debug("Applying mask filter using ITU STL filter")
        if mask == "HP50":
            x.audio = hp50filter_itu(x)
#        elif mask == "20KBP":
#            x.audio = kbp20filter_itu(x)
#        else:
#            raise ValueError(
#                "Invalid mask filter defined"
#            )
        x.audio = maskfilter_itu(x, mask)

    """resampling"""
    if x.fs != fs:
+30 −0
Original line number Diff line number Diff line
@@ -343,6 +343,36 @@ def kbp20filter_itu(
    return y


def maskfilter_itu(
    x: Audio,
    mask: str,
) -> np.ndarray:
    """
    mask filter for multi-channel audio array

    Parameters
    ----------
    x: Audio
        Input audio

    Returns
    -------
    y: np.ndarray
        Output high-pass filtered array
    """

    if mask == "HP50":
        y = hp50filter_itu(x)
    elif mask == "20KBP":
        y = kbp20filter_itu(x)
    else:
        raise ValueError(
            "Invalid mask filter defined"
            )

    return y


def resample_itu(
    x: Audio,
    fs_new: int,