From 21cdc2edba81fae1314d8c2caabe638d2222ece0 Mon Sep 17 00:00:00 2001 From: Rafael Moraes <50295204+glomatico@users.noreply.github.com> Date: Sat, 21 Sep 2024 04:46:18 -0300 Subject: [PATCH] fix alternative stream fetching --- votify/downloader.py | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/votify/downloader.py b/votify/downloader.py index 4b1de2c..4afae6f 100644 --- a/votify/downloader.py +++ b/votify/downloader.py @@ -15,17 +15,17 @@ from Crypto.Util import Counter from mutagen.flac import Picture from mutagen.oggvorbis import OggVorbis, OggVorbisHeaderError from PIL import Image +from yt_dlp import YoutubeDL + +from .constants import QUALITY_X_FORMAT_ID_MAPPING, VORBIS_TAGS_MAPPING +from .enums import DownloadMode, Quality +from .models import DownloadQueue, StreamInfo, UrlInfo from .playplay_pb2 import ( AUDIO_TRACK, Interactivity, PlayPlayLicenseRequest, PlayPlayLicenseResponse, ) -from yt_dlp import YoutubeDL - -from .constants import QUALITY_X_FORMAT_ID_MAPPING, VORBIS_TAGS_MAPPING -from .enums import DownloadMode, Quality -from .models import DownloadQueue, StreamInfo, UrlInfo from .spotify_api import SpotifyApi from .utils import check_response @@ -266,6 +266,8 @@ class Downloader: audio_files = audio_files or gid_metadata.get("alternative") if not audio_files: return stream_info + if audio_files[0].get("gid"): + audio_files = audio_files[0]["file"] quality, audio_file = self.get_audio_file(audio_files) if not audio_file: return stream_info