Kangarroar's picture
Create app.py
b7be665
import streamlit as st
import tempfile
st.title('DIFF-SVC Render')
###CKPT LOADER
# File uploader
ckpt = st.file_uploader("Choose your CKPT", type= 'ckpt')
# Check if user uploaded a CKPT file
if ckpt is not None:
#TEMP FUNCTION
with tempfile.NamedTemporaryFile(mode="wb", suffix='.ckpt', delete=False) as temp:
# Get the file contents as bytes
bytes_data = ckpt.getvalue()
# Write the bytes to the temporary file
temp.write(bytes_data)
ckpt_temp_file = temp.name
# Print the temporary file name
print(temp.name)
# Display the file path
if "ckpt_temp_file" in locals():
st.success("File saved to: {}".format(ckpt_temp_file))
# File uploader
config = st.file_uploader("Choose your config", type= 'yaml')
# Check if user uploaded a config file
if config is not None:
#TEMP FUNCTION
with tempfile.NamedTemporaryFile(mode="wb", suffix='.yaml', delete=False) as temp:
# Get the file contents as bytes
bytes_data = config.getvalue()
# Write the bytes to the temporary file
temp.write(bytes_data)
config_temp_file = temp.name
# Print the temporary file name
print(temp.name)
# Display the file path
if "config_temp_file" in locals():
st.success("File saved to: {}".format(config_temp_file))
# File uploader
audio = st.file_uploader("Choose your audio", type=["wav", "mp3"])
# Check if user uploaded an audio file
if audio is not None:
#TEMP FUNCTION
with tempfile.NamedTemporaryFile(mode="wb", suffix='.wav', delete=False) as temp:
# Get the file contents as bytes
bytes_data = audio.getvalue()
# Write the bytes to the temporary file
temp.write(bytes_data)
audio_temp_file = temp.name
# Print the temporary file name
print(temp.name)
# Display the file path
if "audio_temp_file" in locals():
st.success("File saved to: {}".format(audio_temp_file))
# Add a text input for the title with a default value of 0
title = st.text_input("Key", value="0")
# Add a button to start the rendering process
if st.button("Render audio"):
render_audio(ckpt_temp_file, config_temp_file, audio_temp_file, title)