Pass through fast saver latent
This commit is contained in:
+4
-3
@@ -202,7 +202,8 @@ class FastAbsoluteSaver:
|
|||||||
"hidden": {"prompt": "PROMPT", "extra_pnginfo": "EXTRA_PNGINFO"},
|
"hidden": {"prompt": "PROMPT", "extra_pnginfo": "EXTRA_PNGINFO"},
|
||||||
}
|
}
|
||||||
|
|
||||||
RETURN_TYPES = ()
|
RETURN_TYPES = ("LATENT",)
|
||||||
|
RETURN_NAMES = ("latent",)
|
||||||
FUNCTION = "save_images_fast"
|
FUNCTION = "save_images_fast"
|
||||||
OUTPUT_NODE = True
|
OUTPUT_NODE = True
|
||||||
CATEGORY = "JSON Dynamic/io"
|
CATEGORY = "JSON Dynamic/io"
|
||||||
@@ -546,7 +547,7 @@ class FastAbsoluteSaver:
|
|||||||
avg_score = (sum(scores_list) / len(scores_list)) if scores_list else None
|
avg_score = (sum(scores_list) / len(scores_list)) if scores_list else None
|
||||||
self._save_sidecar_png(img, png_path, avg_score, metadata_key, prompt, extra_pnginfo)
|
self._save_sidecar_png(img, png_path, avg_score, metadata_key, prompt, extra_pnginfo)
|
||||||
print(f"xx- FastSaver: Metadata PNG sidecar saved to {png_path}")
|
print(f"xx- FastSaver: Metadata PNG sidecar saved to {png_path}")
|
||||||
return {"ui": {"images": []}}
|
return {"ui": {"images": []}, "result": (latent,)}
|
||||||
|
|
||||||
if max_threads == 0:
|
if max_threads == 0:
|
||||||
max_threads = os.cpu_count() or 4
|
max_threads = os.cpu_count() or 4
|
||||||
@@ -623,7 +624,7 @@ class FastAbsoluteSaver:
|
|||||||
self._save_sidecar_png(img, png_path, first_score, metadata_key, prompt, extra_pnginfo)
|
self._save_sidecar_png(img, png_path, first_score, metadata_key, prompt, extra_pnginfo)
|
||||||
print(f"xx- FastSaver: Metadata PNG sidecar saved to {png_path}")
|
print(f"xx- FastSaver: Metadata PNG sidecar saved to {png_path}")
|
||||||
|
|
||||||
return {"ui": {"images": []}}
|
return {"ui": {"images": []}, "result": (latent,)}
|
||||||
|
|
||||||
|
|
||||||
class JDL_LoadLatentAbsolute:
|
class JDL_LoadLatentAbsolute:
|
||||||
|
|||||||
@@ -45,6 +45,16 @@ def test_png_save_writes_matching_latent_sidecar(tmp_path):
|
|||||||
assert loaded["keep"] == {"value": 7}
|
assert loaded["keep"] == {"value": 7}
|
||||||
|
|
||||||
|
|
||||||
|
def test_png_save_returns_latent_passthrough(tmp_path):
|
||||||
|
saver = FastAbsoluteSaver()
|
||||||
|
latent = {"samples": torch.ones((1, 1, 2, 2))}
|
||||||
|
|
||||||
|
result = saver.save_images_fast(**_save_args(tmp_path, latent=latent))
|
||||||
|
|
||||||
|
assert result["result"] == (latent,)
|
||||||
|
assert result["result"][0] is latent
|
||||||
|
|
||||||
|
|
||||||
def test_video_save_writes_latent_sidecar_next_to_video(tmp_path):
|
def test_video_save_writes_latent_sidecar_next_to_video(tmp_path):
|
||||||
saver = FastAbsoluteSaver()
|
saver = FastAbsoluteSaver()
|
||||||
latent = {"samples": torch.arange(8, dtype=torch.float32).reshape(2, 1, 2, 2)}
|
latent = {"samples": torch.arange(8, dtype=torch.float32).reshape(2, 1, 2, 2)}
|
||||||
|
|||||||
Reference in New Issue
Block a user