Loading collection-scripts/characterization/bs1534.py 0 → 100644 +70 −0 Original line number Diff line number Diff line import argparse import glob import shutil import re from pathlib import Path PRELIMINARY_SUBSTRINGS = ["s13", "s14", "s15", "s16"] PRELIMINARY_PATTERN = re.compile(r"dm[0-9]*a[1-9](s[0-9]*)\.c[0-1][0-9]\.wav") def repo_root_dir() -> Path: this_dir = Path(__file__).parent return this_dir.parent.parent def copy_final_items(verbose: bool = False): files_copied = 0 for exp_dir in map( Path, glob.glob(str(repo_root_dir() / "experiments/characterization/BS1534-*/")) ): exp_dir = Path(exp_dir) final_dir = exp_dir / "proc_final" prelim_dir = final_dir / "preliminary" prelim_dir.mkdir(parents=True, exist_ok=True) files_copied = 0 for proc_output in exp_dir.glob("proc_output*"): condition_dirs = proc_output.glob("c0?") for condition_dir in condition_dirs: target_dir = final_dir / condition_dir.name target_dir.mkdir(parents=True, exist_ok=True) for item in condition_dir.glob("*.wav"): item_target = target_dir / item.name m = re.search(PRELIMINARY_PATTERN, item.name) assert m is not None item_number_substr = m.groups()[0] if item_number_substr in PRELIMINARY_SUBSTRINGS: item_target = prelim_dir / item.name print( f"Copying {item.relative_to(Path.cwd())} to {item_target.relative_to(Path.cwd())}" ) if item_target.is_file(): print( f"WARNING: item {item_target.name} already exists in target dir, overwriting" ) shutil.copy(item, item_target) files_copied += 1 print(f"Done. {files_copied} files copied.") if __name__ == "__main__": parser = argparse.ArgumentParser( description="Copy samples into proc_final/cXX directories for BS1534 experiments." ) parser.add_argument("-v", "--verbose", action="store_true") parsed = parser.parse_args() copy_final_items(verbose=parsed.verbose) Loading
collection-scripts/characterization/bs1534.py 0 → 100644 +70 −0 Original line number Diff line number Diff line import argparse import glob import shutil import re from pathlib import Path PRELIMINARY_SUBSTRINGS = ["s13", "s14", "s15", "s16"] PRELIMINARY_PATTERN = re.compile(r"dm[0-9]*a[1-9](s[0-9]*)\.c[0-1][0-9]\.wav") def repo_root_dir() -> Path: this_dir = Path(__file__).parent return this_dir.parent.parent def copy_final_items(verbose: bool = False): files_copied = 0 for exp_dir in map( Path, glob.glob(str(repo_root_dir() / "experiments/characterization/BS1534-*/")) ): exp_dir = Path(exp_dir) final_dir = exp_dir / "proc_final" prelim_dir = final_dir / "preliminary" prelim_dir.mkdir(parents=True, exist_ok=True) files_copied = 0 for proc_output in exp_dir.glob("proc_output*"): condition_dirs = proc_output.glob("c0?") for condition_dir in condition_dirs: target_dir = final_dir / condition_dir.name target_dir.mkdir(parents=True, exist_ok=True) for item in condition_dir.glob("*.wav"): item_target = target_dir / item.name m = re.search(PRELIMINARY_PATTERN, item.name) assert m is not None item_number_substr = m.groups()[0] if item_number_substr in PRELIMINARY_SUBSTRINGS: item_target = prelim_dir / item.name print( f"Copying {item.relative_to(Path.cwd())} to {item_target.relative_to(Path.cwd())}" ) if item_target.is_file(): print( f"WARNING: item {item_target.name} already exists in target dir, overwriting" ) shutil.copy(item, item_target) files_copied += 1 print(f"Done. {files_copied} files copied.") if __name__ == "__main__": parser = argparse.ArgumentParser( description="Copy samples into proc_final/cXX directories for BS1534 experiments." ) parser.add_argument("-v", "--verbose", action="store_true") parsed = parser.parse_args() copy_final_items(verbose=parsed.verbose)