Googolplexed0
5882f28213
fix parsing, metadata now returns correctly
...
fix https://github.com/kokarare1212/librespot-python/issues/321
unfortunately, now AudioKeyManager.get_audio_key() no longer works
2025-11-09 16:09:38 -06:00
Sausa
a403f3eb9a
Keep consistent dict type
2025-11-09 16:42:44 +00:00
Sausa
778d8a2b5a
Fix 400 errors
2025-11-09 16:25:34 +00:00
Googolplexed0
9481c1c841
have get_metadata_4_track() call new get_ext_metadata()
...
TODO: parsing a successful response
always returns a 400 response
2025-11-09 03:48:48 -06:00
Googolplexed0
e0070925e2
change all request.headers from dicts to CaseInsensitiveDicts
2025-10-19 17:00:58 -05:00
dakba
e909cfdc76
feat: add FLAC lossless format support and refactor quality pickers (while staying backward compatible)
...
- Add `FLAC_FLAC` (16), `FLAC_FLAC_24BIT` (22) format codes (based on librespot-org/librespot#796 , librespot-org/librespot#1424 )
- Regenerate Metadata_pb2.py with protoc 3.20.1
- Add enums: `SuperAudioFormat.FLAC`, `AudioQuality.LOSSLESS`
- Refactor to generic DRY `FormatOnlyAudioQuality` base class while maintaining existing `VorbisOnlyAudioQuality` as wrapper
- Remove `AAC_24_NORM` (replaced by `FLAC_FLAC` at code 16)
2025-10-10 20:08:41 -04:00
dakba
ee2c1107f6
fix(audio/decoders): use audio_format in unknown-format error
...
- Bug existed since #8
- Resurfaced while adding FLAC
2025-10-10 19:48:08 -04:00
Daniel Moen
87171a3d29
Support Rust librespot credential format in stored_file()
...
Adds fallback logic to load credentials from Rust librespot's OAuth flow.
The stored_file() method now handles both Python and Rust credential formats.
Related to #277
2025-09-30 18:42:33 +02:00
DraftKinner
2c1721205c
Extend use of spclient.wg.spotify.com for album, artist, and show metadata requests
2025-08-24 19:52:27 -04:00
Googolplexed0
5d0784e1c9
rename Identifiers_pb2 to fix https://github.com/Googolplexed0/zotify/issues/58
2025-08-21 20:26:20 -05:00
Googolplexed0
9a7776667f
move all login5 logic into TokenProvider
...
allow for login5 refresh after expiration
2025-08-20 22:36:19 -05:00
Googolplexed0
afc993f047
use login5 authentication instead of keymaster
...
fixes #306
2025-08-16 22:19:36 -05:00
Matthias Fischer
336fa9acc6
fix: always use spclient.wg.spotify.com for metadata requests
2025-08-06 22:46:25 +02:00
Googolplexed
4f796e640c
Accept Incorrectly Capitalized Content-Range Headers
...
Some external podcast urls return a valid CDN response, which is not accepted due to the "Content-Range" header being all lowercase as "content-range". This tries the lowercase version of the header as a backup if no Content-Range header is found initially.
2025-07-28 18:51:10 -05:00
werwolf2303
53d51156e9
Change method description
2025-06-11 11:42:07 +02:00
werwolf2303
22e6419bc9
Readme and implementation changes
...
Added optional auth url callback
Removed user pass from readme
Added oauth to readme
2025-06-11 11:30:52 +02:00
werwolf2303
f210850bee
Implement oauth support
2025-06-10 21:43:03 +02:00
Christian Vanderwall
a5db002f00
Fix issue with closing session ( #200 )
...
I was getting the following error after calling Session.close():
```
Exception in thread session-packet-receiver:
Traceback (most recent call last):
File "librespot-python/librespot/crypto.py", line 58, in receive_encoded
header_bytes = self.__receive_cipher.decrypt(connection.read(3))
~~~~~~~~~~~~~~~^^^
File "librespot-python/librespot/core.py", line 1889, in read
return self.__socket.recv(length)
~~~~~~~~~~~~~~~~~~^^^^^^^^
OSError: [Errno 9] Bad file descriptor
```
Adding `OSError` to the try/except in `CipherPair.receive_encoded` fixes this issue, making
`CipherPair` raise a `RuntimeError` instead, which is properly handled by `Receiver`.
2025-03-31 14:58:38 -07:00
碧舞すみほ
f28b51b6e6
fix #267
2024-04-21 09:56:52 +09:00
Liam Harper
7f78bb34d4
Update __init__.py
2023-11-11 21:52:07 +00:00
碧舞すみほ
2bef6c4a5d
Update __init__.py
2023-10-28 22:22:44 +09:00
kokarare1212
c8f9026970
fix certificate error
2023-10-28 18:47:44 +09:00
kokarare1212
f97b6b2fe1
add new cdn parsing
2023-10-22 10:41:41 +09:00
Restyled.io
ecd0006874
Restyled by yapf
2023-09-05 09:21:40 +02:00
Restyled.io
12621ef31c
Restyled by whitespace
2023-09-05 09:21:40 +02:00
Restyled.io
907634a754
Restyled by reorder-python-imports
2023-09-05 09:21:40 +02:00
Restyled.io
616183a6ca
Restyled by pyment
2023-09-05 09:21:40 +02:00
Restyled.io
4241ecb3ab
Restyled by isort
2023-09-05 09:21:40 +02:00
Restyled.io
4a6b43ef33
Restyled by black
2023-09-05 09:21:40 +02:00
Restyled.io
20501cdd58
Restyled by autopep8
2023-09-05 09:21:40 +02:00
d.rathmer
04165151d7
fix(apresolve): Better semantics on error
2023-09-05 09:20:43 +02:00
kokarare1212
b57a139fda
add ApResolve exception(s)
2023-08-30 08:55:19 +09:00
kokarare1212
d86d5fee6c
#195 Add stored function
2023-05-21 18:55:13 +09:00
kokarare1212
4401fa924d
Bump version
2023-05-17 06:58:32 +09:00
kokarare1212
9530377a9d
Bump client version
2023-05-17 06:57:58 +09:00
kokarare1212
476d53876c
bump version
2023-04-13 21:08:37 +09:00
kokarare1212
622483655c
Handle ConnectionResetError
2023-04-13 07:01:17 +09:00
kokarare1212
4b768f7c71
#172 Fix album request
2023-01-03 10:22:23 +09:00
kokarare1212
e65f7fc691
#173 Implement PlaylistId
2023-01-03 10:16:51 +09:00
tarak
b455de1477
Update metadata.py
2023-01-02 16:33:02 -05:00
kokarare1212
b6cf657791
Update version
2022-11-10 07:12:05 +09:00
kokarare1212
0db444f3bd
#158 ignore BrokenPipe
2022-10-21 07:11:44 +09:00
kokarare1212
14f93dad41
Update version
2022-08-31 06:33:39 +09:00
kokarare1212
a2d631815a
#148 Change locking method
2022-08-19 08:58:08 +09:00
kokarare1212
30a8c07300
#141 Release buffer
2022-07-21 19:31:41 +09:00
kokarare1212
0a682993c8
#139 fix base62 issue
2022-07-12 07:42:25 +09:00
kokarare1212
560c5000a8
#135 Set HTTP header
2022-06-29 06:47:04 +09:00
kokarare1212
b28e684e97
#135 Add ClientToken support
2022-06-28 20:55:10 +09:00
deepsource-autofix[bot]
f5ca0f4d6d
Format code with yapf
...
This commit fixes the style issues introduced in 287fbbc according to the output
from yapf.
Details: https://deepsource.io/gh/kokarare1212/librespot-python/transform/84617c1e-f44f-4f57-8da5-04836eaee6a0/
2022-03-10 11:00:51 +00:00
yeralin
90c35b450a
Check availability before conditionals
2022-03-09 23:50:09 -05:00