SkweezyDs - (Pre-Beta)

SqueezeCenter control and media serving for your DS

SkweezyDs enables control and media serving of Linn DS products using Logitech's Squeezebox product range. Currently in pre-beta development, whereby not all functionality is present, and that which is present has had only limited testing.

Please NOTE

SkweezyDs has been developed as a hobby project in my own time. It is NOT currently an official Linn developed project (although I am a Linn employee). As such any further development and support will be on an ad-hoc basis by myself when time and circumstances permit.

Features

  • SqueezeCenter serves media to DS (eliminating requirement for UPnP Media Server)
  • DS controlled using any Squeezebox controller
    • Squeezebox Duet controller (*)
    • SqueezeCenter Web interface (*)
    • Squeezebox with display (SB1/2/3/Classic/Transporter) and IR handset

(*) Currently requires a physical Squeezebox for control to function)

  • Volume control
    • DS internal (digital_ volume control
    • RS232 connected Linn preamps
  • Playback
    • Play / Pause / Stop / Next / Previous
    • Gapless playback supported
  • Playback modes
    • Shuffle Track / Shuffle Album / Repeat Track / Repeat Playlist
  • Playlist creation
    • Play / Load / Add / Insert
  • Saved playlists
    • SqueezeCenter Favorites / SqueezeCenter Saved playlists / M3U files
  • Enhanced playlists
    • MusicIP
  • Internet radio
    • Shoutcast / M3U defined / My Radio Stations
  • Please Note that Softsqueeze is not currently supported
    • it is to be deprecated in SC7.3 SC roadmap
    • Duet controller will play audio in SC7.3 (presume it will act as a physical SB and hence provide necessary hooks for SkweezyDs)
    • proved unstable during testing

How It Works

SkweezyDs acts as a proxy, which makes the DS player mimic the controlled Squeezebox, (hence the need for an actual Squeezebox). It hooks into the SqueezeCenter public CLI (command line interface), and monitors the control events to the Squeezebox, making the DS perform the same actions

Download and Installation

Prerequisites

  • Server running SqueezeCenter
  • Python interpreter (Ver 2.4 or higher)
    • Normally pre-installed on Linux and Mac OS/X
    • Installer for Windows available here
      • And python win32 extensions here
  • Access to SqueezeCenter server machine to install SkweezyDs (may be an issue on some NAS devices)

Installation

  • Unpack ZIP file to suitable location on SqueezeCenter server
  • Edit Skweezy.ini in root folder of unpacked archive to update
    • SqueezeCenter CLI port (default is 9090)
    • Squeezebox MAC address (from label on device)
    • DS UPnP friendly name (of form Main Room:Majik DS)
    • Ethernet adapter to use (if multiple adapters on server)
  • Ensure SqueezeCenter is running and execute Skweezy DS
    • From terminal window / command prompt
      • Change to directory containg SkweezyDs and the ini file
      • Execute python SkweezyDs
    • Can also be started form Windows Explorer/Mac Finder in normal manner, but error messages will be lost if program exits
  • To exit use Ctrl-C

Operation

Once SkweezyDs is running, control the Squeezebox configured in the ini file by any of the usual methods (IR handset, Duet controller, Web interface), and the DS should mimic the Squeezebox operation

Future Plans

The intention is to convert the current Python code to Perl, and create a standard SqueezeCenter plugin module for SkweezyDs. For this reason, there is to be no further feature development on the Python code base, only bug fixes.

Feedback

Please submit any feedback on the Linn Development Forum