Spaces:
Running
on
CPU Upgrade
Running
on
CPU Upgrade
File size: 1,032 Bytes
1f5d38f |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
import streamlit as st
import os
import librosa
import soundfile as sf
import numpy as np
from inference import generate_drum_kit
from audio_utils import play_audio
# Streamlit UI
st.title("Generate Drum Kits with Text")
# User Inputs
prompt = st.text_input("Describe your drum kit (e.g., 'warm vintage')", "8-bit video game")
kit_size = st.slider("Number of sounds per instrument:", 1, 10, 4)
# Run the inference
if st.button("Generate Drum Kit"):
drum_kit = generate_drum_kit(prompt, kit_size)
st.session_state["drum_kit"] = drum_kit # Store results
# Display results
if "drum_kit" in st.session_state:
drum_kit = st.session_state["drum_kit"]
st.subheader("Generated Drum Kit")
for instrument, sounds in drum_kit.items():
st.write(f"**{instrument}**")
cols = st.columns(len(sounds))
for i, sound_file in enumerate(sounds):
with cols[i]:
if st.button(f"▶️ {os.path.basename(sound_file)}", key=sound_file):
play_audio(sound_file) |