| | import os |
| | import argparse |
| | import traceback |
| |
|
| | from modelscope.pipelines import pipeline |
| | from modelscope.utils.constant import Tasks |
| | from tqdm import tqdm |
| |
|
| | path_denoise = "tools/denoise-model/speech_frcrn_ans_cirm_16k" |
| | path_denoise = path_denoise if os.path.exists(path_denoise) else "damo/speech_frcrn_ans_cirm_16k" |
| | ans = pipeline(Tasks.acoustic_noise_suppression, model=path_denoise) |
| |
|
| |
|
| | def execute_denoise(input_folder, output_folder): |
| | os.makedirs(output_folder, exist_ok=True) |
| | |
| | |
| | for name in tqdm(os.listdir(input_folder)): |
| | try: |
| | ans("%s/%s" % (input_folder, name), output_path="%s/%s" % (output_folder, name)) |
| | except: |
| | traceback.print_exc() |
| |
|
| |
|
| | if __name__ == "__main__": |
| | parser = argparse.ArgumentParser() |
| | parser.add_argument( |
| | "-i", "--input_folder", type=str, required=True, help="Path to the folder containing WAV files." |
| | ) |
| | parser.add_argument("-o", "--output_folder", type=str, required=True, help="Output folder to store transcriptions.") |
| | parser.add_argument( |
| | "-p", "--precision", type=str, default="float16", choices=["float16", "float32"], help="fp16 or fp32" |
| | ) |
| | cmd = parser.parse_args() |
| | execute_denoise( |
| | input_folder=cmd.input_folder, |
| | output_folder=cmd.output_folder, |
| | ) |
| |
|