Commit b1912a87 authored by TYAGIRIS's avatar TYAGIRIS
Browse files

reating default 20 ms testing for SR

parent fef21967
Loading
Loading
Loading
Loading
Loading
+2 −26
Original line number Diff line number Diff line
@@ -41,13 +41,9 @@ def check_xfail(test_info, in_fmt, render_config, bitrate=None):
        and "0dof" in render_config
        and (
            "lc3plus" in render_config
            or (in_fmt in INPUT_FORMATS_ISM_SPLIT_REND or in_fmt in INPUT_FORMATS_MC_SPLIT_REND)
            or (
                in_fmt in INPUT_FORMATS_ISM_SPLIT_REND
                or in_fmt in INPUT_FORMATS_MC_SPLIT_REND
            )
            or (
                "external_split" in test_info.node.name
                and in_fmt in INPUT_FORMATS_AMBI_SPLIT_REND
                "external_split" in test_info.node.name and in_fmt in INPUT_FORMATS_AMBI_SPLIT_REND
            )  # CREND for external renderer ambisonics rendering uses LC3plus by default
        )
    ):
@@ -216,24 +212,6 @@ def test_masa_full_chain_split(test_info, in_fmt, bitrate, render_config, trajec
    )


@pytest.mark.parametrize("trajectory", SPLIT_REND_HR_TRAJECTORIES_TO_TEST)
@pytest.mark.parametrize("render_config", RENDERER_CONFIGS_TO_TEST_MASA)
@pytest.mark.parametrize("in_fmt", INPUT_FORMATS_MASA_SPLIT_REND)
def test_masa_external_split(test_info, in_fmt, render_config, trajectory):
    check_xfail(test_info, in_fmt, render_config)

    post_trajectory = HR_TRAJECTORY_DIR.joinpath(f"{trajectory}.csv")
    pre_trajectory = post_trajectory.with_stem(f"{post_trajectory.stem}_delayed")

    run_external_split_rendering(
        in_fmt=in_fmt,
        render_config=RENDER_CFG_DIR.joinpath(f"{render_config}.txt"),
        pre_trajectory=pre_trajectory,
        post_trajectory=post_trajectory,
        output_path_base=OUTPUT_PATH_CUT,
    )


""" PLC """


@@ -267,7 +245,6 @@ full_chain_split_pcm_params = [
    # ("MASA2", "256000", "split_renderer_config_3dof_384k_lcld"),
]


@pytest.mark.parametrize("in_fmt,bitrate,render_config", full_chain_split_pcm_params)
def test_full_chain_split_pcm(test_info, in_fmt, bitrate, render_config):
    check_xfail(test_info, in_fmt, render_config, bitrate)
@@ -293,7 +270,6 @@ external_split_pcm_params = [
    ("ISM1", "split_renderer_config_3dof_384k_lcld"),
]


@pytest.mark.parametrize("in_fmt,render_config", external_split_pcm_params)
def test_external_split_pcm(test_info, in_fmt, render_config):
    check_xfail(test_info, in_fmt, render_config)
+0 −20
Original line number Diff line number Diff line
@@ -185,24 +185,6 @@ def test_masa_full_chain_split(test_info, in_fmt, bitrate, render_config, trajec
    )


@pytest.mark.parametrize("trajectory", SPLIT_REND_HR_TRAJECTORIES_TO_TEST)
@pytest.mark.parametrize("render_config", RENDERER_CONFIGS_TO_TEST_MASA)
@pytest.mark.parametrize("in_fmt", INPUT_FORMATS_MASA_SPLIT_REND)
def test_masa_external_split(test_info, in_fmt, render_config, trajectory):
    check_xfail(test_info, in_fmt, render_config)

    post_trajectory = HR_TRAJECTORY_DIR.joinpath(f"{trajectory}.csv")
    pre_trajectory = post_trajectory.with_stem(f"{post_trajectory.stem}_delayed")

    compare_external_split_args(
        test_info,
        in_fmt=in_fmt,
        render_config=RENDER_CFG_DIR.joinpath(f"{render_config}.txt"),
        pre_trajectory=pre_trajectory,
        post_trajectory=post_trajectory,
    )


""" PLC """


@@ -236,7 +218,6 @@ full_chain_split_pcm_params = [
    # ("MASA2", "256000", "split_renderer_config_3dof_384k_lcld"),
]


