diff --git a/VERSION b/VERSION index 425e9d46..31d06f54 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.19.0-develop105 +1.19.0-develop106 diff --git a/defaults/overlays/images/resolution/1080pdvhdr.png b/defaults/overlays/images/resolution/1080pdvhdr.png new file mode 100644 index 00000000..864e63f0 Binary files /dev/null and b/defaults/overlays/images/resolution/1080pdvhdr.png differ diff --git a/defaults/overlays/images/resolution/480pdvhdr.png b/defaults/overlays/images/resolution/480pdvhdr.png new file mode 100644 index 00000000..8fec2226 Binary files /dev/null and b/defaults/overlays/images/resolution/480pdvhdr.png differ diff --git a/defaults/overlays/images/resolution/4kdv_hdr_hybrid.png b/defaults/overlays/images/resolution/4kdv_hdr_hybrid.png deleted file mode 100644 index 99fd6275..00000000 Binary files a/defaults/overlays/images/resolution/4kdv_hdr_hybrid.png and /dev/null differ diff --git a/defaults/overlays/images/resolution/4kdvhdr.png b/defaults/overlays/images/resolution/4kdvhdr.png new file mode 100644 index 00000000..2ed3d1c0 Binary files /dev/null and b/defaults/overlays/images/resolution/4kdvhdr.png differ diff --git a/defaults/overlays/images/resolution/576pdvhdr.png b/defaults/overlays/images/resolution/576pdvhdr.png new file mode 100644 index 00000000..f0d8deee Binary files /dev/null and b/defaults/overlays/images/resolution/576pdvhdr.png differ diff --git a/defaults/overlays/images/resolution/720pdvhdr.png b/defaults/overlays/images/resolution/720pdvhdr.png new file mode 100644 index 00000000..6aee988c Binary files /dev/null and b/defaults/overlays/images/resolution/720pdvhdr.png differ diff --git a/defaults/overlays/resolution.yml b/defaults/overlays/resolution.yml index 774a5371..438233a9 100644 --- a/defaults/overlays/resolution.yml +++ b/defaults/overlays/resolution.yml @@ -20,22 +20,27 @@ external_templates: - 4K-DV - 4K-HDR - 4K + - 1080P-DV-HDR - 1080P-Plus - 1080P-DV - 1080P-HDR - 1080P + - 720P-DV-HDR - 720P-Plus - 720P-DV - 720P-HDR - 720P + - 576P-DV-HDR - 576P-Plus - 576P-DV - 576P-HDR - 576P + - 480P-DV-HDR - 480P-Plus - 480P-DV - 480P-HDR - 480P + - DV-HDR - Plus - DV - HDR @@ -198,13 +203,11 @@ templates: conditions: - alt: hdr value: true - plus: + regex: conditions: - alt: plus value: '(?i)\bhdr10(\+|p(lus)?\b)' - dolby_vision_hdr_hybrid: - conditions: - - alt: dv_hdr_hybrid + - alt: dvhdr value: '(?i)\bdv(\.hdr10?\b)' optional: - all @@ -229,16 +232,15 @@ templates: filters: has_dolby_vision: <> filepath.regex: - - <> - - <> + - <> overlays: 4K-DV-HDR-Dovetail: - variables: {key: 4k, alt: dv_hdr_hybrid, weight: 170, type: resolution_dovetail, allowed_libraries: movie} + variables: {key: 4k, alt: dvhdr, weight: 158, type: resolution_dovetail, allowed_libraries: movie} template: [name: resolution, name: standard] 4K-Plus-Dovetail: - variables: {key: 4k, alt: plus, weight: 160, type: resolution_dovetail, allowed_libraries: movie} + variables: {key: 4k, alt: plus, weight: 155, type: resolution_dovetail, allowed_libraries: movie} template: [name: resolution, name: standard] 4K-DV-Dovetail: variables: {key: 4k, alt: dv, weight: 150, type: resolution_dovetail, allowed_libraries: movie} @@ -249,6 +251,9 @@ overlays: 4K-Dovetail: variables: {key: 4k, alt: "", weight: 130, type: resolution_dovetail, allowed_libraries: movie} template: [name: resolution, name: standard] + 1080P-DV-HDR-Dovetail: + variables: {key: 1080p, alt: dvhdr, weight: 128, type: resolution_dovetail, allowed_libraries: movie} + template: [name: resolution, name: standard] 1080P-Plus-Dovetail: variables: {key: 1080p, alt: plus, weight: 125, type: resolution_dovetail, allowed_libraries: movie} template: [name: resolution, name: standard] @@ -261,6 +266,9 @@ overlays: 1080P-Dovetail: variables: {key: 1080p, alt: "", weight: 100, type: resolution_dovetail, allowed_libraries: movie} template: [name: resolution, name: standard] + 720P-DV-HDR-Dovetail: + variables: {key: 720p, alt: dvhdr, weight: 98, type: resolution_dovetail, allowed_libraries: movie} + template: [name: resolution, name: standard] 720P-Plus-Dovetail: variables: {key: 720p, alt: plus, weight: 95, type: resolution_dovetail, allowed_libraries: movie} template: [name: resolution, name: standard] @@ -273,6 +281,9 @@ overlays: 720P-Dovetail: variables: {key: 720p, alt: "", weight: 70, type: resolution_dovetail, allowed_libraries: movie} template: [name: resolution, name: standard] + 576P-DV-HDR-Dovetail: + variables: {key: 576p, alt: dvhdr, weight: 68, type: resolution_dovetail, allowed_libraries: movie} + template: [name: resolution, name: standard] 576P-Plus-Dovetail: variables: {key: 576p, alt: plus, weight: 65, type: resolution_dovetail, allowed_libraries: movie} template: [name: resolution, name: standard] @@ -285,6 +296,9 @@ overlays: 576P-Dovetail: variables: {key: 576p, alt: "", weight: 40, type: resolution_dovetail, allowed_libraries: movie} template: [name: resolution, name: standard] + 480P-DV-HDR-Dovetail: + variables: {key: 480p, alt: dvhdr, weight: 38, type: resolution_dovetail, allowed_libraries: movie} + template: [name: resolution, name: standard] 480P-Plus-Dovetail: variables: {key: 480p, alt: plus, weight: 35, type: resolution_dovetail, allowed_libraries: movie} template: [name: resolution, name: standard] @@ -297,6 +311,9 @@ overlays: 480P-Dovetail: variables: {key: 480p, alt: "", weight: 10, type: resolution_dovetail, allowed_libraries: movie} template: [name: resolution, name: standard] + DV-HDR-Dovetail: + variables: {key: "", alt: dvhdr, weight: 8, type: resolution_dovetail, all: true, allowed_libraries: movie} + template: [name: resolution, name: standard] Plus-Dovetail: variables: {key: "", alt: plus, weight: 7, type: resolution_dovetail, all: true, allowed_libraries: movie} template: [name: resolution, name: standard] @@ -378,10 +395,10 @@ overlays: template: [name: edition, name: standard] 4K-DV-HDR: - variables: {key: 4k, alt: dv_hdr_hybrid, weight: 170, type: resolution} + variables: {key: 4k, alt: dvhdr, weight: 158, type: resolution} template: [name: resolution, name: standard] 4K-Plus: - variables: {key: 4k, alt: plus, weight: 160, type: resolution} + variables: {key: 4k, alt: plus, weight: 155, type: resolution} template: [name: resolution, name: standard] 4K-DV: variables: {key: 4k, alt: dv, weight: 150, type: resolution} @@ -392,6 +409,9 @@ overlays: 4K: variables: {key: 4k, alt: "", weight: 130, type: resolution} template: [name: resolution, name: standard] + 1080P-DV-HDR: + variables: {key: 1080p, alt: dvhdr, weight: 128, type: resolution} + template: [name: resolution, name: standard] 1080P-Plus: variables: {key: 1080p, alt: plus, weight: 125, type: resolution} template: [name: resolution, name: standard] @@ -404,6 +424,9 @@ overlays: 1080P: variables: {key: 1080p, alt: "", weight: 100, type: resolution} template: [name: resolution, name: standard] + 720P-DV-HDR: + variables: {key: 720p, alt: dvhdr, weight: 98, type: resolution} + template: [name: resolution, name: standard] 720P-Plus: variables: {key: 720p, alt: plus, weight: 95, type: resolution} template: [name: resolution, name: standard] @@ -416,6 +439,9 @@ overlays: 720P: variables: {key: 720p, alt: "", weight: 70, type: resolution} template: [name: resolution, name: standard] + 576P-DV-HDR: + variables: {key: 576p, alt: dvhdr, weight: 68, type: resolution} + template: [name: resolution, name: standard] 576P-Plus: variables: {key: 576p, alt: plus, weight: 65, type: resolution} template: [name: resolution, name: standard] @@ -428,6 +454,9 @@ overlays: 576P: variables: {key: 576p, alt: "", weight: 40, type: resolution} template: [name: resolution, name: standard] + 480P-DV-HDR: + variables: {key: 480p, alt: dvhdr, weight: 38, type: resolution} + template: [name: resolution, name: standard] 480P-Plus: variables: {key: 480p, alt: plus, weight: 35, type: resolution} template: [name: resolution, name: standard] @@ -440,6 +469,9 @@ overlays: 480P: variables: {key: 480p, alt: "", weight: 10, type: resolution} template: [name: resolution, name: standard] + DV-HDR: + variables: {key: "", alt: dvhdr, weight: 8, type: resolution, all: true} + template: [name: resolution, name: standard] Plus: variables: {key: "", alt: plus, weight: 7, type: resolution, all: true} template: [name: resolution, name: standard] diff --git a/docs/defaults/overlays/resolution.md b/docs/defaults/overlays/resolution.md index 300a571c..8d931df5 100644 --- a/docs/defaults/overlays/resolution.md +++ b/docs/defaults/overlays/resolution.md @@ -12,32 +12,37 @@ Recommendations: Editions overlay is designed to use the Editions field within P ## Supported Resolutions -| Resolution | Key | Weight | -|:-------------|:-------------|:-------| -| 4K DV/HDR | `4k_dv_hdr_hybrid` | `170` | -| 4K HDR10+ | `4k_plus` | `160` | -| 4K DV | `4k_dv` | `150` | -| 4K HDR | `4k_hdr` | `140` | -| 4K | `4k` | `130` | -| 1080P HDR10+ | `1080p_plus` | `125` | -| 1080P DV | `1080p_dv` | `120` | -| 1080P HDR | `1080p_hdr` | `110` | -| 1080P | `1080p` | `100` | -| 720P HDR10+ | `720p_plus` | `95` | -| 720P DV | `720p_dv` | `90` | -| 720P HDR | `720p_hdr` | `80` | -| 720P | `720p` | `70` | -| 576P HDR10+ | `576p_plus` | `65` | -| 576P DV | `576p_dv` | `60` | -| 576P HDR | `576p_hdr` | `50` | -| 576P | `576p` | `40` | -| 480P HDR10+ | `480p_plus` | `35` | -| 480P DV | `480p_dv` | `30` | -| 480P HDR | `480p_hdr` | `20` | -| 480P | `480p` | `10` | -| HDR10+ | `plus` | `7` | -| DV | `dv` | `5` | -| HDR | `hdr` | `1` | +| Resolution | Key | Weight | +|:-------------|:--------------|:-------| +| 4K DV/HDR | `4k_dvhdr` | `158` | +| 4K HDR10+ | `4k_plus` | `155` | +| 4K DV | `4k_dv` | `150` | +| 4K HDR | `4k_hdr` | `140` | +| 4K | `4k` | `130` | +| 1080P DV/HDR | `1080p_dvhdr` | `128` | +| 1080P HDR10+ | `1080p_plus` | `125` | +| 1080P DV | `1080p_dv` | `120` | +| 1080P HDR | `1080p_hdr` | `110` | +| 1080P | `1080p` | `100` | +| 720P DV/HDR | `720p_dvhdr` | `98` | +| 720P HDR10+ | `720p_plus` | `95` | +| 720P DV | `720p_dv` | `90` | +| 720P HDR | `720p_hdr` | `80` | +| 720P | `720p` | `70` | +| 576P DV/HDR | `576p_dvhdr` | `68` | +| 576P HDR10+ | `576p_plus` | `65` | +| 576P DV | `576p_dv` | `60` | +| 576P HDR | `576p_hdr` | `50` | +| 576P | `576p` | `40` | +| 480P DV/HDR | `480p_dvhdr` | `38` | +| 480P HDR10+ | `480p_plus` | `35` | +| 480P DV | `480p_dv` | `30` | +| 480P HDR | `480p_hdr` | `20` | +| 480P | `480p` | `10` | +| DV/HDR | `dvhdr` | `8` | +| HDR10+ | `plus` | `7` | +| DV | `dv` | `5` | +| HDR | `hdr` | `1` | ## Supported Editions diff --git a/modules/builder.py b/modules/builder.py index e62b41ac..d2e405b3 100644 --- a/modules/builder.py +++ b/modules/builder.py @@ -1158,7 +1158,10 @@ class CollectionBuilder: if summary: self.summaries[method_name] = summary elif method_name == "trakt_description": - self.summaries[method_name] = self.config.Trakt.list_description(self.config.Trakt.validate_list(method_data)[0]) + try: + self.summaries[method_name] = self.config.Trakt.list_description(self.config.Trakt.validate_list(method_data)[0]) + except Failed as e: + logger.error(f"Trakt Error: List description not found: {e}") elif method_name == "letterboxd_description": self.summaries[method_name] = self.config.Letterboxd.get_list_description(method_data, self.language) elif method_name == "icheckmovies_description": @@ -1780,7 +1783,10 @@ class CollectionBuilder: for trakt_list in trakt_lists: self.builders.append(("trakt_list", trakt_list)) if method_name.endswith("_details"): - self.summaries[method_name] = self.config.Trakt.list_description(trakt_lists[0]) + try: + self.summaries[method_name] = self.config.Trakt.list_description(trakt_lists[0]) + except Failed as e: + logger.error(f"Trakt Error: List description not found: {e}") elif method_name == "trakt_boxoffice": if util.parse(self.Type, method_name, method_data, datatype="bool", default=False): self.builders.append((method_name, 10)) diff --git a/modules/trakt.py b/modules/trakt.py index f991ca80..e79d5663 100644 --- a/modules/trakt.py +++ b/modules/trakt.py @@ -252,7 +252,7 @@ class Trakt: try: return self._request(requests.utils.urlparse(data).path)["description"] except Failed: - raise Failed(f"Trakt Error: List {data} not found") + raise Failed(data) def _parse(self, items, typeless=False, item_type=None, trakt_ids=False, ignore_other=False): ids = [] diff --git a/requirements.txt b/requirements.txt index b8a17dcf..c9f79345 100644 --- a/requirements.txt +++ b/requirements.txt @@ -4,7 +4,7 @@ lxml==4.9.3 num2words==0.5.12 pathvalidate==3.1.0 pillow==10.0.0 -PlexAPI==4.15.0 +PlexAPI==4.15.1 psutil==5.9.5 python-dotenv==1.0.0 requests==2.31.0