Spaces:
Running
on
Zero
Running
on
Zero
feat: Add docstrings and enable MCP
Browse filesHello! This is an automated PR from a bot.
This PR introduces two improvements:
1. Adds docstrings to the functions in the app file that are directly connected to the Gradio UI, improving code readability.
2. Enables the Model-Compute-Platform by adding `mcp_server=True` to the `.launch()` call.
No other logic has been changed. Please review and merge if it looks good!
app.py
CHANGED
@@ -40,6 +40,26 @@ def sample(
|
|
40 |
output_folder: str = "outputs",
|
41 |
progress=gr.Progress(track_tqdm=True)
|
42 |
):
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
43 |
if image.mode == "RGBA":
|
44 |
image = image.convert("RGB")
|
45 |
|
@@ -58,6 +78,16 @@ def sample(
|
|
58 |
return video_path, seed
|
59 |
|
60 |
def resize_image(image, output_size=(1024, 576)):
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
61 |
# Calculate aspect ratios
|
62 |
target_aspect = output_size[0] / output_size[1] # Aspect ratio of the desired size
|
63 |
image_aspect = image.width / image.height # Aspect ratio of the original image
|
@@ -125,4 +155,4 @@ with gr.Blocks() as demo:
|
|
125 |
|
126 |
if __name__ == "__main__":
|
127 |
#demo.queue(max_size=20, api_open=False)
|
128 |
-
demo.launch(share=True, show_api=False)
|
|
|
40 |
output_folder: str = "outputs",
|
41 |
progress=gr.Progress(track_tqdm=True)
|
42 |
):
|
43 |
+
"""
|
44 |
+
Generate a video from a single image using Stable Video Diffusion.
|
45 |
+
|
46 |
+
Args:
|
47 |
+
image: Input PIL Image to generate video from
|
48 |
+
seed: Random seed for generation reproducibility
|
49 |
+
randomize_seed: Whether to randomize the seed
|
50 |
+
motion_bucket_id: Controls the amount of motion in the generated video (1-255)
|
51 |
+
fps_id: Frames per second for the output video
|
52 |
+
version: Model version to use
|
53 |
+
cond_aug: Conditioning augmentation strength
|
54 |
+
decoding_t: Number of frames decoded at a time (affects VRAM usage)
|
55 |
+
device: Device to run the model on
|
56 |
+
output_folder: Directory to save the output video
|
57 |
+
progress: Gradio progress tracker
|
58 |
+
|
59 |
+
Returns:
|
60 |
+
Tuple of (video_path, seed) where video_path is the path to the generated video file
|
61 |
+
and seed is the seed used for generation
|
62 |
+
"""
|
63 |
if image.mode == "RGBA":
|
64 |
image = image.convert("RGB")
|
65 |
|
|
|
78 |
return video_path, seed
|
79 |
|
80 |
def resize_image(image, output_size=(1024, 576)):
|
81 |
+
"""
|
82 |
+
Resize and crop an image to the specified output size while maintaining aspect ratio.
|
83 |
+
|
84 |
+
Args:
|
85 |
+
image: PIL Image to resize
|
86 |
+
output_size: Tuple of (width, height) for the target size
|
87 |
+
|
88 |
+
Returns:
|
89 |
+
PIL Image resized and cropped to the target dimensions
|
90 |
+
"""
|
91 |
# Calculate aspect ratios
|
92 |
target_aspect = output_size[0] / output_size[1] # Aspect ratio of the desired size
|
93 |
image_aspect = image.width / image.height # Aspect ratio of the original image
|
|
|
155 |
|
156 |
if __name__ == "__main__":
|
157 |
#demo.queue(max_size=20, api_open=False)
|
158 |
+
demo.launch(share=True, show_api=False, mcp_server=True)
|