Home of the Squeezebox™ & Transporter® network music players.
Page 1 of 47 12311 ... LastLast
Results 1 to 10 of 464
  1. #1
    Babelfish's Best Boy mherger's Avatar
    Join Date
    Apr 2005
    Location
    Switzerland
    Posts
    19,760

    The Spotty Spotify implementation

    Please head over to the announcement thread for continued discussion.


    Here's Spotty, my not fully fleshed out potential next generation Spotify implementation for Squeezebox.

    Spotty is using the open-source librespot library (https://github.com/plietar/librespot). That library is implemented in a programming language I didn't even know before (Rust). So please prepare for failure and longish bugfix cycles :-). If you're ready to take the risk, here you go:

    • Add http://www.herger.net/slim-plugins/test.xml to the plugins repository list
    • Install Spotty
    • Uninstall the official Spotify, Spotify Protocol Handler and Triode's Spotify plugins (if installed)
    • Head over to mysqueezebox.com to remove Spotify from your apps
    • Restart LMS
    • Go to Settings/Advanced/Spotty and follow the instructions
    • Use Spotty as you used to use Spotify on SB before.


    On platforms other than Windows you should be able to authorize the plugin using your mobile or desktop Spotify application. On Windows unfortunately you'll have to enter username/password (which are NOT stored in LMS).

    My kids have been using this plugin for a few weeks now, for hours a day. It sometimes takes a tad longer to buffer the first track. But after that playback seems to be pretty gapless. It does seeking. Doesn't crash when skipping tracks. Isn't limited to a single device. Let's keep fingers crossed it continues to work post Fall '17...

    Technically this implementation follows a pretty different approach than the old implementations. Rather than having a daemon run in the background, Spotty is running the helper app for every track. It uses the transcoding framework to pipe the audio data back in to LMS, very much like any file format would do which required transcoding. By default Spotty would stream audio as FLAC. But this can be changed in the file formats settings (PCM or mp3). My office LMS is running on a piCorePlayer based Pi3 installation. CPU load is well below 10% during playback.

    There are binaries for MacOS, Windows (needs MS VC 2015 runtime), and some Linux flavors (i686, x86_64, ARM HF & SF). I would be surprised if they worked all, though :-/. In particular the arm build has seen little to no testing. It fails on my ReadyNAS Duo v2 lack of some dependencies. The list continues... Please report back your "uname -a" if you fail on Linux. Thanks!
    Last edited by mherger; 2017-07-05 at 22:03.
    Michael

    http://www.herger.net/slim-plugins - Spotty, MusicArtistInfo

  2. #2
    Senior Member
    Join Date
    Feb 2010
    Posts
    336
    Michael sounds great and I will try and set up a standalone player to do some tests...time permitting of course ;-)

  3. #3
    Senior Member
    Join Date
    Feb 2010
    Posts
    336
    And a huge thank you too!!

  4. #4
    Many thanks for this Michael.

    For your information, it doesn't work on my raspberry pi B running squeezeplug. :

    Code:
    There has been a problem running the Spotty helper application. Most likely your operating system and/or platform is not supported. Please report the following details to me: Debian / armv7l-linux

  5. #5
    Babelfish's Best Boy mherger's Avatar
    Join Date
    Apr 2005
    Location
    Switzerland
    Posts
    19,760

    For the brave only: the Spotty Spotifyimplementation

    > For your information, it doesn't work on my raspberry pi B running
    > squeezeplug. :


    This is the Pi 1 (not 2 or 3) B?

    What would "ldd --version" tell you? Could you run the spotty executable
    from the two arm-linux sub-folders of the plugin?

    --

    Michael

  6. #6
    Senior Member
    Join Date
    Apr 2010
    Posts
    739
    Quote Originally Posted by mherger View Post
    Ok, you're curious. But are you willing to fail? If not: don't continue :-)

    Here's Spotty, my not fully fleshed out potential next generation Spotify implementation for Squeezebox. I
    There are binaries for MacOS, Windows (needs MS VC 2015 runtime), and some Linux flavors (i686, x86_64, ARM HF & SF). I would be surprised if they worked all, though :-/. In particular the arm build has seen little to no testing. It fails on piCorePlayer running on a Pi B, but does work on the same hardware using Raspbian. It fails on my ReadyNAS Duo v2 lack of some dependencies. The list continues... Please report back your "uname -a" if you fail on Linux. Thanks!
    I'll try to give this a go over the weekend on my max2play pi2 2 which I think is raspbian based.
    However I would just like to make it clear in any event that you are a star, Michael, and my admiration for you knows no bounds.

  7. #7
    Babelfish's Best Boy mherger's Avatar
    Join Date
    Apr 2005
    Location
    Switzerland
    Posts
    19,760
    Quote Originally Posted by expectingtofly View Post
    Code:
    There has been a problem running the Spotty helper application. Most likely your operating system and/or platform is not supported. Please report the following details to me: Debian / armv7l-linux
    This is the Pi 1 (not 2 or 3) B?

    What would "ldd --version" tell you? Could you run the spotty executable from the two arm-linux sub-folders of the plugin?
    Michael

    http://www.herger.net/slim-plugins - Spotty, MusicArtistInfo

  8. #8
    Senior Member TheLastMan's Avatar
    Join Date
    Mar 2008
    Location
    Richmond (Surrey not VA)
    Posts
    981
    Thanks for all your efforts Michael, I will give it a go over the weekend and report back.

    Eternally grateful to all the techies here working in their spare time, particularly you with the updated Spotify app and BPA with BBC iPlayer. This has kept my Squeezebox kit running much longer than I ever anticipated - saving me buckets of cash on less capable replacements - so it is the least I can do to help beta (alpha?) test.
    Matt
    SqueezeBoxes: Two SB Duets (Living room and kitchen) and a piCorePlayer
    Server: Synology DS214 (2TB) NAS running LMS 7.9.1
    Network: TP-Link Archer VR200 router, TP-Link access point
    Livingroom: Receiver, Linn LP12, Naim 72/Hi-cap/110/Headline amp, B&W CM2 speakers
    Kitchen: Receiver, Topping TP20 Mk2 Class T amp, B&W 686 speakers

  9. #9
    Senior Member
    Join Date
    Apr 2008
    Location
    Paris, France
    Posts
    2,098
    Excellent name
    3 SB 3 • Libratone Loop, Zipp Mini • iPeng (iPhone + iPad) • LMS 7.9 (linux) with plugins: CD Player, WaveInput, Triode's BBC iPlayer by bpa • IRBlaster by Gwendesign (Felix) • Server Power Control by Gordon Harris • Smart Mix, Music Walk With Me, What Was That Tune? by Michael Herger • PowerSave by Jason Holtzapple • Song Info, Song Lyrics by Erland Isaksson • AirPlay Bridge by philippe_44 • WeatherTime by Martin Rehfeld • Auto Dim Display, SaverSwitcher, ContextMenu by Peter Watkins.

  10. #10
    Quote Originally Posted by mherger View Post
    This is the Pi 1 (not 2 or 3) B?

    What would "ldd --version" tell you? Could you run the spotty executable from the two arm-linux sub-folders of the plugin?
    This is the Pi 1 B

    Running ldd --version produces this :

    Code:
    root@squeezeplug:~# ldd --version
    ldd (Debian EGLIBC 2.13-38+rpi2+deb7u3) 2.13
    Copyright (C) 2011 Free Software Foundation, Inc.
    This is free software; see the source for copying conditions.  There is NO
    warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
    Written by Roland McGrath and Ulrich Drepper.
    Running the executable in the two plugin arm-linux folders :

    Code:
    root@squeezeplug:/var/lib/squeezeboxserver/cache/InstalledPlugins/Plugins/Spotty/Bin/arm-linux# ./spotty
    ./spotty: /lib/arm-linux-gnueabihf/libc.so.6: version `GLIBC_2.18' not found (required by ./spotty)
    ./spotty: /lib/arm-linux-gnueabihf/libc.so.6: version `GLIBC_2.17' not found (required by ./spotty)
    Code:
    root@squeezeplug:/var/lib/squeezeboxserver/cache/InstalledPlugins/Plugins/Spotty/Bin/armhf-linux# ./spotty
    ./spotty: /lib/arm-linux-gnueabihf/libc.so.6: version `GLIBC_2.18' not found (required by ./spotty)
    ./spotty: /lib/arm-linux-gnueabihf/libc.so.6: version `GLIBC_2.17' not found (required by ./spotty)

    ------
    uname -a :
    Code:
    root@squeezeplug:~# uname -a
    Linux squeezeplug 3.12.28+ #709 PREEMPT Mon Sep 8 15:28:00 BST 2014 armv6l GNU/Linux
    Last edited by expectingtofly; 2017-05-18 at 05:24.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •