fix default values for streamdetails
authorMarcel van der Veldt <m.vanderveldt@outlook.com>
Thu, 7 Apr 2022 09:01:09 +0000 (11:01 +0200)
committerMarcel van der Veldt <m.vanderveldt@outlook.com>
Thu, 7 Apr 2022 09:01:09 +0000 (11:01 +0200)
music_assistant/models/media_items.py

index 7c823c8318336fbedb7604f8c8783976d51345e8..8bd307dec35d481a14ce5e77a250d76356a46e39 100755 (executable)
@@ -20,6 +20,11 @@ class MediaType(Enum):
     RADIO = "radio"
     UNKNOWN = "unknown"
 
+    @classmethod
+    def _missing_(cls: "MediaType", value: str):
+        """Set default enum member if an unknown value is provided."""
+        return cls.UNKNOWN
+
 
 class MediaQuality(IntEnum):
     """Enum for Media Quality."""
@@ -34,6 +39,11 @@ class MediaQuality(IntEnum):
     FLAC_LOSSLESS_HI_RES_4 = 10  # above 192khz 24 bits HI-RES
     UNKNOWN = 99
 
+    @classmethod
+    def _missing_(cls: "MediaQuality", value: str):
+        """Set default enum member if an unknown value is provided."""
+        return cls.UNKNOWN
+
 
 @dataclass
 class MediaItemProviderId(DataClassDictMixin):
@@ -293,8 +303,8 @@ class StreamDetails(DataClassDictMixin):
     seconds_played: int = 0
     gain_correct: float = 0
     loudness: Optional[float] = None
-    sample_rate: Optional[int] = None
-    bit_depth: Optional[int] = None
+    sample_rate: int = 44100
+    bit_depth: int = 16
     channels: int = 2
     media_type: MediaType = MediaType.TRACK
     queue_id: str = None