91 lines
2.3 KiB
Python
91 lines
2.3 KiB
Python
from base64 import b64decode
|
|
|
|
# from .utils import convert_base64_to_image, convert_base_to_audio, convert_tensor_to_base
|
|
from .utils import convert_base64_to_image, convert_image_to_base64
|
|
|
|
class Base64ToImage:
|
|
@classmethod
|
|
def INPUT_TYPES(s):
|
|
return {
|
|
"required": {
|
|
"base64": ("STRING", {"multiline": True})
|
|
}
|
|
}
|
|
|
|
RETURN_TYPES = ("IMAGE","MASK",)
|
|
RETURN_NAMES = ("image","mask",)
|
|
|
|
CATEGORY = "Base64-Nodes"
|
|
|
|
FUNCTION = "base64_to_image"
|
|
|
|
def base64_to_image(self, base64):
|
|
image, mask = convert_base64_to_image(base64)
|
|
return (image, mask,)
|
|
|
|
class ImageToBase64:
|
|
@classmethod
|
|
def INPUT_TYPES(s):
|
|
return {
|
|
"required": {
|
|
"image": ("IMAGE",)
|
|
}
|
|
}
|
|
|
|
RETURN_TYPES = ("STRING",)
|
|
RETURN_NAMES = ("base64",)
|
|
|
|
CATEGORY = "Base64-Nodes"
|
|
|
|
FUNCTION = "image_to_base64"
|
|
|
|
def image_to_base64(self, image):
|
|
base64 = convert_image_to_base64(image)
|
|
return (base64,)
|
|
|
|
# class LoadAudioBase64:
|
|
# @classmethod
|
|
# def INPUT_TYPES(s):
|
|
# return {
|
|
# "required": {
|
|
# "base64": ("STRING", {"multiline": True})
|
|
# },
|
|
# "optional" : {
|
|
# "start_time": ("FLOAT", {"default": 0, "min": 0,}),
|
|
# "duration": ("FLOAT" , {"default": 0, "min": 0, "max": 10000000, "step": 0.01}),
|
|
# }
|
|
# }
|
|
|
|
# RETURN_TYPES = ("AUDIO",)
|
|
# RETURN_NAMES = ("audio",)
|
|
|
|
# CATEGORY = "Base64-Nodes"
|
|
|
|
# FUNCTION = "load_base64_audio"
|
|
|
|
# def load_base64_audio(self, base64, start_time=0, duration=0):
|
|
# audio_data = b64decode(base64)
|
|
# audio = convert_base_to_audio(audio_data, start_time, duration)
|
|
# return (audio,)
|
|
|
|
# class LastFrameToBase64:
|
|
# @classmethod
|
|
# def INPUT_TYPES(s):
|
|
# return {
|
|
# "required": {
|
|
# "images": ("IMAGE",)
|
|
# }
|
|
# }
|
|
|
|
# RETURN_TYPES = ("STRING",)
|
|
# RETURN_NAMES = ("base64",)
|
|
|
|
# CATEGORY = "Base64-Nodes"
|
|
|
|
# FUNCTION = "load_images"
|
|
|
|
# def load_images(self, images):
|
|
# last_image = images[-1]
|
|
# b64_str = convert_tensor_to_base(last_image)
|
|
# print(images[-1].shape)
|
|
# return (b64_str,) |