import os import gradio as gr from scipy.io.wavfile import write def inference(audio): os.makedirs("out", exist_ok=True) write('test.wav', audio[0], audio[1]) os.system("python3 -m demucs.separate -n htdemucs --two-stems=vocals -d cpu test.wav -o out") return "./out/htdemucs/test/vocals.wav","./out/htdemucs/test/no_vocals.wav" title = "Demucs Music Source Separation (v4)" description = "Demucs(v4): Music Source Separation.This was forked from https://huggingface.co/spaces/akhaliq/demucs/. The source code has been updated to the 'bleeding edge build' & for this space, 2 stem sepration (Karaoke Mode) has been enabled with the v4 Hybrid Transformer model for best quality & processing time.

| Gradio demo for Demucs(v4): Music Source Separation in the Waveform Domain. To use it, simply upload your audio, or click one of the examples to load them. Read more at the links below.

" article = "

Music Source Separation in the Waveform Domain | Github Repo | //THAFX

" examples=[['test.mp3']] gr.Interface( inference, gr.Audio(type="numpy", label="Input"), [gr.Audio(type="filepath", label="Vocals"),gr.Audio(type="filepath", label="No Vocals / Instrumental")], title=title, description=description, article=article, examples=examples ).launch(enable_queue=True)