FFMpeg-Compressor: Option to disabling WebP RGBA

This commit is contained in:
OleSTEEP 2023-10-09 23:40:31 +03:00
parent 224359f251
commit 7d087fc5b6
2 changed files with 14 additions and 1 deletions

View file

@ -3,6 +3,7 @@ FFmpegParams = "-n -hide_banner -loglevel quiet"
CopyUnprocessed = false
MimicMode = false
HideErrors = false
WebpRGBA = true
[AUDIO]
Extension = "mp3"
@ -15,4 +16,4 @@ JpegComp = 3
[VIDEO]
Extension = "mp4"
Codec = "libvpx-vp9"
Codec = "libvpx-vp9"

View file

@ -80,6 +80,18 @@ def compress_image(folder, file, target_folder):
f"'{target_folder}/{os.path.splitext(file)[0]}.{get_req_ext(file)}'")
else:
printer.warning(f"{file} has transparency (.jpg not support it). Skipping...")
elif get_req_ext(file) == "webp" and configloader.config['FFMPEG']['WebpRGBA']:
if not has_transparency(Image.open(f'{folder}/{file}')):
printer.files(file, os.path.splitext(file)[0], get_req_ext(file), f"{comp_level}%")
os.system(f"ffmpeg -i '{folder}/{file}' {ffmpeg_params} -compression_level {comp_level} "
f"'{target_folder}/{os.path.splitext(file)[0]}.{get_req_ext(file)}'")
else:
printer.warning(f"{file} has transparency, but WebP RGBA disabled in config. Changing to png...")
printer.files(file, os.path.splitext(file)[0], "png", f"{comp_level}%")
os.system(f"ffmpeg -i '{folder}/{file}' {ffmpeg_params} -compression_level {comp_level} "
f"'{target_folder}/{os.path.splitext(file)[0]}.png'")
else:
printer.files(file, os.path.splitext(file)[0], get_req_ext(file), f"{comp_level}%")
os.system(f"ffmpeg -i '{folder}/{file}' {ffmpeg_params} -compression_level {comp_level} "