Compare commits
10
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2cfdd0b3f5 | ||
|
|
9c06cc666c | ||
|
|
710917d507 | ||
|
|
16f4312c9e | ||
|
|
20801f4d3f | ||
|
|
ba2f942b29 | ||
|
|
0dfa83f486 | ||
|
|
5954092f25 | ||
|
|
a2990ca833 | ||
|
|
d673c4a00b |
@@ -39,38 +39,18 @@ class ComfyUIDeployExternalImageBatch:
|
||||
|
||||
CATEGORY = "image"
|
||||
|
||||
def process_image(self, image):
|
||||
image = ImageOps.exif_transpose(image)
|
||||
image = image.convert("RGB")
|
||||
image = np.array(image).astype(np.float32) / 255.0
|
||||
image_tensor = torch.from_numpy(image)[None,]
|
||||
return image_tensor
|
||||
|
||||
def run(self, input_id, images=None, default_value=None, display_name=None, description=None):
|
||||
import requests
|
||||
import zipfile
|
||||
import io
|
||||
|
||||
processed_images = []
|
||||
try:
|
||||
images_list = json.loads(images) # Assuming images is a JSON array string
|
||||
print(images_list)
|
||||
for img_input in images_list:
|
||||
if img_input.startswith('http'):
|
||||
import requests
|
||||
from io import BytesIO
|
||||
print("Fetching image from url: ", img_input)
|
||||
response = requests.get(img_input)
|
||||
image = Image.open(BytesIO(response.content))
|
||||
elif img_input.startswith('http') and img_input.endswith('.zip'):
|
||||
print("Fetching zip file from url: ", img_input)
|
||||
response = requests.get(img_input)
|
||||
zip_file = zipfile.ZipFile(io.BytesIO(response.content))
|
||||
for file_name in zip_file.namelist():
|
||||
if file_name.lower().endswith(('.png', '.jpg', '.jpeg')):
|
||||
with zip_file.open(file_name) as file:
|
||||
image = Image.open(file)
|
||||
image = self.process_image(image)
|
||||
processed_images.append(image)
|
||||
elif img_input.startswith('data:image/png;base64,') or img_input.startswith('data:image/jpeg;base64,') or img_input.startswith('data:image/jpg;base64,'):
|
||||
import base64
|
||||
from io import BytesIO
|
||||
|
||||
@@ -25,10 +25,10 @@ class ComfyUIDeployExternalLora:
|
||||
},
|
||||
"optional": {
|
||||
"default_lora_name": (folder_paths.get_filename_list("loras"),),
|
||||
"lora_save_name": ( # if `default_lora_name` is a link to download a file, we will attempt to save it with this name
|
||||
"lora_save_name": ( # if `default_lora_name` is a link to download a file, we will attempt to save it with this name
|
||||
"STRING",
|
||||
{"multiline": False, "default": ""},
|
||||
),
|
||||
),
|
||||
"display_name": (
|
||||
"STRING",
|
||||
{"multiline": False, "default": ""},
|
||||
@@ -51,15 +51,7 @@ class ComfyUIDeployExternalLora:
|
||||
|
||||
CATEGORY = "deploy"
|
||||
|
||||
def run(
|
||||
self,
|
||||
input_id,
|
||||
default_lora_name=None,
|
||||
lora_save_name=None,
|
||||
display_name=None,
|
||||
description=None,
|
||||
lora_url=None,
|
||||
):
|
||||
def run(self, input_id, default_lora_name=None, lora_save_name=None, display_name=None, description=None, lora_url=None):
|
||||
import requests
|
||||
import os
|
||||
import uuid
|
||||
@@ -79,9 +71,9 @@ class ComfyUIDeployExternalLora:
|
||||
folder_paths.folder_names_and_paths["loras"][0][0], lora_save_name
|
||||
)
|
||||
print(destination_path)
|
||||
print("Downloading external lora - " + lora_url + " to " + destination_path)
|
||||
print("Downloading external lora - " + input_id + " to " + destination_path)
|
||||
response = requests.get(
|
||||
lora_url,
|
||||
input_id,
|
||||
headers={"User-Agent": "Mozilla/5.0"},
|
||||
allow_redirects=True,
|
||||
)
|
||||
|
||||
@@ -764,7 +764,7 @@ class ComfyUIDeployExternalVideo:
|
||||
"optional": {
|
||||
"meta_batch": ("VHS_BatchManager",),
|
||||
"vae": ("VAE",),
|
||||
"default_video": (sorted(files),),
|
||||
"default_value": (sorted(files),),
|
||||
"display_name": (
|
||||
"STRING",
|
||||
{"multiline": False, "default": ""},
|
||||
@@ -834,7 +834,7 @@ class ComfyUIDeployExternalVideo:
|
||||
):
|
||||
out_file.write(chunk)
|
||||
else:
|
||||
video = kwargs.get("default_video", None)
|
||||
video = kwargs.get("default_value", "")
|
||||
if video is None:
|
||||
raise "No default video given and no external video provided"
|
||||
video_path = folder_paths.get_annotated_filepath(video.strip('"'))
|
||||
|
||||
Reference in New Issue
Block a user