another commit without a list of specific changes! (misc)

This commit is contained in:
2025-08-21 15:06:56 -04:00
parent e0f64f6773
commit 22eaa2260e
3 changed files with 125 additions and 83 deletions

View File

@@ -4,7 +4,6 @@ from urllib.parse import urlparse
import hashlib
import logging
import os
import asyncio
import aiohttp
from streamrip.client import TidalClient # type: ignore
from streamrip.config import Config as StreamripConfig # type: ignore
@@ -135,7 +134,8 @@ class SRUtil:
logging.debug("Retrieved albums: %s", albums_out)
return albums_out
async def get_tracks_by_album_id(self, album_id: int) -> Optional[list | dict]:
async def get_tracks_by_album_id(self, album_id: int,
quality: str = "FLAC") -> Optional[list | dict]:
"""Get tracks by album ID
Args:
album_id (int): The ID of the album.
@@ -177,7 +177,7 @@ class SRUtil:
return []
async def get_stream_url_by_track_id(
self, track_id: int, quality: str = "LOSSLESS"
self, track_id: int, quality: str = "FLAC"
) -> Optional[str]:
"""Get stream URL by track ID
Args:
@@ -186,19 +186,21 @@ class SRUtil:
Returns:
Optional[str]: The stream URL or None if not found.
"""
if quality not in ["LOSSLESS", "HIGH", "LOW"]:
if quality not in ["FLAC", "Lossy"]:
logging.error("Invalid quality requested: %s", quality)
return None
quality_int: int = int(self.streamrip_config.session.tidal.quality)
match quality:
case "HIGH":
case "FLAC":
quality_int = 2
case "Lossy":
quality_int = 1
case "LOW":
quality_int = 0
track_id_str: str = str(track_id)
await self.streamrip_client.login()
try:
logging.critical("Using quality_int: %s", quality_int)
track = await self.streamrip_client.get_downloadable(
track_id=track_id_str, quality=quality_int
)