Loading collection-scripts/characterization/p800_categorized_samples.py +27 −9 Original line number Diff line number Diff line Loading @@ -4,7 +4,6 @@ import re import shutil from pathlib import Path # table 5 from IVAS-8b TABLE_5 = { "s01": { Loading Loading @@ -66,7 +65,9 @@ def repo_root_dir() -> Path: def copy_final_items(verbose: bool = False): files_copied = 0 for exp_dir in map(Path, glob.glob(str(repo_root_dir() / "experiments/characterization/P800-*/"))): for exp_dir in map( Path, glob.glob(str(repo_root_dir() / "experiments/characterization/P800-*/")) ): exp_dir = Path(exp_dir) final_dir = exp_dir / "proc_final" Loading @@ -76,28 +77,43 @@ def copy_final_items(verbose: bool = False): for sample, categories_map in TABLE_5.items(): for category, loudness in categories_map.items(): item_dir_pattern = proc_output / glob.escape(category) / f"out_{glob.escape(str(loudness))}LKFS" / "c*" item_dir_pattern = ( proc_output / glob.escape(category) / f"out_{glob.escape(str(loudness))}LKFS" / "c*" ) item_filename_pattern = f"*{glob.escape(sample)}.c*.wav" items_to_copy = list(map(Path, glob.glob(str(item_dir_pattern / item_filename_pattern)))) items_to_copy = list( map(Path, glob.glob(str(item_dir_pattern / item_filename_pattern))) ) if not items_to_copy: if verbose: print(f"Could not find processed item for {sample}, {category}, {loudness}LKFS, skipping") print( f"Could not find processed item for {sample}, {category}, {loudness}LKFS, skipping" ) continue for item_to_copy in items_to_copy: match = re.match(r".*/c(\d+)/[^/]*s\d+\.c\d+\.wav$", str(item_to_copy.as_posix())) match = re.match( r".*/c(\d+)/[^/]*s\d+\.c\d+\.wav$", str(item_to_copy.as_posix()) ) assert match, item_to_copy condition = match.group(1) item_target_dir = final_dir / f"c{condition}" item_target_dir.mkdir(parents=True, exist_ok=True) print(f"Copying {item_to_copy.relative_to(Path.cwd())} to {item_target_dir.relative_to(Path.cwd())}") print( f"Copying {item_to_copy.relative_to(Path.cwd())} to {item_target_dir.relative_to(Path.cwd())}" ) if (item_target_dir / item_to_copy.name).is_file(): print(f"WARNING: item {item_to_copy.name} already exists in target dir, overwriting") print( f"WARNING: item {item_to_copy.name} already exists in target dir, overwriting" ) shutil.copy(item_to_copy, item_target_dir) Loading @@ -107,7 +123,9 @@ def copy_final_items(verbose: bool = False): if __name__ == "__main__": parser = argparse.ArgumentParser(description="Copy samples into proc_final/cXX directories for P.800 experiments.") parser = argparse.ArgumentParser( description="Copy samples into proc_final/cXX directories for P.800 experiments." ) parser.add_argument("-v", "--verbose", action="store_true") parsed = parser.parse_args() Loading collection-scripts/characterization/p800_preliminaries.py +10 −3 Original line number Diff line number Diff line Loading @@ -65,7 +65,9 @@ def copy_preliminaries(root_dir, config_yaml): print(f" Copying {file} -> {out_dir}") if (out_dir / Path(file).name).is_file(): raise FileExistsError(f"File {file} already exists in {out_dir}") raise FileExistsError( f"File {file} already exists in {out_dir}" ) shutil.copy(file, out_dir) Loading @@ -73,8 +75,13 @@ def copy_preliminaries(root_dir, config_yaml): if __name__ == "__main__": parser = argparse.ArgumentParser(description="Copy preliminaries into proc_final/preliminaries directory for P.800 experiments.") parser = argparse.ArgumentParser( description="Copy preliminaries into proc_final/preliminaries directory for P.800 experiments." ) parsed = parser.parse_args() copy_preliminaries(repo_root_dir() / "experiments" / "characterization", this_dir() / "p800_preliminaries.yml") copy_preliminaries( repo_root_dir() / "experiments" / "characterization", this_dir() / "p800_preliminaries.yml", ) other/get_md5.py +2 −2 Original line number Diff line number Diff line Loading @@ -28,9 +28,9 @@ # the United Nations Convention on Contracts on the International Sales of Goods. import argparse from pathlib import Path from hashlib import md5 from collections import Counter from hashlib import md5 from pathlib import Path def get_hash_line_for_file(file: Path, output_dir: Path): Loading Loading
collection-scripts/characterization/p800_categorized_samples.py +27 −9 Original line number Diff line number Diff line Loading @@ -4,7 +4,6 @@ import re import shutil from pathlib import Path # table 5 from IVAS-8b TABLE_5 = { "s01": { Loading Loading @@ -66,7 +65,9 @@ def repo_root_dir() -> Path: def copy_final_items(verbose: bool = False): files_copied = 0 for exp_dir in map(Path, glob.glob(str(repo_root_dir() / "experiments/characterization/P800-*/"))): for exp_dir in map( Path, glob.glob(str(repo_root_dir() / "experiments/characterization/P800-*/")) ): exp_dir = Path(exp_dir) final_dir = exp_dir / "proc_final" Loading @@ -76,28 +77,43 @@ def copy_final_items(verbose: bool = False): for sample, categories_map in TABLE_5.items(): for category, loudness in categories_map.items(): item_dir_pattern = proc_output / glob.escape(category) / f"out_{glob.escape(str(loudness))}LKFS" / "c*" item_dir_pattern = ( proc_output / glob.escape(category) / f"out_{glob.escape(str(loudness))}LKFS" / "c*" ) item_filename_pattern = f"*{glob.escape(sample)}.c*.wav" items_to_copy = list(map(Path, glob.glob(str(item_dir_pattern / item_filename_pattern)))) items_to_copy = list( map(Path, glob.glob(str(item_dir_pattern / item_filename_pattern))) ) if not items_to_copy: if verbose: print(f"Could not find processed item for {sample}, {category}, {loudness}LKFS, skipping") print( f"Could not find processed item for {sample}, {category}, {loudness}LKFS, skipping" ) continue for item_to_copy in items_to_copy: match = re.match(r".*/c(\d+)/[^/]*s\d+\.c\d+\.wav$", str(item_to_copy.as_posix())) match = re.match( r".*/c(\d+)/[^/]*s\d+\.c\d+\.wav$", str(item_to_copy.as_posix()) ) assert match, item_to_copy condition = match.group(1) item_target_dir = final_dir / f"c{condition}" item_target_dir.mkdir(parents=True, exist_ok=True) print(f"Copying {item_to_copy.relative_to(Path.cwd())} to {item_target_dir.relative_to(Path.cwd())}") print( f"Copying {item_to_copy.relative_to(Path.cwd())} to {item_target_dir.relative_to(Path.cwd())}" ) if (item_target_dir / item_to_copy.name).is_file(): print(f"WARNING: item {item_to_copy.name} already exists in target dir, overwriting") print( f"WARNING: item {item_to_copy.name} already exists in target dir, overwriting" ) shutil.copy(item_to_copy, item_target_dir) Loading @@ -107,7 +123,9 @@ def copy_final_items(verbose: bool = False): if __name__ == "__main__": parser = argparse.ArgumentParser(description="Copy samples into proc_final/cXX directories for P.800 experiments.") parser = argparse.ArgumentParser( description="Copy samples into proc_final/cXX directories for P.800 experiments." ) parser.add_argument("-v", "--verbose", action="store_true") parsed = parser.parse_args() Loading
collection-scripts/characterization/p800_preliminaries.py +10 −3 Original line number Diff line number Diff line Loading @@ -65,7 +65,9 @@ def copy_preliminaries(root_dir, config_yaml): print(f" Copying {file} -> {out_dir}") if (out_dir / Path(file).name).is_file(): raise FileExistsError(f"File {file} already exists in {out_dir}") raise FileExistsError( f"File {file} already exists in {out_dir}" ) shutil.copy(file, out_dir) Loading @@ -73,8 +75,13 @@ def copy_preliminaries(root_dir, config_yaml): if __name__ == "__main__": parser = argparse.ArgumentParser(description="Copy preliminaries into proc_final/preliminaries directory for P.800 experiments.") parser = argparse.ArgumentParser( description="Copy preliminaries into proc_final/preliminaries directory for P.800 experiments." ) parsed = parser.parse_args() copy_preliminaries(repo_root_dir() / "experiments" / "characterization", this_dir() / "p800_preliminaries.yml") copy_preliminaries( repo_root_dir() / "experiments" / "characterization", this_dir() / "p800_preliminaries.yml", )
other/get_md5.py +2 −2 Original line number Diff line number Diff line Loading @@ -28,9 +28,9 @@ # the United Nations Convention on Contracts on the International Sales of Goods. import argparse from pathlib import Path from hashlib import md5 from collections import Counter from hashlib import md5 from pathlib import Path def get_hash_line_for_file(file: Path, output_dir: Path): Loading