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

  • 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!
  • 02 Feb 2015—r173 Unit test: Implement 'tail +start' in script for systems with GNU's inadequate tail.
    Unit test: Allow more time for pianod to start up; libao seems to take a while to load/setup on Linux.
  • 02 Feb 2015—r172 Fix compile-time check that ensures at least one of SO_NOSIGPIPE or MSG_NOSIGNAL is available.
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.

The original supports Pandora. pianod2 supports multiple sources and is now in beta.



  • 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.