Pandora-UPnP?

So I feel fairly comfortable saying that I have ‘solved’ the problem of using MPD via UPnP at least in a rough slightly-better-than-prototype sense.  I will of course continue to polish MPD-UPnP but I wonder, how can I make Zhaan even more useful?

There is this nifty library called pianobar with this even more nifty python api.  Pianobar is an API to pandora.  I wonder how much effort it would take to wrap pandora in UPnP?

Update I had the following pseudo monolog on IRC with a friend of mine discussing the upnp-pandora idea.  Perhaps there are more upnp wrappers to come:

01:51 < zgold> Wouldn't that be awesome
01:51 < zgold> have one UI and one app on your N900
01:51 < zgold> to control any UPnP device in your house
01:51 < zgold> any MPD device on the house (even on the phone)
01:52 < zgold> and Pandora locally on the phone
01:52 < zgold> now if only the local media player exposed itself as a UPnP
 MediaRenderer
01:52 < zgold> Zhaan would be the universal media UI =P
01:52 < zgold> though
01:52 < zgold> it does have a dbus api
01:52 < zgold> I could build a UPnP MediaRender wrapper around that
01:52 < zgold> *hmmmmm*

2 thoughts on “Pandora-UPnP?”

  1. Or…

    Wouldn’t that be awesome
    have one UI and one app on your computing device, be it N900, Android mobile or tablet, Linux PC, Mac and even Windows
    to control any UPnP device in your house (even the local device)
    any MPD device in the house (even the local device)
    zgold could do that and putt1ck could test it…

    😀

    1. You can do most of that even now :).

      Zhaan can control:

      Local device (if you play media locally via Rygel)

      Other devices (if they’re playing on UPnP complaint renderers)
      MPD Devices (if they run MPD and MPD-UPnP)

      Feel free to checkout the code and fire it up =P. Zhaan is already packaged for the N900 and MPD-UPnP is written in python so all you need to to install PyGObject (which is packaged for most distros) and then run MPD-UPnP.

Leave a Reply

Your email address will not be published. Required fields are marked *