Spaces:
Sleeping
Sleeping
File size: 1,685 Bytes
244cf95 ffd1c6f 5608ce3 ffd1c6f 5608ce3 ffd1c6f 5608ce3 ffd1c6f 5608ce3 ffd1c6f 5608ce3 ffd1c6f 5608ce3 | 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 34 35 36 37 38 39 40 41 42 43 44 45 | 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}")
|