Lightricks-LTX-Video / src /streamlit_app.py
Muyumba's picture
src/streamlit_app.py
5608ce3 verified
Raw
History Blame Contribute Delete
1.69 kB
import streamlit as st
from PIL import Image
import io
from gradio_client import Client
st.set_page_config(page_title="Générateur de vidéo", layout="wide")
st.title("🎬 Générateur de vidéo à partir d'une image")
# Upload de l'image
uploaded_file = st.file_uploader("Choisis une image", type=["png", "jpg", "jpeg"])
if uploaded_file:
image = Image.open(uploaded_file)
st.image(image, caption="Image chargée", use_column_width=True)
# Champ pour le prompt
prompt = st.text_area("Décris le type de vidéo que tu veux générer", height=100)
if st.button("Générer la vidéo"):
if not prompt.strip():
st.warning("Merci de saisir un prompt avant de générer la vidéo.")
else:
with st.spinner("Génération de la vidéo en cours... ⏳"):
try:
# Convertir l'image en bytes
img_bytes = io.BytesIO()
image.save(img_bytes, format="PNG")
img_bytes.seek(0)
# Connecte-toi à ton modèle sur Hugging Face
client = Client("Lightricks/ltx-video-distilled")
# Appel du modèle
output_video = client.predict(
img_bytes,
prompt,
api_name="predict" # nom de l'endpoint
)
# Affichage de la vidéo
st.video(output_video)
st.success("✅ Vidéo générée avec succès !")
except Exception as e:
st.error(f"Erreur lors de la génération de la vidéo : {e}")