mirror of https://github.com/vladmandic/automatic
add `SD_SAVE_DEBUG` env variable
Signed-off-by: Vladimir Mandic <mandic00@live.com>pull/3970/head^2
parent
3d52e3fe9f
commit
6c3f0dd43b
|
|
@ -26,6 +26,7 @@
|
|||
- Add `wheel` to requirements due to `pip` change
|
||||
- Case-insensitive sampler name matching
|
||||
- Fix delete file with gallery views
|
||||
- Add `SD_SAVE_DEBUG` env variable to report all params and metadata save operations as they happen
|
||||
|
||||
## Update for 2025-06-16
|
||||
|
||||
|
|
|
|||
|
|
@ -131,7 +131,7 @@ class GalleryFile extends HTMLElement {
|
|||
}
|
||||
const ext = this.name.split('.').pop().toLowerCase();
|
||||
if (!['jpg', 'jpeg', 'png', 'gif', 'webp', 'jxl', 'svg', 'mp4'].includes(ext)) {
|
||||
console.error(`gallery: type=${ext} file=${this.name} unsupported`);
|
||||
// console.error(`gallery: type=${ext} file=${this.name} unsupported`);
|
||||
return;
|
||||
}
|
||||
this.hash = await getHash(`${this.folder}/${this.name}/${this.size}/${this.mtime}`); // eslint-disable-line no-use-before-define
|
||||
|
|
|
|||
|
|
@ -19,6 +19,7 @@ from modules.video import save_video # pylint: disable=unused-import
|
|||
|
||||
|
||||
debug = errors.log.trace if os.environ.get('SD_PATH_DEBUG', None) is not None else lambda *args, **kwargs: None
|
||||
debug_save = errors.log.trace if os.environ.get('SD_SAVE_DEBUG', None) is not None else lambda *args, **kwargs: None
|
||||
try:
|
||||
from pi_heif import register_heif_opener
|
||||
register_heif_opener()
|
||||
|
|
@ -73,6 +74,7 @@ def atomically_save_image():
|
|||
pnginfo_data = PngImagePlugin.PngInfo()
|
||||
for k, v in params.pnginfo.items():
|
||||
pnginfo_data.add_text(k, str(v))
|
||||
debug_save(f'Save pnginfo: {params.pnginfo.items()}')
|
||||
save_args = { 'compress_level': 6, 'pnginfo': pnginfo_data if shared.opts.image_metadata else None }
|
||||
elif image_format == 'JPEG':
|
||||
if image.mode == 'RGBA':
|
||||
|
|
@ -82,12 +84,14 @@ def atomically_save_image():
|
|||
image = image.point(lambda p: p * 0.0038910505836576).convert("L")
|
||||
save_args = { 'optimize': True, 'quality': shared.opts.jpeg_quality }
|
||||
if shared.opts.image_metadata:
|
||||
debug_save(f'Save exif: {exifinfo}')
|
||||
save_args['exif'] = piexif.dump({ "Exif": { piexif.ExifIFD.UserComment: piexif.helper.UserComment.dump(exifinfo, encoding="unicode") } })
|
||||
elif image_format == 'WEBP':
|
||||
if image.mode == 'I;16':
|
||||
image = image.point(lambda p: p * 0.0038910505836576).convert("RGB")
|
||||
save_args = { 'optimize': True, 'quality': shared.opts.jpeg_quality, 'lossless': shared.opts.webp_lossless }
|
||||
if shared.opts.image_metadata:
|
||||
debug_save(f'Save exif: {exifinfo}')
|
||||
save_args['exif'] = piexif.dump({ "Exif": { piexif.ExifIFD.UserComment: piexif.helper.UserComment.dump(exifinfo, encoding="unicode") } })
|
||||
elif image_format == 'JXL':
|
||||
if image.mode == 'I;16':
|
||||
|
|
@ -96,10 +100,12 @@ def atomically_save_image():
|
|||
image = image.convert("RGBA")
|
||||
save_args = { 'optimize': True, 'quality': shared.opts.jpeg_quality, 'lossless': shared.opts.webp_lossless }
|
||||
if shared.opts.image_metadata:
|
||||
debug_save(f'Save exif: {exifinfo}')
|
||||
save_args['exif'] = piexif.dump({ "Exif": { piexif.ExifIFD.UserComment: piexif.helper.UserComment.dump(exifinfo, encoding="unicode") } })
|
||||
else:
|
||||
save_args = { 'quality': shared.opts.jpeg_quality }
|
||||
try:
|
||||
debug_save(f'Save args: {save_args}')
|
||||
image.save(fn, format=image_format, **save_args)
|
||||
except Exception as e:
|
||||
shared.log.error(f'Save failed: file="{fn}" format={image_format} args={save_args} {e}')
|
||||
|
|
|
|||
Loading…
Reference in New Issue