mirror of
https://github.com/tusharbhutt/Endless-Nodes.git
synced 2026-03-25 06:02:13 -03:00
Add files via upload
V 0.41, correct error preventing ImageSaver from appearing in node list
This commit is contained in:
23
README.md
23
README.md
@@ -13,14 +13,13 @@ When using the [ComfyUI](https://github.com/comfyanonymous/ComfyUI) interface fo
|
|||||||
Rightly or wrongly, I am pretending to teach myself a bit of Python to get some nodes up and running to do what I'd like. Yes, I am using ChatGPT, and yes I am a glutton for punishment. There are no promises that these nodes will work for you or that I will maintain them. Feel free to do with them as you wish, according to the license model.
|
Rightly or wrongly, I am pretending to teach myself a bit of Python to get some nodes up and running to do what I'd like. Yes, I am using ChatGPT, and yes I am a glutton for punishment. There are no promises that these nodes will work for you or that I will maintain them. Feel free to do with them as you wish, according to the license model.
|
||||||
|
|
||||||
|
|
||||||
**UPDATE: Oct 20 2023**
|
**UPDATE: Aug 19 2024**
|
||||||
|
|
||||||
+ ***Updated the Image Saver to trun off JSON add to Image Metadata if the user chooses***
|
|
||||||
|
|
||||||
|
+ ***Fixed Image Saver node so it appears again**
|
||||||
|
|
||||||
**UPDATE: Oct 16 2023**
|
**UPDATE: Oct 16 2023**
|
||||||
|
|
||||||
+ ***Added a node that allows for six float values to output to six different output slots***
|
+ ***Added a node that allows for six float values to output to six different output slots**
|
||||||
|
|
||||||
|
|
||||||
**UPDATE: Oct 14, 2023**
|
**UPDATE: Oct 14, 2023**
|
||||||
@@ -61,8 +60,8 @@ Rightly or wrongly, I am pretending to teach myself a bit of Python to get some
|
|||||||
**UPDATE: Sep 18, 2023**
|
**UPDATE: Sep 18, 2023**
|
||||||
|
|
||||||
+ Added the Endless Nodes Parameterizer with Text_G and Text_L prompt box
|
+ Added the Endless Nodes Parameterizer with Text_G and Text_L prompt box
|
||||||
+ Added the Parameterizer with a_score for both pos/neg
|
+ Added the Parameterizer with a score for both pos/neg
|
||||||
+ Added the Parameterizer with a_score for both pos/neg and Text_G and Text_L prompt box
|
+ Added the Parameterizer with a score for both pos/neg and Text_G and Text_L prompt box
|
||||||
+ Fixed some typos
|
+ Fixed some typos
|
||||||
|
|
||||||
|
|
||||||
@@ -94,7 +93,7 @@ This is what I did:
|
|||||||
- Installed the Windows standalone version of ComfyUI
|
- Installed the Windows standalone version of ComfyUI
|
||||||
- This will install a portable version of Python for you and add the Python folder to your Win
|
- This will install a portable version of Python for you and add the Python folder to your Win
|
||||||
- Downloaded GIT from here: https://git-scm.com/download/win
|
- Downloaded GIT from here: https://git-scm.com/download/win
|
||||||
- **IMPORTANT** This is where having the standalone version may trip you up: both the C:\ComfyUI\python_embeded\Scripts _and_ C:\ComfyUI\python_embeded\ folders need to be in the PATH sectiom of your system variables (_not_ the user variables). If I recall only the former is added, so you will have to add the second one manually
|
- **IMPORTANT** This is where having the standalone version may trip you up: both the C:\ComfyUI\python_embeded\Scripts _and_ C:\ComfyUI\python_embeded\ folders need to be in the PATH section of your system variables (_not_ the user variables). If I recall only the former is added, so you will have to add the second one manually
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
@@ -134,10 +133,6 @@ Allows you to connect six float values to any other float input. What is the use
|
|||||||
|
|
||||||
***UPDATED*** to allow the user to save JSON data to the image (default is OFF); the previous versions automatically saved the JSON data but if you have other nodes doing it, this is redundant. ***_Warning:_*** turning this off will not allow you to drag and drop an image into ComfyUI to rework it unless you had some other mechanism to save the JSON to metadata.
|
***UPDATED*** to allow the user to save JSON data to the image (default is OFF); the previous versions automatically saved the JSON data but if you have other nodes doing it, this is redundant. ***_Warning:_*** turning this off will not allow you to drag and drop an image into ComfyUI to rework it unless you had some other mechanism to save the JSON to metadata.
|
||||||
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
|
|
||||||
This is why I tried my hand at Python in the first place! There are many, many, many, good image saver nodes out there, so why one more? Well:
|
This is why I tried my hand at Python in the first place! There are many, many, many, good image saver nodes out there, so why one more? Well:
|
||||||
|
|
||||||
+ The default saver does not save to UNC in Windows, even if you try to put it in the extra paths YAML file
|
+ The default saver does not save to UNC in Windows, even if you try to put it in the extra paths YAML file
|
||||||
@@ -166,14 +161,10 @@ JSONs to the left of me, images to the right of me, and here I am stuck in the m
|
|||||||
This module uses the standard Python date and time stamp formats, it **_does not_** use the date and time format popular in the WAS Suite. See below for equivalency examples:
|
This module uses the standard Python date and time stamp formats, it **_does not_** use the date and time format popular in the WAS Suite. See below for equivalency examples:
|
||||||
|
|
||||||
- WAS Suite would use: ```[time(%Y-%m-%d__%I-%M%p)]```
|
- WAS Suite would use: ```[time(%Y-%m-%d__%I-%M%p)]```
|
||||||
- Python stadndard is: ```%Y_%m_%d__%I-%M%p```
|
- Python standard is: ```%Y_%m_%d__%I-%M%p```
|
||||||
|
|
||||||
Note that there is no need to use "\[time(your string here)\]"
|
Note that there is no need to use "\[time(your string here)\]"
|
||||||
|
|
||||||
If you want, grab the file below which should have metadata built in that will show you how to save a file with the date and time as part of the filename
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
|
|
||||||
## Aesthetic Scorer
|
## Aesthetic Scorer
|
||||||
|
|
||||||
|
|||||||
@@ -79,4 +79,4 @@ NODE_DISPLAY_NAME_MAPPINGS = {
|
|||||||
|
|
||||||
__all__ = ['NODE_CLASS_MAPPINGS', 'NODE_DISPLAY_NAME_MAPPINGS']
|
__all__ = ['NODE_CLASS_MAPPINGS', 'NODE_DISPLAY_NAME_MAPPINGS']
|
||||||
|
|
||||||
print("\033[36m An Endless Sea of Stars Custom Nodes V0.38b \033[34m: \033[92mLoaded\033[0m")
|
print("\033[36m An Endless Sea of Stars Custom Nodes V0.41 \033[34m: \033[92m Loaded \033[0m")
|
||||||
@@ -1,3 +1,11 @@
|
|||||||
|
Aug 19/24, V0.41: Fixed Image Saver node so it appears
|
||||||
|
Oct 20/23, V0.40: Updated ImageSaver to turn off JSON save to image data
|
||||||
|
Oct 18/23, V0.39: Added six float output node
|
||||||
|
Oct 18/23, V0.38: (UNRELEASED)Putting in hooks for future fixes and improvements
|
||||||
|
Oct 18/23, V0.37: Bug fix in Image Saver module that would overwrite files was corrected
|
||||||
|
Oct 07/23, V0.36: Killed the scorers until I figure out why CLIP won't load for some people
|
||||||
|
Oct 06/23, V0.35: Reverted the Image Saver module as I had inadvertently removed the ability to add date and time to the filenames
|
||||||
|
Oct 05/23, V0.33: Renamed nodes to make them shorter and easier to search for, breaks names of previous workflows though
|
||||||
Oct 07/23, V0.33: Removed Aesthetic Scorer and ImageReward until I can figure out why the CLIP module isn't working for a few people
|
Oct 07/23, V0.33: Removed Aesthetic Scorer and ImageReward until I can figure out why the CLIP module isn't working for a few people
|
||||||
Oct 05/23, V0.32: (UNRELEASED)Set rules for image saver so paths + filename length do not exceed 248 (leaves room for extension)
|
Oct 05/23, V0.32: (UNRELEASED)Set rules for image saver so paths + filename length do not exceed 248 (leaves room for extension)
|
||||||
Oct 04/23, V0.31: Release of V0.28 functionality (int, float, num to X), added String to X, code cleanup, vanity node renaming and recategorization
|
Oct 04/23, V0.31: Release of V0.28 functionality (int, float, num to X), added String to X, code cleanup, vanity node renaming and recategorization
|
||||||
|
|||||||
@@ -10,6 +10,7 @@
|
|||||||
# Endless Sea of Stars Custom Node Collection
|
# Endless Sea of Stars Custom Node Collection
|
||||||
#https://github.com/tusharbhutt/Endless-Nodes
|
#https://github.com/tusharbhutt/Endless-Nodes
|
||||||
#----------------------------------------------
|
#----------------------------------------------
|
||||||
|
# Aug 19/24, V0.41: Updated ImageSaver so the node actaully appears on loading
|
||||||
# Oct 20/23, V0.40: Updated ImageSaver to turn off JSON save to image data
|
# Oct 20/23, V0.40: Updated ImageSaver to turn off JSON save to image data
|
||||||
# Oct 18/23, V0.39: Added six float output node
|
# Oct 18/23, V0.39: Added six float output node
|
||||||
# Oct 18/23, V0.38: (UNRELEASED)Putting in hooks for future fixes and improvements
|
# Oct 18/23, V0.38: (UNRELEASED)Putting in hooks for future fixes and improvements
|
||||||
@@ -724,6 +725,8 @@ class EndlessNode_ImageReward:
|
|||||||
# Saver type one: saves IMAGE and JSON files, can specify separate folders for each, or one, or none, and use Python timestamps
|
# Saver type one: saves IMAGE and JSON files, can specify separate folders for each, or one, or none, and use Python timestamps
|
||||||
|
|
||||||
class EndlessNode_ImageSaver:
|
class EndlessNode_ImageSaver:
|
||||||
|
CATEGORY = "Endless 🌊✨/IO"
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
self.output_dir = folder_paths.get_output_directory()
|
self.output_dir = folder_paths.get_output_directory()
|
||||||
self.type = "output"
|
self.type = "output"
|
||||||
@@ -737,8 +740,8 @@ class EndlessNode_ImageSaver:
|
|||||||
"delimiter": ("STRING", {"default": "_"}),
|
"delimiter": ("STRING", {"default": "_"}),
|
||||||
"filename_number_padding": ("INT", {"default": 4, "min": 1, "max": 9, "step": 1}),
|
"filename_number_padding": ("INT", {"default": 4, "min": 1, "max": 9, "step": 1}),
|
||||||
"filename_number_start": (["false", "true"],),
|
"filename_number_start": (["false", "true"],),
|
||||||
"image_folder": ("STRING", {"default": None}),
|
"image_folder": ("STRING", {"default": ""}),
|
||||||
"json_folder": ("STRING", {"default": None}),
|
"json_folder": ("STRING", {"default": ""}),
|
||||||
"save_json_metadata": ("BOOLEAN", {"default": False}), # New input for saving JSON metadata
|
"save_json_metadata": ("BOOLEAN", {"default": False}), # New input for saving JSON metadata
|
||||||
},
|
},
|
||||||
"hidden": {
|
"hidden": {
|
||||||
@@ -749,7 +752,7 @@ class EndlessNode_ImageSaver:
|
|||||||
RETURN_TYPES = ()
|
RETURN_TYPES = ()
|
||||||
FUNCTION = "save_images"
|
FUNCTION = "save_images"
|
||||||
OUTPUT_NODE = True
|
OUTPUT_NODE = True
|
||||||
CATEGORY = "Endless 🌊✨/IO"
|
|
||||||
|
|
||||||
def save_images(self, images, filename_prefix="ComfyUI", delimiter="_",
|
def save_images(self, images, filename_prefix="ComfyUI", delimiter="_",
|
||||||
filename_number_padding=4, filename_number_start='false',
|
filename_number_padding=4, filename_number_start='false',
|
||||||
|
|||||||
Reference in New Issue
Block a user