if ITEM_KEY_OVERVIEW in current_jellyfin_album:\r
album.metadata.description = current_jellyfin_album[ITEM_KEY_OVERVIEW]\r
if ITEM_KEY_MUSICBRAINZ_RELEASE_GROUP in current_jellyfin_album[ITEM_KEY_PROVIDER_IDS]:\r
- musicbrainzid = current_jellyfin_album[ITEM_KEY_PROVIDER_IDS][\r
- ITEM_KEY_MUSICBRAINZ_RELEASE_GROUP\r
- ]\r
- if len(musicbrainzid.split("-")) == 5:\r
- album.mbid = musicbrainzid\r
+ try:\r
+ album.mbid = current_jellyfin_album[ITEM_KEY_PROVIDER_IDS][\r
+ ITEM_KEY_MUSICBRAINZ_RELEASE_GROUP\r
+ ]\r
+ except InvalidDataError as error:\r
+ self.logger.warning(\r
+ "Jellyfin has an invalid musicbrainz id for album %s",\r
+ album.name,\r
+ exc_info=error if self.logger.isEnabledFor(logging.DEBUG) else None,\r
+ )\r
if ITEM_KEY_SORT_NAME in current_jellyfin_album:\r
album.sort_name = current_jellyfin_album[ITEM_KEY_SORT_NAME]\r
if ITEM_KEY_ALBUM_ARTIST in current_jellyfin_album:\r
) # 10000000 ticks per millisecond\r
track.track_number = current_jellyfin_track.get(ITEM_KEY_INDEX_NUMBER, 99)\r
if ITEM_KEY_MUSICBRAINZ_TRACK in current_jellyfin_track[ITEM_KEY_PROVIDER_IDS]:\r
- track.mbid = current_jellyfin_track[ITEM_KEY_PROVIDER_IDS][ITEM_KEY_MUSICBRAINZ_TRACK]\r
+ track_mbid = current_jellyfin_track[ITEM_KEY_PROVIDER_IDS][ITEM_KEY_MUSICBRAINZ_TRACK]\r
+ try:\r
+ track.mbid = track_mbid\r
+ except InvalidDataError as error:\r
+ self.logger.warning(\r
+ "Jellyfin has an invalid musicbrainz id for track %s",\r
+ track.name,\r
+ exc_info=error if self.logger.isEnabledFor(logging.DEBUG) else None,\r
+ )\r
return track\r
\r
async def _parse_playlist(self, jellyfin_playlist: dict[str, Any]) -> Playlist:\r