@pytest.mark.parametrize("in_fmt,bitrate,render_config", full_chain_split_pcm_params)
def test_full_chain_split_pcm(test_info, in_fmt, bitrate, render_config):
    check_xfail(test_info, in_fmt, render_config, bitrate)
@@ -262,7 +243,6 @@ external_split_pcm_params = [
    ("ISM1", "split_renderer_config_3dof_384k_lcld"),
]


@pytest.mark.parametrize("in_fmt,render_config", external_split_pcm_params)
def test_external_split_pcm(test_info, in_fmt, render_config):
    check_xfail(test_info, in_fmt, render_config)
+14 −25
Original line number Diff line number Diff line
@@ -62,13 +62,14 @@ def run_full_chain_split_rendering(
    """
    with TemporaryDirectory() as tmp_dir:
        tmp_dir = Path(tmp_dir)
        test_file_stem = f"{in_fmt}_{bitrate}bps_{renderer_fmt}_{pre_trajectory.stem}_split_full_{post_trajectory.stem}__config_{render_config.stem}"
        cut_in_file = tmp_dir.joinpath(f"{test_file_stem}_input.wav")
        ivas_bitstream = tmp_dir.joinpath(f"{test_file_stem}_ivas.192")
        split_bitstream = tmp_dir.joinpath(f"{test_file_stem}_split.bit")
        out_file = output_path_base.joinpath(f"{test_file_stem}_output.wav")
        cut_in_file = tmp_dir.joinpath("cut_input.wav")
        ivas_bitstream = tmp_dir.joinpath("ivas.192")
        split_bitstream = tmp_dir.joinpath("split.bit")
        if renderer_fmt == "BINAURAL_SPLIT_PCM":
            split_md_file = tmp_dir.joinpath(f"{test_file_stem}_split_md.bin")
            split_md_file = tmp_dir.joinpath("split_md.bin")
        out_file = output_path_base.joinpath(
            f"{in_fmt}_{bitrate}bps_{renderer_fmt}_{pre_trajectory.stem}_split_full_{post_trajectory.stem}_config_{render_config.stem}.wav"
        )

        # check for metadata files
        if in_fmt.upper().startswith("ISM") or in_fmt.upper().startswith("MASA"):
@@ -158,14 +159,14 @@ def run_external_split_rendering(

    with TemporaryDirectory() as tmp_dir:
        tmp_dir = Path(tmp_dir)
        test_file_stem = f"{in_fmt}_{renderer_fmt}_{pre_trajectory.stem}_split_ext_{post_trajectory.stem}__config_{render_config.stem}"
        if plc_error_pattern:
            test_file_stem += f"_plc_{plc_error_pattern.stem}"

        split_bitstream = tmp_dir.joinpath(f"{test_file_stem}_split.bit")
        out_file = output_path_base.joinpath(f"{test_file_stem}_out.wav")
        split_bitstream = tmp_dir.joinpath("split.bit")
        if renderer_fmt == "BINAURAL_SPLIT_PCM":
            split_md_file = tmp_dir.joinpath(f"{test_file_stem}_split_md.bin")
            split_md_file = tmp_dir.joinpath("split_md.bin")
        out_file = output_path_base.joinpath(
            f"{in_fmt}_{renderer_fmt}_{pre_trajectory.stem}_split_ext_{post_trajectory.stem}_config_{render_config.stem}.wav"
        )
        if plc_error_pattern:
            out_file = out_file.with_stem(f"{out_file.stem}_plc_{plc_error_pattern.stem}")

        # check for metadata files
        if in_fmt.upper().startswith("ISM") or in_fmt.upper().startswith("MASA"):
@@ -192,18 +193,6 @@ def run_external_split_rendering(
        if in_meta_files:
            cmd[9:9] = ["-im", *in_meta_files]

        # pre renderer for 0DoF needs -fr5 except where LCLD is used
        if "0dof" in render_config.name:
            if not (
                "fastconv" in render_config.name
                or "lcld" in render_config.name
                or (
                    in_fmt.upper().startswith("MASA")
                    and "lc3plus" not in render_config.name
                )
            ):
                cmd.append("-fr5")

        run_cmd(cmd)

        # run split renderer