Views
No views yet
# Convertir imagen a bytes
image_bytes = io.BytesIO()
image_input.save(image_bytes, format='PNG')
image_bytes = image_bytes.getvalue()
# Generar video (image-to-video)
result = video_client.image_to_video(image=image_bytes, prompt=prompt if prompt else "Animate this image naturally")
# El resultado es un video; Gradio lo maneja automáticamente
return resultwith gr.Tab("Generar Foto (Text-to-Image)"):
prompt_input = gr.Textbox(label="Describe la imagen (prompt)", placeholder="Ej: Un gato volando en el espacio")
image_upload = gr.Image(label="Opcional: Sube una imagen para refinar", type="pil")
generate_btn = gr.Button("Generar Imagen")
output_image = gr.Image(label="Imagen Generada")
generate_btn.click(generate_image, inputs=[prompt_input, image_upload], outputs=output_image)
with gr.Tab("Generar Video (Image-to-Video)"):
video_image_upload = gr.Image(label="Sube una imagen base", type="pil")
video_prompt = gr.Textbox(label="Opcional: Prompt para el video", placeholder="Ej: Haz que se mueva como si estuviera vivo")
generate_video_btn = gr.Button("Generar Video")
output_video = gr.Video(label="Video Generado")
generate_video_btn.click(generate_video, inputs=[video_image_upload, video_prompt], outputs=output_video)