Create new cipher on invalid playback url (#714)
authorMarvin Schenkel <marvinschenkel@gmail.com>
Wed, 14 Jun 2023 21:14:49 +0000 (23:14 +0200)
committerGitHub <noreply@github.com>
Wed, 14 Jun 2023 21:14:49 +0000 (23:14 +0200)
music_assistant/server/providers/ytmusic/__init__.py

index a13693cb11015e7e71326cf3525c6775cc13a8b7..d8012355810e42bc14b0df916e2345abf3f1bbb9 100644 (file)
@@ -493,6 +493,7 @@ class YoutubeMusicProvider(MusicProvider):
                 "Invalid playback URL encountered. Retrying with new signature timestamp."
             )
             self._signature_timestamp = await self._get_signature_timestamp()
+            self._cipher = None
             return await self.get_stream_details(item_id=item_id, retry=False)
         stream_details = StreamDetails(
             provider=self.instance_id,
@@ -779,6 +780,7 @@ class YoutubeMusicProvider(MusicProvider):
             return cipher
 
         if not self._cipher:
+            self.logger.debug("Creating a new cipher")
             self._cipher = await asyncio.to_thread(_decipher)
         return self._cipher.get_signature(ciphered_signature)