fix spotify on alpine (musl) platforms (#267)
authorMarcel van der Veldt <m.vanderveldt@outlook.com>
Mon, 25 Apr 2022 23:28:18 +0000 (01:28 +0200)
committerGitHub <noreply@github.com>
Mon, 25 Apr 2022 23:28:18 +0000 (01:28 +0200)
music_assistant/providers/spotify/__init__.py
music_assistant/providers/spotify/spotty/linux/spotty-aarch64
music_assistant/providers/spotify/spotty/linux/spotty-arm [new file with mode: 0755]
music_assistant/providers/spotify/spotty/linux/spotty-armhf
music_assistant/providers/spotify/spotty/linux/spotty-armv6 [deleted file]
music_assistant/providers/spotify/spotty/linux/spotty-armv7 [new file with mode: 0755]
music_assistant/providers/spotify/spotty/linux/spotty-i386 [deleted file]
music_assistant/providers/spotify/spotty/linux/spotty-muslhf [deleted file]
music_assistant/providers/spotify/spotty/linux/spotty-x86_64

index 9220f59f9b86888b8695dead871e680e3818523e..fda1133965efea5d8d5dc3e4079166afbb16a211 100644 (file)
@@ -267,13 +267,13 @@ class SpotifyProvider(MusicProvider):
         # make sure that the token is still valid by just requesting it
         await self.get_token()
         spotty = await self.get_spotty_binary()
-        spotty_exec = f'{spotty} -n temp -c "/tmp" -b 320 --single-track spotify://track:{track.item_id}'
+        spotty_exec = f'{spotty} -n temp -c "/tmp" -b 320 --single-track --pass-through spotify://track:{track.item_id}'
         return StreamDetails(
             type=StreamType.EXECUTABLE,
             item_id=track.item_id,
             provider=self.id,
             path=spotty_exec,
-            content_type=ContentType.PCM_S16LE,
+            content_type=ContentType.OGG,
             sample_rate=44100,
             bit_depth=16,
         )
@@ -595,13 +595,9 @@ class SpotifyProvider(MusicProvider):
                 return os.path.join(
                     os.path.dirname(__file__), "spotty", "linux", "spotty-x86_64"
                 )
-            if "i386" in architecture:
-                # i386 linux binary
-                return os.path.join(
-                    os.path.dirname(__file__), "spotty", "linux", "spotty-i386"
-                )
+
             # arm architecture... try all options one by one...
-            for arch in ["aarch64", "armhf", "muslhf", "armv6"]:
+            for arch in ["aarch64", "armv7", "armhf", "arm"]:
                 spotty_path = os.path.join(
                     os.path.dirname(__file__), "spotty", "linux", f"spotty-{arch}"
                 )
index 6ac6e0e82cbacb60f70378272631856b9d7b5f8f..5359098f6dab28cdfa35301702f33a384694c08d 100755 (executable)
Binary files a/music_assistant/providers/spotify/spotty/linux/spotty-aarch64 and b/music_assistant/providers/spotify/spotty/linux/spotty-aarch64 differ
diff --git a/music_assistant/providers/spotify/spotty/linux/spotty-arm b/music_assistant/providers/spotify/spotty/linux/spotty-arm
new file mode 100755 (executable)
index 0000000..5cd38c7
Binary files /dev/null and b/music_assistant/providers/spotify/spotty/linux/spotty-arm differ
index a6ee21c12e0dc0e30bedbe8edb6f6c15fc0fd8f5..18c2e05b45c606dd31dd323a4f149cd5dd9020df 100755 (executable)
Binary files a/music_assistant/providers/spotify/spotty/linux/spotty-armhf and b/music_assistant/providers/spotify/spotty/linux/spotty-armhf differ
diff --git a/music_assistant/providers/spotify/spotty/linux/spotty-armv6 b/music_assistant/providers/spotify/spotty/linux/spotty-armv6
deleted file mode 100755 (executable)
index bee2f66..0000000
Binary files a/music_assistant/providers/spotify/spotty/linux/spotty-armv6 and /dev/null differ
diff --git a/music_assistant/providers/spotify/spotty/linux/spotty-armv7 b/music_assistant/providers/spotify/spotty/linux/spotty-armv7
new file mode 100755 (executable)
index 0000000..0a792b2
Binary files /dev/null and b/music_assistant/providers/spotify/spotty/linux/spotty-armv7 differ
diff --git a/music_assistant/providers/spotify/spotty/linux/spotty-i386 b/music_assistant/providers/spotify/spotty/linux/spotty-i386
deleted file mode 100755 (executable)
index dd09cb5..0000000
Binary files a/music_assistant/providers/spotify/spotty/linux/spotty-i386 and /dev/null differ
diff --git a/music_assistant/providers/spotify/spotty/linux/spotty-muslhf b/music_assistant/providers/spotify/spotty/linux/spotty-muslhf
deleted file mode 100755 (executable)
index c172724..0000000
Binary files a/music_assistant/providers/spotify/spotty/linux/spotty-muslhf and /dev/null differ
index b9f44ec08410c445d3c4015344462a442ddad654..e025abdb92b98be527faf675483fe644d77c35ff 100755 (executable)
Binary files a/music_assistant/providers/spotify/spotty/linux/spotty-x86_64 and b/music_assistant/providers/spotify/spotty/linux/spotty-x86_64 differ