audio-splitter / app.py
deepsync's picture
Update app.py
fa119f2 verified
raw
history blame contribute delete
975 Bytes
import os
import gradio as gr
import tempfile
import subprocess
from uuid import uuid4
from audio_sep_splitter import batch_process
def split_audio(audio_filepath):
output_file = ""
stem = "voice"
aggressiveness_factor = 2
splitter = "phoenix"
vocal_file = batch_process(audio_filepath, output_file, stem, aggressiveness_factor, splitter)
mp3_vocal_file = f"{vocal_file}.mp3"
subprocess.run(f"ffmpeg -i '{vocal_file}' '{mp3_vocal_file}'", shell=True)
return mp3_vocal_file
with gr.Blocks() as demo:
gr.Markdown("# Audio Source Separator")
with gr.Row():
input_file = gr.File(label="Input audio file", type="filepath", file_types=["audio"])
output_file = gr.File(label="Output audio file", type="filepath", file_types=["audio"])
submit_btn = gr.Button("Submit")
submit_btn.click(split_audio, input_file, output_file)
demo.queue().launch(auth=(os.environ.get("USERNAME"), os.environ.get("PASSWORD")))