Spaces:
Runtime error
Runtime error
File size: 2,683 Bytes
3da52d6 60931f6 3da52d6 1756b5a 3da52d6 60931f6 3da52d6 60931f6 3da52d6 60931f6 3da52d6 60931f6 3da52d6 60931f6 3da52d6 60931f6 3da52d6 60931f6 3da52d6 60931f6 |
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 46 47 48 49 50 51 |
import os
import gradio as gr
from modelscope.pipelines import pipeline
from modelscope.outputs import OutputKeys
image_to_video_pipe = pipeline(task="image-to-video", model='damo/i2vgen-xl', model_revision='v1.1.3', device='cuda:0')
def upload_file(file):
return file.name
def image_to_video(image_in, text_in):
if image_in is None:
raise gr.Error('่ฏทไธไผ ๅพ็ๆ็ญๅพ
ๅพ็ไธไผ ๅฎๆ')
print(image_in)
output_video_path = image_to_video_pipe(image_in, caption=text_in)[OutputKeys.OUTPUT_VIDEO]
print(output_video_path)
return output_video_path
with gr.Blocks() as demo:
gr.Markdown(
"""<center><font size=7>I2VGen-XL</center>
<left><font size=3>I2VGen-XLๅฏไปฅๆ นๆฎ็จๆท่พๅ
ฅ็้ๆๅพๅๅๆๆฌ็ๆ็ฎๆ ๆฅ่ฟใ่ฏญไน็ธๅ็่ง้ข๏ผ็ๆ็่ง้ขๅ
ท้ซๆธ
(1280 * 720)ใๅฎฝๅฑ(16:9)ใๆถๅบ่ฟ่ดฏใ่ดจๆๅฅฝ็ญ็น็นใ</left>
<left><font size=3>I2VGen-XL can generate videos with similar contents and semantics based on user input static images and text. The generated videos have characteristics such as high-definition (1280 * 720), widescreen (16:9), coherent timing, and good texture.</left>
"""
)
with gr.Box():
gr.Markdown(
"""<left><font size=3>้ๆฉๅ้็ๅพ็่ฟ่กไธไผ ๏ผๅนถ่กฅๅ
ๅฏน่ง้ขๅ
ๅฎน็่ฑๆๆๆฌๆ่ฟฐ๏ผ็ถๅ็นๅปโ็ๆ่ง้ขโใ</left>
<left><font size=3>Please choose the image to upload (we recommend the image size be 1280 * 720), provide the English text description of the video you wish to create, and then click on "Generate Video" to receive the generated video.</left>"""
)
with gr.Row():
with gr.Column():
text_in = gr.Textbox(label="ๆๆฌๆ่ฟฐ", lines=2, elem_id="text-in")
image_in = gr.Image(label="ๅพ็่พๅ
ฅ", type="filepath", interactive=False, elem_id="image-in", height=300)
with gr.Row():
upload_image = gr.UploadButton("ไธไผ ๅพ็", file_types=["image"], file_count="single")
image_submit = gr.Button("็ๆ่ง้ข๐ฌ")
with gr.Column():
video_out_1 = gr.Video(label='็ๆ็่ง้ข', elem_id='video-out_1', interactive=False, height=300)
gr.Markdown("<left><font size=2>ๆณจ๏ผๅฆๆ็ๆ็่ง้ขๆ ๆณๆญๆพ๏ผ่ฏทๅฐ่ฏๅ็บงๆต่งๅจๆไฝฟ็จchromeๆต่งๅจใ</left>")
upload_image.upload(upload_file, upload_image, image_in, queue=False)
image_submit.click(fn=image_to_video, inputs=[image_in, text_in], outputs=[video_out_1])
demo.queue(status_update_rate=1, api_open=False).launch(share=False, show_error=True)
|