Spaces:
Runtime error
Runtime error
| import argparse | |
| import os | |
| import shutil | |
| import subprocess | |
| from audio_separator.separator import Separator | |
| if __name__ == "__main__": | |
| parser = argparse.ArgumentParser() | |
| parser.add_argument("--audio_file_path", type=str) | |
| parser.add_argument("--saved_vocal_path", type=str) | |
| parser.add_argument("--audio_separator_model_file", type=str) | |
| args = parser.parse_args() | |
| audio_file_path = args.audio_file_path | |
| audio_separator_model_file = args.audio_separator_model_file | |
| saved_vocal_path = args.saved_vocal_path | |
| cache_dir = os.path.join(os.path.dirname(audio_file_path), "vocals") | |
| os.makedirs(cache_dir, exist_ok=True) | |
| audio_separator = Separator( | |
| output_dir=cache_dir, | |
| output_single_stem="vocals", | |
| model_file_dir=os.path.dirname(audio_separator_model_file), | |
| ) | |
| audio_separator.load_model(os.path.basename(audio_separator_model_file)) | |
| assert audio_separator.model_instance is not None, "Fail to load audio separate model." | |
| outputs = audio_separator.separate(audio_file_path) | |
| subfolder_path = os.path.dirname(audio_file_path) | |
| vocal_audio_file = os.path.join(audio_separator.output_dir, outputs[0]) | |
| destination_file = os.path.join(subfolder_path, "vocal.wav") | |
| shutil.copy(vocal_audio_file, destination_file) | |
| os.remove(vocal_audio_file) | |