get a much smaller version of the cover art
This commit is contained in:
1 parent
ab94a8a9ee
commit
200ef9b1e7
2 files changed
+9
-4
No files matched your search
@@ -314,23 +314,29 @@ class SubpyConn:
|
|||||||
return requests.get(url + self._encodePayload(payload), stream=True)
|
return requests.get(url + self._encodePayload(payload), stream=True)
|
||||||
|
|
||||||
# Saves cover art id
|
# Saves cover art id
|
||||||
def getCoverArt(self, cover_art_id: str, path: str | None = None) -> None:
|
def getCoverArt(self, cover_art_id: str, size: int | None = None, path: str | None = None) -> None:
|
||||||
url = self.base_url + '/rest/getCoverArt?'
|
url = self.base_url + '/rest/getCoverArt?'
|
||||||
|
|
||||||
payload = self._getBasePayload()
|
payload = self._getBasePayload()
|
||||||
payload['id'] = cover_art_id
|
payload['id'] = cover_art_id
|
||||||
|
|
||||||
|
if size:
|
||||||
|
payload['size'] = size
|
||||||
|
|
||||||
r = requests.get(url + self._encodePayload(payload))
|
r = requests.get(url + self._encodePayload(payload))
|
||||||
|
|
||||||
with open(path if path else 'cover.png', 'wb') as file:
|
with open(path if path else 'cover.png', 'wb') as file:
|
||||||
file.write(r.content)
|
file.write(r.content)
|
||||||
|
|
||||||
def getCoverArtRaw(self, cover_art_id: str) -> bytes:
|
def getCoverArtRaw(self, cover_art_id: str, size: int | None = None) -> bytes:
|
||||||
url = self.base_url + '/rest/getCoverArt?'
|
url = self.base_url + '/rest/getCoverArt?'
|
||||||
|
|
||||||
payload = self._getBasePayload()
|
payload = self._getBasePayload()
|
||||||
payload['id'] = cover_art_id
|
payload['id'] = cover_art_id
|
||||||
|
|
||||||
|
if size:
|
||||||
|
payload['size'] = size
|
||||||
|
|
||||||
r = requests.get(url + self._encodePayload(payload))
|
r = requests.get(url + self._encodePayload(payload))
|
||||||
|
|
||||||
return r.content
|
return r.content
|
||||||
|
|||||||
+1
-2
@@ -328,7 +328,6 @@ class Favourites(Screen):
|
|||||||
app.song_queue = q
|
app.song_queue = q
|
||||||
app.update_queue_table()
|
app.update_queue_table()
|
||||||
|
|
||||||
# TODO fix coverart
|
|
||||||
class CoverArtPixels(Container):
|
class CoverArtPixels(Container):
|
||||||
|
|
||||||
cover = reactive[Image.Image | None](None)
|
cover = reactive[Image.Image | None](None)
|
||||||
@@ -362,7 +361,7 @@ class CoverArtPixels(Container):
|
|||||||
|
|
||||||
if image is None:
|
if image is None:
|
||||||
try:
|
try:
|
||||||
cover_art_data = conn.getCoverArtRaw(cover_art_id)
|
cover_art_data = conn.getCoverArtRaw(cover_art_id, size=300)
|
||||||
image = Image.open(io.BytesIO(cover_art_data))
|
image = Image.open(io.BytesIO(cover_art_data))
|
||||||
if CACHE:
|
if CACHE:
|
||||||
try:
|
try:
|
||||||
|
|||||||
Reference in new issue
Block a user