diff --git a/comfy_extras/nodes_audio.py b/comfy_extras/nodes_audio.py index 3cb918e0..9c58db55 100644 --- a/comfy_extras/nodes_audio.py +++ b/comfy_extras/nodes_audio.py @@ -143,6 +143,7 @@ def insert_or_replace_vorbis_comment(flac_io, comment_dict): class SaveAudio: def __init__(self): + self.id: str self.output_dir = folder_paths.get_output_directory() self.type = "output" self.prefix_append = "" @@ -173,6 +174,7 @@ class SaveAudio: if extra_pnginfo is not None: for x in extra_pnginfo: metadata[x] = json.dumps(extra_pnginfo[x]) + metadata["output_node_id"] = self.id for (batch_number, waveform) in enumerate(audio["waveform"].cpu()): filename_with_batch_num = filename.replace("%batch_num%", str(batch_number)) diff --git a/execution.py b/execution.py index 2c979205..406d8992 100644 --- a/execution.py +++ b/execution.py @@ -291,6 +291,7 @@ def execute(server, dynprompt, caches, current_item, extra_data, executed, promp obj = caches.objects.get(unique_id) if obj is None: obj = class_def() + obj.id = unique_id caches.objects.set(unique_id, obj) if hasattr(obj, "check_lazy_status"): diff --git a/nodes.py b/nodes.py index cfd7dd8a..fd43b770 100644 --- a/nodes.py +++ b/nodes.py @@ -1568,6 +1568,7 @@ class KSamplerAdvanced: class SaveImage: def __init__(self): + self.id: str self.output_dir = folder_paths.get_output_directory() self.type = "output" self.prefix_append = "" @@ -1608,6 +1609,7 @@ class SaveImage: if extra_pnginfo is not None: for x in extra_pnginfo: metadata.add_text(x, json.dumps(extra_pnginfo[x])) + metadata.add_text("output_node_id", self.id) filename_with_batch_num = filename.replace("%batch_num%", str(batch_number)) file = f"{filename_with_batch_num}_{counter:05}_.png"