From 087176edaeba1f044560c86c6f53892c04c691f0 Mon Sep 17 00:00:00 2001 From: Travis Abendshien Date: Thu, 13 Jun 2024 16:35:23 -0700 Subject: [PATCH] Add ".psd" to IMAGE_TYPES; Handle ID3NoHeaderError --- tagstudio/src/core/constants.py | 1 + tagstudio/src/qt/widgets/item_thumb.py | 2 +- tagstudio/src/qt/widgets/thumb_renderer.py | 6 +++++- 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/tagstudio/src/core/constants.py b/tagstudio/src/core/constants.py index c985a44d..1224d353 100644 --- a/tagstudio/src/core/constants.py +++ b/tagstudio/src/core/constants.py @@ -33,6 +33,7 @@ IMAGE_TYPES: list[str] = [ ".jp2", ".j2k", ".jpg2", + ".psd", ] RAW_IMAGE_TYPES: list[str] = [ ".raw", diff --git a/tagstudio/src/qt/widgets/item_thumb.py b/tagstudio/src/qt/widgets/item_thumb.py index 0adcb644..3822d135 100644 --- a/tagstudio/src/qt/widgets/item_thumb.py +++ b/tagstudio/src/qt/widgets/item_thumb.py @@ -358,7 +358,7 @@ class ItemThumb(FlowWidget): def set_extension(self, ext: str) -> None: if ext and ext.startswith(".") is False: ext = "." + ext - if ext and ext not in IMAGE_TYPES or ext in [".gif", ".apng"]: + if ext and ext not in IMAGE_TYPES or ext in [".gif", ".apng", ".psd"]: self.ext_badge.setHidden(False) self.ext_badge.setText(ext.upper()[1:]) if ext in VIDEO_TYPES + AUDIO_TYPES: diff --git a/tagstudio/src/qt/widgets/thumb_renderer.py b/tagstudio/src/qt/widgets/thumb_renderer.py index c01a5a16..8ed74948 100644 --- a/tagstudio/src/qt/widgets/thumb_renderer.py +++ b/tagstudio/src/qt/widgets/thumb_renderer.py @@ -259,7 +259,11 @@ class ThumbRenderer(QObject): artwork = Image.open(BytesIO(mp4_covers[0])) if artwork: image = artwork - except (mp4.MP4MetadataError, mp4.MP4StreamInfoError) as e: + except ( + mp4.MP4MetadataError, + mp4.MP4StreamInfoError, + id3.ID3NoHeaderError, + ) as e: logging.error( f"[ThumbRenderer]{ERROR}: Couldn't read album artwork for {_filepath.name} ({type(e).__name__})" )