Save like live preview option, #14

main
AlUlkesh 2023-01-17 16:47:58 +01:00
parent f6079ea688
commit 13c9a47507
5 changed files with 10 additions and 6 deletions

View File

@ -21,6 +21,7 @@ Once the image generation begins, the intermediate images will start saving in a
Please be aware that _Image creation progress preview mode_ in the webui's settings affects how the intermediate images are created.
You can almost make a video out of the intermediate images:
You can also make a video out of the intermediate images:
<p><img src="images/13655-sample.gif"/>
<img src="images/13642-sample.gif"/>
[![13672-sample.mp4]({"images/13672-sample.jpg})]({"images/13672-sample.mp4"} "13672-sample.mp4")

BIN
images/13672-sample.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

BIN
images/13672-sample.mp4 Normal file

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

After

Width:  |  Height:  |  Size: 49 KiB

View File

@ -32,8 +32,8 @@ class Script(scripts.Script):
)
with gr.Row():
ssii_intermediate_type = gr.Radio(
label="Should the intermediate images be denoised or noisy?",
choices=["Denoised", "Noisy"],
label="Type of images to be saved",
choices=["Denoised", "Noisy", "According to Live preview subject setting"],
value="Denoised"
)
with gr.Row():
@ -205,10 +205,12 @@ class Script(scripts.Script):
if current_step % ssii_every_n == 0:
for index in range(0, p.batch_size):
if ssii_intermediate_type == "Denoised":
image = sample_to_image(d["denoised"], index=index)
else:
if ssii_intermediate_type == "According to Live preview subject setting" and index == 0:
image = state.current_image
elif ssii_intermediate_type == "Noisy":
image = sample_to_image(d["x"], index=index)
else:
image = sample_to_image(d["denoised"], index=index)
logger.debug(f"ssii_intermediate_type, ssii_every_n, ssii_stop_at_n: {ssii_intermediate_type}, {ssii_every_n}, {ssii_stop_at_n}")
logger.debug(f"Step: {current_step}")
@ -339,6 +341,7 @@ class Script(scripts.Script):
path_vid_file = os.path.join(p.intermed_outpath, vid_file)
if ssii_smooth:
pts = (round(ssii_seconds / frames_per_image, 5))
logger.debug(f"pts: {pts}")
if pts < 1:
pts = "1"
else: