Spaces:
Running
Running
Update gui.py
Browse files
gui.py
CHANGED
|
@@ -355,6 +355,9 @@ def roformer_separator(audio, model_key, seg_size, override_seg_size, overlap, p
|
|
| 355 |
if not audio:
|
| 356 |
raise ValueError("No audio file provided.")
|
| 357 |
|
|
|
|
|
|
|
|
|
|
| 358 |
# output klasörünü temizle
|
| 359 |
if os.path.exists(output_dir):
|
| 360 |
shutil.rmtree(output_dir)
|
|
@@ -400,6 +403,9 @@ def auto_ensemble_process(audio, model_keys, seg_size, overlap, out_format, use_
|
|
| 400 |
if not audio or not model_keys:
|
| 401 |
raise ValueError("Audio or models missing.")
|
| 402 |
|
|
|
|
|
|
|
|
|
|
| 403 |
# output klasörünü temizle
|
| 404 |
if os.path.exists(output_dir):
|
| 405 |
shutil.rmtree(output_dir)
|
|
@@ -505,7 +511,12 @@ def create_interface():
|
|
| 505 |
roformer_overlap = gr.Slider(2, 10, value=8, step=1, label="🔄 Overlap", interactive=True)
|
| 506 |
with gr.Row():
|
| 507 |
roformer_pitch_shift = gr.Slider(-12, 12, value=0, step=1, label="🎵 Pitch Shift", interactive=True)
|
| 508 |
-
roformer_override_seg_size = gr.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 509 |
roformer_button = gr.Button("✂️ Separate Now!", variant="primary")
|
| 510 |
with gr.Row():
|
| 511 |
roformer_stem1 = gr.Audio(label="🎸 Stem 1", type="filepath", interactive=False)
|
|
@@ -526,7 +537,12 @@ def create_interface():
|
|
| 526 |
with gr.Row():
|
| 527 |
ensemble_seg_size = gr.Slider(32, 4000, value=256, step=32, label="📏 Segment Size", interactive=True)
|
| 528 |
ensemble_overlap = gr.Slider(2, 10, value=8, step=1, label="🔄 Overlap", interactive=True)
|
| 529 |
-
ensemble_use_tta = gr.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 530 |
ensemble_method = gr.Dropdown(label="⚙️ Ensemble Method", choices=['avg_wave', 'median_wave', 'max_wave', 'min_wave', 'avg_fft', 'median_fft', 'max_fft', 'min_fft'], value='avg_wave', interactive=True)
|
| 531 |
ensemble_weights = gr.Textbox(label="⚖️ Weights", placeholder="e.g., 1.0, 1.0 (comma-separated)", interactive=True)
|
| 532 |
ensemble_button = gr.Button("🎛️ Run Ensemble!", variant="primary")
|
|
@@ -535,7 +551,7 @@ def create_interface():
|
|
| 535 |
|
| 536 |
gr.HTML("<div class='footer'>Powered by Audio-Separator 🌟🎶 | Made with ❤️</div>")
|
| 537 |
|
| 538 |
-
# Event Handlers
|
| 539 |
roformer_category.change(update_roformer_models, inputs=[roformer_category], outputs=[roformer_model])
|
| 540 |
download_roformer.click(fn=download_audio, inputs=[url_ro], outputs=[roformer_audio])
|
| 541 |
roformer_button.click(
|
|
@@ -562,7 +578,11 @@ if __name__ == "__main__":
|
|
| 562 |
parser.add_argument("--ngrok-token", type=str, default=None, help="Ngrok token for tunneling")
|
| 563 |
args = parser.parse_args()
|
| 564 |
|
|
|
|
| 565 |
app = create_interface()
|
| 566 |
-
|
| 567 |
-
|
|
|
|
|
|
|
|
|
|
| 568 |
app.close()
|
|
|
|
| 355 |
if not audio:
|
| 356 |
raise ValueError("No audio file provided.")
|
| 357 |
|
| 358 |
+
# override_seg_size string olarak geliyor, boolean'a çevir
|
| 359 |
+
override_seg_size = override_seg_size == "True"
|
| 360 |
+
|
| 361 |
# output klasörünü temizle
|
| 362 |
if os.path.exists(output_dir):
|
| 363 |
shutil.rmtree(output_dir)
|
|
|
|
| 403 |
if not audio or not model_keys:
|
| 404 |
raise ValueError("Audio or models missing.")
|
| 405 |
|
| 406 |
+
# use_tta string olarak geliyor, boolean'a çevir
|
| 407 |
+
use_tta = use_tta == "True"
|
| 408 |
+
|
| 409 |
# output klasörünü temizle
|
| 410 |
if os.path.exists(output_dir):
|
| 411 |
shutil.rmtree(output_dir)
|
|
|
|
| 511 |
roformer_overlap = gr.Slider(2, 10, value=8, step=1, label="🔄 Overlap", interactive=True)
|
| 512 |
with gr.Row():
|
| 513 |
roformer_pitch_shift = gr.Slider(-12, 12, value=0, step=1, label="🎵 Pitch Shift", interactive=True)
|
| 514 |
+
roformer_override_seg_size = gr.Dropdown(
|
| 515 |
+
choices=["True", "False"],
|
| 516 |
+
value="False",
|
| 517 |
+
label="🔧 Override Segment Size",
|
| 518 |
+
interactive=True
|
| 519 |
+
)
|
| 520 |
roformer_button = gr.Button("✂️ Separate Now!", variant="primary")
|
| 521 |
with gr.Row():
|
| 522 |
roformer_stem1 = gr.Audio(label="🎸 Stem 1", type="filepath", interactive=False)
|
|
|
|
| 537 |
with gr.Row():
|
| 538 |
ensemble_seg_size = gr.Slider(32, 4000, value=256, step=32, label="📏 Segment Size", interactive=True)
|
| 539 |
ensemble_overlap = gr.Slider(2, 10, value=8, step=1, label="🔄 Overlap", interactive=True)
|
| 540 |
+
ensemble_use_tta = gr.Dropdown(
|
| 541 |
+
choices=["True", "False"],
|
| 542 |
+
value="False",
|
| 543 |
+
label="🔍 Use TTA",
|
| 544 |
+
interactive=True
|
| 545 |
+
)
|
| 546 |
ensemble_method = gr.Dropdown(label="⚙️ Ensemble Method", choices=['avg_wave', 'median_wave', 'max_wave', 'min_wave', 'avg_fft', 'median_fft', 'max_fft', 'min_fft'], value='avg_wave', interactive=True)
|
| 547 |
ensemble_weights = gr.Textbox(label="⚖️ Weights", placeholder="e.g., 1.0, 1.0 (comma-separated)", interactive=True)
|
| 548 |
ensemble_button = gr.Button("🎛️ Run Ensemble!", variant="primary")
|
|
|
|
| 551 |
|
| 552 |
gr.HTML("<div class='footer'>Powered by Audio-Separator 🌟🎶 | Made with ❤️</div>")
|
| 553 |
|
| 554 |
+
# Event Handlers
|
| 555 |
roformer_category.change(update_roformer_models, inputs=[roformer_category], outputs=[roformer_model])
|
| 556 |
download_roformer.click(fn=download_audio, inputs=[url_ro], outputs=[roformer_audio])
|
| 557 |
roformer_button.click(
|
|
|
|
| 578 |
parser.add_argument("--ngrok-token", type=str, default=None, help="Ngrok token for tunneling")
|
| 579 |
args = parser.parse_args()
|
| 580 |
|
| 581 |
+
from pyngrok import ngrok
|
| 582 |
app = create_interface()
|
| 583 |
+
if args.ngrok_token:
|
| 584 |
+
ngrok.set_auth_token(args.ngrok_token)
|
| 585 |
+
public_url = ngrok.connect(args.port, bind_tls=True).public_url
|
| 586 |
+
print(f"Running on public URL: {public_url}")
|
| 587 |
+
app.launch(server_name="0.0.0.0", server_port=args.port)
|
| 588 |
app.close()
|