diff options
author | Aarni Koskela <akx@iki.fi> | 2023-05-11 17:52:30 +0000 |
---|---|---|
committer | Aarni Koskela <akx@iki.fi> | 2023-05-11 17:54:40 +0000 |
commit | da10de022f69e7847bcc64a7914d56246d852e20 (patch) | |
tree | 5b54981aa8ecab994e6de52d206cce2910da2f89 /modules/progress.py | |
parent | 483545252f865334a6da84339126cefd59c3d885 (diff) | |
download | stable-diffusion-webui-gfx803-da10de022f69e7847bcc64a7914d56246d852e20.tar.gz stable-diffusion-webui-gfx803-da10de022f69e7847bcc64a7914d56246d852e20.tar.bz2 stable-diffusion-webui-gfx803-da10de022f69e7847bcc64a7914d56246d852e20.zip |
Make live previews use JPEG only when the image is lorge enough
Diffstat (limited to 'modules/progress.py')
-rw-r--r-- | modules/progress.py | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/modules/progress.py b/modules/progress.py index 289dd311..c2e37834 100644 --- a/modules/progress.py +++ b/modules/progress.py @@ -95,9 +95,17 @@ def progressapi(req: ProgressRequest): image = shared.state.current_image
if image is not None:
buffered = io.BytesIO()
- image.save(buffered, format=opts.live_previews_format)
+ format = opts.live_previews_format
+ save_kwargs = {}
+ if format == "auto":
+ if max(*image.size) > 256:
+ format = "jpeg"
+ else:
+ format = "png"
+ save_kwargs = {"optimize": True}
+ image.save(buffered, format=format, **save_kwargs)
base64_image = base64.b64encode(buffered.getvalue()).decode('ascii')
- live_preview = f"data:image/{opts.live_previews_format};base64,{base64_image}"
+ live_preview = f"data:image/{format};base64,{base64_image}"
id_live_preview = shared.state.id_live_preview
else:
live_preview = None
|