Compare commits
6 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 2306b1f8d2 | |||
| 1b0d67702d | |||
| 00e369677f | |||
| c3e1607ca6 | |||
| 59428e7679 | |||
| 33c4698286 |
@@ -6,7 +6,7 @@
|
||||
<b>SpotiFLAC</b> allows you to download Spotify tracks in true FLAC format through services like Tidal, Amazon Music, and Deezer <code>(via Lucida)</code>, as well as Qobuz <code>(via SquidWTF)</code>.
|
||||
</div>
|
||||
|
||||
### [Download](https://github.com/afkarxyz/SpotiFLAC/releases/download/v2.9/SpotiFLAC.exe)
|
||||
### [Download](https://github.com/afkarxyz/SpotiFLAC/releases/download/v3.2/SpotiFLAC.exe)
|
||||
|
||||
#
|
||||
|
||||
|
||||
+3
-3
@@ -324,7 +324,7 @@ class TidalStatusChecker(QThread):
|
||||
|
||||
def run(self):
|
||||
try:
|
||||
response = requests.get("https://tidal.401658.xyz", timeout=5)
|
||||
response = requests.get("https://hifi.401658.xyz", timeout=5)
|
||||
is_online = response.status_code == 200
|
||||
self.status_updated.emit(is_online)
|
||||
except Exception as e:
|
||||
@@ -550,7 +550,7 @@ class QobuzRegionComboBox(QComboBox):
|
||||
class SpotiFLACGUI(QWidget):
|
||||
def __init__(self):
|
||||
super().__init__()
|
||||
self.current_version = "3.0"
|
||||
self.current_version = "3.3"
|
||||
self.tracks = []
|
||||
self.reset_state()
|
||||
|
||||
@@ -995,7 +995,7 @@ class SpotiFLACGUI(QWidget):
|
||||
spacer = QSpacerItem(20, 6, QSizePolicy.Policy.Minimum, QSizePolicy.Policy.Fixed)
|
||||
about_layout.addItem(spacer)
|
||||
|
||||
footer_label = QLabel("v3.0 | May 2025")
|
||||
footer_label = QLabel("v3.3 | June 2025")
|
||||
footer_label.setStyleSheet("font-size: 12px; margin-top: 10px;")
|
||||
about_layout.addWidget(footer_label, alignment=Qt.AlignmentFlag.AlignCenter)
|
||||
|
||||
|
||||
+1
-1
@@ -32,7 +32,7 @@ def generate_totp(
|
||||
counter * 30_000,
|
||||
)
|
||||
|
||||
token_url = 'https://open.spotify.com/get_access_token'
|
||||
token_url = 'https://open.spotify.com/api/token'
|
||||
playlist_base_url = 'https://api.spotify.com/v1/playlists/{}'
|
||||
album_base_url = 'https://api.spotify.com/v1/albums/{}'
|
||||
track_base_url = 'https://api.spotify.com/v1/tracks/{}'
|
||||
|
||||
+5
-3
@@ -352,7 +352,9 @@ class SquidWTFDownloader:
|
||||
items = data.get("data", {}).get("tracks", {}).get("items", [])
|
||||
priority = {24: 1, 16: 2}
|
||||
for track in items:
|
||||
if track.get("isrc") == isrc:
|
||||
track_isrc = track.get("isrc", "").upper()
|
||||
search_isrc = isrc.upper()
|
||||
if track_isrc == search_isrc:
|
||||
current_prio = priority.get(track.get("maximum_bit_depth"), 3)
|
||||
if selected_track is None or current_prio < priority.get(selected_track.get("maximum_bit_depth"), 3):
|
||||
selected_track = track
|
||||
@@ -646,7 +648,7 @@ class TidalDownloader:
|
||||
return result
|
||||
|
||||
if isrc:
|
||||
isrc_items = [item for item in result["items"] if item.get("isrc") == isrc]
|
||||
isrc_items = [item for item in result["items"] if item.get("isrc", "").upper() == isrc.upper()]
|
||||
|
||||
if len(isrc_items) > 1:
|
||||
hires_items = []
|
||||
@@ -672,7 +674,7 @@ class TidalDownloader:
|
||||
|
||||
async def get_track_download_info(self, track_id, quality="LOSSLESS"):
|
||||
try:
|
||||
download_api_url = f"https://tidal.401658.xyz/track/?id={track_id}&quality={quality}"
|
||||
download_api_url = f"https://hifi.401658.xyz/track/?id={track_id}&quality={quality}"
|
||||
|
||||
async with httpx.AsyncClient(http2=True, timeout=self.timeout) as client:
|
||||
response = await client.get(download_api_url)
|
||||
|
||||
+1
-1
@@ -1,3 +1,3 @@
|
||||
{
|
||||
"version": "2.9"
|
||||
"version": "3.2"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user