Devious Fish

pianod pianod classic web remote

pianod2 web remote

For best results, use the correct remote for the edition of pianod you are running.


Recent Changes

  • 19 Dec 2015—r176 --with(out)-polarssl configure option. Happy Solstice, Ted Hess.
  • 03 Dec 2015—r175 Integrate PolarSSL 1.3 support (gnutls alternative) provided by Ted Hess. Thanks Ted!
    Update build scripts accordingly.
    Update TLS certificate.
  • 23 Mar 2015—r174 Football: Reset value if connect() fails, preventing crash.
    libwatress: if outbound connect() fails, try next address.
    Fixes provided by Ted Hess. Thanks Ted!
Multiuser pandora play
Shared Pandora player
with web-based remote
Share stations
Share stations with housemates
Customize user privileges
Customizable user privileges
Revise stations
Edit stations & Music
QuickMix station picker
Pick your own stations, or...
Rate stations for autotune
Rate stations & autotune based on who's listening
Schedulable station changes
Make an automated DJ by scheduling stations
Socket interface
Integrate via a socket,
HTML Websockets, or...
Shell script interface
With a shell script if you prefer.
/ : Slide time:


pianod is a music player with line-oriented and Websocket TCP/IP control interfaces. A simple protocol makes for easy clients, mix scripting, integration with a home automation system, or use as multiple-user music system. pianod has a full-featured web-based interface that allows multiple listeners to view status and share control.

In English? Install pianod on your stereo-connected computer, and you and your family can remote control the house music from any web browser: your phones, tablets, laptops.

I suggest using the new version. pianod2 supports multiple concurrent Pandora or filesystem sources, a better client, requests, shuffle modes, crossfading and many other improvements. Orchid is pianod2 precompiled for Mac OS X 10.7+.



3 November 2015—The Pandora TLS certificate changed overnight. pianod 175 includes an an update along with PolarSSL 1.3 support, or add set tls fingerprint 13CC51AC0C31CD96C55015C76914360F7AC41A00 to your startscript.

If you are using Pandora One, the fingerprint (for rpc host internal-tuner) is 7F2BFD338D08D6F952D215C0FC8C3C4C1DC1772F.


  • Use the web remote off the Web, or download and install it (you will need to use pianod’s -c option to set the client location). The web client is rich with features for the Pandora power user: unlove a song with the neutral button (☯), toggle song or artist seeds with one click (種), or add a song or artist that played as a seed to another one of your stations (+).
  • Michael Hines is developing a mobile client for the Titanium cross-platform SDK.
  • node-pianod is a node.js library for controlling pianod

Documentation & Support

Similar Projects

  • pianod2 is the second generation pianod: not just Pandora anymore.
  • Pandora’s official clients are available from Pandora.
  • pianobar is a terminal-mode Pandora client (and the origin of libpiano). It is interactive, with keystroke commands instead of full statements, but has event support which runs a shell script or whatnot to do scrobbling or other things.
  • Elpis is a Windows client
  • Pithos is a Linux client
  • mserv is a similar-style jukebox for local media

Thanks to all the open-source developers who provide our dependencies, Fletcher Penny for multimarkdown, Dimitri van Heesch for Doxygen, Liz Aragon for the piano and football/soccer ball, and Zennaware for making a decent Mac SVN client, Matthias Miller for Javascript Lint, Mihai Bazon for UglifyJS2, and everyone at MacPorts for making package management manageable.