Spaces:
Sleeping
Sleeping
import streamlit as st | |
import os | |
import subprocess | |
st.title("TalkSHOW Demo") | |
st.write( | |
"Upload an audio file and generate motion using the TalkSHOW model." | |
) | |
# File uploader for audio | |
audio_file = st.file_uploader("Upload an audio file (.wav)", type=["wav"]) | |
# Temporary path for uploaded file | |
UPLOAD_DIR = "uploaded_audios" | |
os.makedirs(UPLOAD_DIR, exist_ok=True) | |
if audio_file is not None: | |
file_path = os.path.join(UPLOAD_DIR, audio_file.name) | |
with open(file_path, "wb") as f: | |
f.write(audio_file.getbuffer()) | |
st.success(f"Uploaded {audio_file.name}") | |
# Run demo.py (adjust path/args as needed) | |
if st.button("Run TalkSHOW Demo"): | |
with st.spinner("Generating motion..."): | |
# Modify this command as needed to fit demo.py usage! | |
command = [ | |
"python", | |
"scripts/demo.py", | |
"--audio", file_path | |
# add other arguments if required, e.g., model paths, output dirs, etc. | |
] | |
result = subprocess.run(command, capture_output=True, text=True) | |
st.text(result.stdout) | |
st.text(result.stderr) | |
st.success("Demo complete!") | |
# If demo.py outputs images or videos, display them here | |
# st.image("output.png") or st.video("output.mp4") as needed | |
# Add instructions or info | |
st.info("This is a basic demo app. You may need to adjust arguments to demo.py based on your setup and what output you want to show.") | |