From 1e50eccf69850354e0f64001d3bc48b105c7f211 Mon Sep 17 00:00:00 2001 From: c-hoffmann <105429299+c-hoffmann@users.noreply.github.com> Date: Tue, 4 Feb 2025 21:33:50 +0100 Subject: [PATCH] Add resolution, codec, and source fields to Metadata dataclass and update renaming logic --- mnamer/metadata.py | 6 ++++++ mnamer/target.py | 3 +++ 2 files changed, 9 insertions(+) diff --git a/mnamer/metadata.py b/mnamer/metadata.py index df43382a..357788ce 100644 --- a/mnamer/metadata.py +++ b/mnamer/metadata.py @@ -44,6 +44,9 @@ class Metadata: language_sub: Language | None = None quality: str | None = None synopsis: str | None = None + resolution: str | None = None + video_codec: str | None = None + source: str | None = None @classmethod def to_media_type(cls) -> MediaType: @@ -63,6 +66,9 @@ def __setattr__(self, key: str, value: Any): "media": MediaType, "quality": str.lower, "synopsis": str.capitalize, + "resolution": str.lower, + "video_codec": str.lower, + "source": str.lower, } converter: Callable | None = converter_map.get(key) if value is not None and converter: diff --git a/mnamer/target.py b/mnamer/target.py index cd9927e2..95a6b258 100644 --- a/mnamer/target.py +++ b/mnamer/target.py @@ -167,6 +167,9 @@ def _parse(self, file_path: Path): self.metadata.language = path_data.get("language") self.metadata.group = path_data.get("release_group") self.metadata.container = file_path.suffix or None + self.metadata.resolution = path_data.get("screen_size") + self.metadata.video_codec = path_data.get("video_codec") + self.metadata.source = path_data.get("source") if not self.metadata.language: try: self.metadata.language = path_data.get("language")