| | 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,
|
| | )
|
| |
|