Spaces:
Runtime error
Update app.py
Browse fileswith gr.Blocks(theme="Nymbo/Nymbo_Theme", css=css) as demo:
with gr.Tab("Generate"):
with gr.Row():
input_image = gr.Image(label="Upload an image", type="filepath")
input_text = gr.Textbox(label="Enter your prompt for video generation")
output_video = gr.Video(label="Generated Video")
with gr.Row():
steps = gr.Slider(minimum=1, maximum=100, step=1, label="Steps", value=30)
cfg_scale = gr.Slider(minimum=1, maximum=15, step=0.1, label="CFG Scale", value=3.5)
eta = gr.Slider(minimum=0, maximum=1, step=0.1, label="ETA", value=1)
fs = gr.Slider(minimum=1, maximum=30, step=1, label="FPS", value=8)
seed = gr.Slider(minimum=0, maximum=1000000, step=1, label="Seed", value=123)
video_length = gr.Slider(minimum=1, maximum=10, step=1, label="Video Length (seconds)", value=2)
with gr.Row():
for prompt, image_file in examples:
with gr.Column():
gr.Image(image_file, label=prompt[:50] + "...")
gr.Button("Use this example").click(
fn=use_prompt_and_image,
inputs=[],
outputs=[input_text, input_image],
api_name=False
).then(
lambda p=prompt, i=image_file: (p, i),
inputs=[],
outputs=[input_text, input_image]
)
with gr.Tab("Gallery"):
gallery = gr.Gallery(
label="Generated Videos",
show_label=False,
elem_id="gallery",
columns=[5],
rows=[3],
object_fit="contain",
height="auto"
)
selected_video = gr.Video(label="Selected Video")
refresh_btn = gr.Button("Refresh Gallery")
def update_gallery():
return load_gallery()
def show_video(evt: gr.SelectData):
return evt.value[2] # ์ ํ๋ ์ธ๋ค์ผ์ ํด๋นํ๋ ๋น๋์ค ๊ฒฝ๋ก ๋ฐํ
refresh_btn.click(fn=update_gallery, inputs=None, outputs=gallery)
demo.load(fn=update_gallery, inputs=None, outputs=gallery)
gallery.select(show_video, None, selected_video)
input_text.submit(
fn=respond,
inputs=[input_image, input_text, steps, cfg_scale, eta, fs, seed, video_length],
outputs=output_video
).then(
fn=update_gallery,
inputs=None,
outputs=gallery
)
if __name__ == "__main__":
demo.launch()
@@ -138,71 +138,6 @@ def use_prompt_and_image(prompt, image):
|
|
138 |
return prompt, image
|
139 |
|
140 |
|
141 |
-
with gr.Blocks(theme="Nymbo/Nymbo_Theme", css=css) as demo:
|
142 |
-
with gr.Tab("Generate"):
|
143 |
-
with gr.Row():
|
144 |
-
input_image = gr.Image(label="Upload an image", type="filepath")
|
145 |
-
input_text = gr.Textbox(label="Enter your prompt for video generation")
|
146 |
-
output_video = gr.Video(label="Generated Video")
|
147 |
-
|
148 |
-
with gr.Row():
|
149 |
-
steps = gr.Slider(minimum=1, maximum=100, step=1, label="Steps", value=30)
|
150 |
-
cfg_scale = gr.Slider(minimum=1, maximum=15, step=0.1, label="CFG Scale", value=3.5)
|
151 |
-
eta = gr.Slider(minimum=0, maximum=1, step=0.1, label="ETA", value=1)
|
152 |
-
fs = gr.Slider(minimum=1, maximum=30, step=1, label="FPS", value=8)
|
153 |
-
seed = gr.Slider(minimum=0, maximum=1000000, step=1, label="Seed", value=123)
|
154 |
-
video_length = gr.Slider(minimum=1, maximum=10, step=1, label="Video Length (seconds)", value=2)
|
155 |
-
|
156 |
-
with gr.Row():
|
157 |
-
for prompt, image_file in examples:
|
158 |
-
with gr.Column():
|
159 |
-
gr.Image(image_file, label=prompt[:50] + "...")
|
160 |
-
gr.Button("Use this example").click(
|
161 |
-
fn=use_prompt_and_image,
|
162 |
-
inputs=[],
|
163 |
-
outputs=[input_text, input_image],
|
164 |
-
api_name=False
|
165 |
-
).then(
|
166 |
-
lambda p=prompt, i=image_file: (p, i),
|
167 |
-
inputs=[],
|
168 |
-
outputs=[input_text, input_image]
|
169 |
-
)
|
170 |
-
|
171 |
-
with gr.Tab("Gallery"):
|
172 |
-
gallery = gr.Gallery(
|
173 |
-
label="Generated Videos",
|
174 |
-
show_label=False,
|
175 |
-
elem_id="gallery",
|
176 |
-
columns=[5],
|
177 |
-
rows=[3],
|
178 |
-
object_fit="contain",
|
179 |
-
height="auto"
|
180 |
-
)
|
181 |
-
selected_video = gr.Video(label="Selected Video")
|
182 |
-
refresh_btn = gr.Button("Refresh Gallery")
|
183 |
-
|
184 |
-
def update_gallery():
|
185 |
-
return load_gallery()
|
186 |
-
|
187 |
-
def show_video(evt: gr.SelectData):
|
188 |
-
return evt.value[2] # ์ ํ๋ ์ธ๋ค์ผ์ ํด๋นํ๋ ๋น๋์ค ๊ฒฝ๋ก ๋ฐํ
|
189 |
-
|
190 |
-
refresh_btn.click(fn=update_gallery, inputs=None, outputs=gallery)
|
191 |
-
demo.load(fn=update_gallery, inputs=None, outputs=gallery)
|
192 |
-
gallery.select(show_video, None, selected_video)
|
193 |
-
|
194 |
-
input_text.submit(
|
195 |
-
fn=respond,
|
196 |
-
inputs=[input_image, input_text, steps, cfg_scale, eta, fs, seed, video_length],
|
197 |
-
outputs=output_video
|
198 |
-
).then(
|
199 |
-
fn=update_gallery,
|
200 |
-
inputs=None,
|
201 |
-
outputs=gallery
|
202 |
-
)
|
203 |
-
|
204 |
-
if __name__ == "__main__":
|
205 |
-
demo.launch()
|
206 |
|
207 |
|
208 |
|
|
|
138 |
return prompt, image
|
139 |
|
140 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
141 |
|
142 |
|
143 |
|