PKCE login is no longer required for HI_RES_LOSSLESS. Fixes #153

This commit is contained in:
Robert Honz
2024-11-09 17:33:21 +01:00
parent e4578cf257
commit 3bd66d6035
2 changed files with 2 additions and 14 deletions
+1 -6
View File
@@ -113,13 +113,8 @@ class Tidal(BaseConfig, metaclass=SingletonMeta):
return True
def login_token(self, do_pkce: bool = True) -> bool:
def login_token(self, do_pkce: bool = False) -> bool:
result = False
# Do not login via PKCE, if HiRes LOSSLESS is not set as global audio quality.
if self.session.audio_quality != tidalapi.media.Quality.hi_res_lossless:
do_pkce = False
self.is_pkce = do_pkce
if self.token_from_storage:
+1 -8
View File
@@ -15,7 +15,7 @@ from rich.progress import Progress, TaskID
from tidalapi import Album, Mix, Playlist, Session, Track, UserPlaylist, Video
from tidalapi.media import AudioExtensions, Codec, Quality, StreamManifest, VideoExtensions
from tidal_dl_ng.config import Settings, Tidal
from tidal_dl_ng.config import Settings
from tidal_dl_ng.constants import EXTENSION_LYRICS, REQUESTS_TIMEOUT_SEC, MediaType, QualityVideo, SkipExisting
from tidal_dl_ng.helper.decryption import decrypt_file, decrypt_security_token
from tidal_dl_ng.helper.exceptions import MediaMissing
@@ -307,13 +307,6 @@ class Download:
# Save original quality settings
quality_old: Quality = self.session.audio_quality
self.session.audio_quality = quality
tidal: Tidal = Tidal()
# If track is not requested as hires_lossless do not use PKCE, because BTS downloads are faster than MPD.
if quality == Quality.hi_res_lossless and not tidal.is_pkce:
tidal.login_token(do_pkce=True)
elif quality != Quality.hi_res_lossless and tidal.is_pkce:
tidal.login_token(do_pkce=False)
return quality_old