🛠️ Fixed .get_stream() not available for videos. Fixes #267

This commit is contained in:
Robert Honz
2024-12-13 10:14:41 +01:00
parent fb5022a0df
commit 80419c727e
+6 -4
View File
@@ -98,8 +98,8 @@ class Download:
def _download( def _download(
self, self,
media: Track | Video, media: Track | Video,
stream_manifest: StreamManifest,
path_file: pathlib.Path, path_file: pathlib.Path,
stream_manifest: StreamManifest | None = None,
) -> (bool, pathlib.Path): ) -> (bool, pathlib.Path):
media_name: str = name_builder_item(media) media_name: str = name_builder_item(media)
urls: [str] urls: [str]
@@ -325,9 +325,12 @@ class Download:
self.adjust_quality_video(quality_video) if quality_video else quality_video self.adjust_quality_video(quality_video) if quality_video else quality_video
) )
stream_manifest: StreamManifest | None = None
if isinstance(media, Track):
try: try:
media_stream: Stream = media.get_stream() media_stream: Stream = media.get_stream()
stream_manifest: StreamManifest = media_stream.get_stream_manifest() stream_manifest = media_stream.get_stream_manifest()
except TooManyRequests: except TooManyRequests:
self.fn_logger.exception( self.fn_logger.exception(
f"Too many requests against TIDAL backend. Skipping '{name_builder_item(media)}'. " f"Too many requests against TIDAL backend. Skipping '{name_builder_item(media)}'. "
@@ -340,8 +343,7 @@ class Download:
return False, "" return False, ""
if isinstance(media, Track): file_extension = stream_manifest.file_extension
file_extension = media_stream.get_stream_manifest().file_extension
if self.settings.data.extract_flac and ( if self.settings.data.extract_flac and (
stream_manifest.codecs.upper() == Codec.FLAC and file_extension != AudioExtensions.FLAC stream_manifest.codecs.upper() == Codec.FLAC and file_extension != AudioExtensions.FLAC