| 151 | |
| 152 | |
| 153 | def ui(): |
| 154 | with gr.Blocks() as demo: |
| 155 | gr.Markdown( |
| 156 | """ |
| 157 | # Moore-AnimateAnyone Demo |
| 158 | """ |
| 159 | ) |
| 160 | animation = gr.Video( |
| 161 | format="mp4", |
| 162 | label="Animation Results", |
| 163 | height=448, |
| 164 | autoplay=True, |
| 165 | ) |
| 166 | |
| 167 | with gr.Row(): |
| 168 | reference_image = gr.Image(label="Reference Image") |
| 169 | motion_sequence = gr.Video( |
| 170 | format="mp4", label="Motion Sequence", height=512 |
| 171 | ) |
| 172 | |
| 173 | with gr.Column(): |
| 174 | width_slider = gr.Slider( |
| 175 | label="Width", minimum=448, maximum=768, value=512, step=64 |
| 176 | ) |
| 177 | height_slider = gr.Slider( |
| 178 | label="Height", minimum=512, maximum=1024, value=768, step=64 |
| 179 | ) |
| 180 | length_slider = gr.Slider( |
| 181 | label="Video Length", minimum=24, maximum=128, value=24, step=24 |
| 182 | ) |
| 183 | with gr.Row(): |
| 184 | seed_textbox = gr.Textbox(label="Seed", value=-1) |
| 185 | seed_button = gr.Button( |
| 186 | value="\U0001F3B2", elem_classes="toolbutton" |
| 187 | ) |
| 188 | seed_button.click( |
| 189 | fn=lambda: gr.Textbox.update(value=random.randint(1, 1e8)), |
| 190 | inputs=[], |
| 191 | outputs=[seed_textbox], |
| 192 | ) |
| 193 | with gr.Row(): |
| 194 | sampling_steps = gr.Slider( |
| 195 | label="Sampling steps", |
| 196 | value=25, |
| 197 | info="default: 25", |
| 198 | step=5, |
| 199 | maximum=30, |
| 200 | minimum=10, |
| 201 | ) |
| 202 | guidance_scale = gr.Slider( |
| 203 | label="Guidance scale", |
| 204 | value=3.5, |
| 205 | info="default: 3.5", |
| 206 | step=0.5, |
| 207 | maximum=10, |
| 208 | minimum=2.0, |
| 209 | ) |
| 210 | submit = gr.Button("Animate") |