Merge branch 'jpg_config_image_extension'

# Conflicts:
#	modules/async_worker.py
#	modules/flags.py
#	modules/private_logger.py
#	webui.py
This commit is contained in:
Manuel Schmid
2024-01-19 00:14:44 +01:00
5 changed files with 22 additions and 22 deletions
+3 -3
View File
@@ -138,7 +138,7 @@ def worker():
performance_selection = args.pop()
aspect_ratios_selection = args.pop()
image_number = args.pop()
image_file_extension = args.pop()
output_format = args.pop()
image_seed = args.pop()
sharpness = args.pop()
guidance_scale = args.pop()
@@ -547,7 +547,7 @@ def worker():
if direct_return:
d = [('Upscale (Fast)', '2x')]
uov_input_image_path = log(uov_input_image, d, image_file_extension=image_file_extension)
uov_input_image_path = log(uov_input_image, d, output_format=output_format)
yield_result(async_task, uov_input_image_path, do_not_show_finished_images=True)
return
@@ -932,7 +932,7 @@ def worker():
if n != 'None':
d.append((f'LoRA {li + 1}', f'{n} : {w}'))
d.append(('Version', 'v' + fooocus_version.version))
img_paths.append(log(x, d, metadata_string, save_metadata_to_images, image_file_extension))
img_paths.append(log(x, d, metadata_string, save_metadata_to_images, output_format))
yield_result(async_task, img_paths, do_not_show_finished_images=len(tasks) == 1, progressbar_index=int(15.0 + 85.0 * float((current_task_id + 1) * steps) / float(all_steps)))
except ldm_patched.modules.model_management.InterruptProcessingException as e:
+3 -3
View File
@@ -289,10 +289,10 @@ default_max_image_number = get_config_item_or_set_default(
default_value=32,
validator=lambda x: isinstance(x, int) and x >= 1
)
default_image_file_extension = get_config_item_or_set_default(
key='default_image_file_extension',
default_output_format = get_config_item_or_set_default(
key='default_output_format',
default_value='png',
validator=lambda x: x in modules.flags.image_file_extensions
validator=lambda x: x in modules.flags.output_formats
)
default_image_number = get_config_item_or_set_default(
key='default_image_number',
+1 -1
View File
@@ -45,7 +45,7 @@ performance_selections = [
('Extreme Speed (LCM) <span style="color: grey;"> \U00002223 8 steps, intermediate results disabled</span>', 'Extreme Speed')
]
image_file_extensions = ['png', 'jpg', 'webp']
output_formats = ['png', 'jpg', 'webp']
inpaint_option_default = 'Inpaint or Outpaint (default)'
inpaint_option_detail = 'Improve Detail (face, hand, eyes, etc.)'
+9 -9
View File
@@ -12,31 +12,31 @@ from tempfile import gettempdir
log_cache = {}
def get_current_html_path(image_extension=None):
_image_extension = image_extension if image_extension else modules.config.default_image_extension
def get_current_html_path(output_format=None):
output_format = output_format if output_format else modules.config.default_output_format
date_string, local_temp_filename, only_name = generate_temp_filename(folder=modules.config.path_outputs,
extension=_image_extension)
extension=output_format)
html_name = os.path.join(os.path.dirname(local_temp_filename), 'log.html')
return html_name
def log(img, dic, metadata=None, save_metadata_to_image=False, image_file_extension=None) -> str:
def log(img, dic, metadata=None, save_metadata_to_image=False, output_format=None) -> str:
path_outputs = args_manager.args.temp_path if args_manager.args.disable_image_log else modules.config.path_outputs
image_file_extension = image_file_extension if image_file_extension else modules.config.default_image_file_extension
date_string, local_temp_filename, only_name = generate_temp_filename(folder=path_outputs, extension=image_file_extension)
output_format = output_format if output_format else modules.config.default_output_format
date_string, local_temp_filename, only_name = generate_temp_filename(folder=path_outputs, extension=output_format)
os.makedirs(os.path.dirname(local_temp_filename), exist_ok=True)
if image_file_extension == 'png':
if output_format == 'png':
if save_metadata_to_image:
pnginfo = PngInfo()
pnginfo.add_text("parameters", metadata)
else:
pnginfo = None
Image.fromarray(img).save(local_temp_filename, pnginfo=pnginfo)
elif image_file_extension == 'jpg':
elif output_format == 'jpg':
# TODO check if metadata works correctly here
Image.fromarray(img).save(local_temp_filename, quality=95, optimize=True, progressive=True, comment=metadata if save_metadata_to_image else None)
elif image_file_extension == 'webp':
elif output_format == 'webp':
# TODO test exif handling
Image.fromarray(img).save(local_temp_filename, quality=95, lossless=False)
else: