Easy content streaming via applications

When I work from home I mainly sit on my couch, with two small dogs sat with me. On my laptop is 26GB of music, and I listen to it through the crap speakers on my Thinkpad. But, about four feet away is a Playstation 3 plugged into a beefcake surround system. Hmmm, I got thinking and had the thought of streaming my music over the network to the PS3 which could spit said tunes out of aforementioned speakers of beef. I heard that something called uPnP can be used for this, and a recent PS3 firmware update can make this happen.

Speaking to Chris, one of our Canonical sysadmins, he told me about MediaTomb which I installed. This provides a uPnP server, but requires quite a bit of tinkering in config files with their requisite obtuse configuration directives. I only want to share MP3s, so I set MediaTomb off indexing my music collection but alas it did not work. I could see the server on my PS3, and see the artists abd albums but when I try to get to a song and play it, it says Unsupported Data. A bit of Googling late, it seems a number of people have experienced the same problem. I lose.

This is waaaay too hard. One of the most beautiful things about Rhythmbox’s DAAP support is that I just switch it on and my content is shared. Thats it. This is the approach we need for uPnP sharing. Sure, uPnP can share different types of media, but there is no reason why each application type could not stream those specific types of media – Rhythmbox exports music, F-spot exports photos etc. If you wanted a unified server for this, there is no reason why there could not be a gnome-sharing-server that these applications plug in to.

Is anyone working on a solution to this very problem? I would to just tick an option in Rhythmbox and see my content appear on my PS3 via uPnP. Or, am I smoking crack? :D

  • http://www.devel.co.uk/ Paul Cooper

    It’s still early days yet but the gupnp project http://gupnp.org/ should be building the foundations for this sort of stuff. In my limited experience not many devices do upnp particularly well and there aren’t any good upnp libraries out there – a friend has been wanting build this stuff (in .Net argh!) but couldn’t find any good open or closed things to build on.

  • Jon Cooper

    uPnP media serving is easily achievable with GMediaServer; it will scan all your music on startup then share across the network.

    I think it’s in the Ubuntu repos.

    http://www.gnu.org/software/gmediaserver/

  • http://www.realnitro.be/ Jens Geiregat

    Give FUPPES a try. It’s got a nice web-interface and works pretty well. (I have given it a try on a Windows machine and streamed to my Nokia 770 and it was pretty stable.)

    Link: http://fuppes.ulrich-voelkel.de/ About the most recent version: “This version comes with initial support for the Xbox 360 and the PS3.”

  • http://www.secomputing.co.uk Stephen English

    PulseAudio (http://www.pulseaudio.org/) is built for this – a replacement sound server that works great with feisty. You can choose to share your sound sinks (speakers) over the network – it even uses Avahi for advertising them. Any pulseaudio client can then send audio to them. Uses a fair amount of network bandwidth.

    It also gives you cool tricks such as individual application volume controls, combining sound cards into multichannel supercards etc.

  • http://postneo.com Matt Croydon

    You might also want to check out uShare from the geexbox folks: http://ushare.geexbox.org/

    It’s really simplistic: just point it at a folder that contains music and it’s shared via UPnP. It’s what I’ve been using to stream music to my N800 because it’s lightweight, but you should definitely check out the projects mentioned above too.

  • Martijn

    And then there’s the format problem. Most uPnP media boxes I’ve seen don’t like FLAC or Vorbis (let alone Theora)… they only want MPEG1/2/4 or some derivative.

  • http://kirrus.co.uk Kirrus

    Martijn: Thats where some transcoding stuff comes in… FUPPES (and 360mediaserve I believe) can transcode some, you’d have to look at each app and see. Its definitely not easy.

  • Kheru

    @2 Also check GMediaRender for transcode to “compatible” format :)

    so gmediaserver + gmediarender

    http://freshmeat.net/projects/gmediaserver/ http://freshmeat.net/projects/gmrender/

  • http://none wout (mad_penguin)

    The latest release of mediatomb supports the ps3. The problem was with dlna standard which is closed. I debuged this with one of the mediatomb developers. The newest release in svn has support for ps3. Read the following news report. http://sourceforge.net/forum/forum.php?forum_id=699996

  • http://roaxnet.dyndns.org roax

    PulseAudio. I play music on my laptop with amarok and I listen to it on my server plugged into my beefcake surround system jeje.

  • http://roaxnet.dyndns.org roax

    Oh, i forgot that if you want PulseAudio and Alsa dmix working together you should see Bug #109439. I only use PulseAudio with amarok so i need alsa dmix.

  • bommo

    Just don’t stop at the music. There are other sorts of media, files, and information that suffers from the exactly same problem! :evil:

  • https://coherence.beebits.net Frank

    If you wanted a unified server for this, there is no reason why there could not be a gnome-sharing-server that these applications plug in to.

    that’s one of the thoughts behind Coherence, the UPnP/DLNA framework I’m working on – a docking area where other applications can attach to and expose their services through it.

    https://coherence.beebits.net/wiki/ArchitecturalOverview#TheBackends

    It doesn’t make much sense (imho) to have every application that e.g. wants to share digital media / some service to implement their own version of the sharing protocol, due to the complexity of this it might end up in only a partial or even a faulty implementation. And on the other hand it is questionable too if a sharing application replicates the whole media organizing stuff of a MediaCenter or tries to duplicate the functionality of a media player – an attempt that’s probably doomed due to the variety of user preferences.

    For instance Elisa (http://elisa.fluendo.comhttps://wiki.ubuntu.com/UbuntuMediaCenterTeam) uses Coherence to act as an UPnP MediaServer – to export Elisas media database, and as an UPnP MediaRender – to allow remote control Elisa via an UPnP ControlPoint. And in a next step Elisa will use the Coherence ControlPoint features too, enabling Elisa to remote control other UPnP MediaRenderers.

    With Buzztard (http://www.buzztard.org/index.php/Playback_controller) we’ve build a very quick link to enable control by an UPnP ControlPoint on the Nokia N800.

    And for a more general use I would love to do a gateway to MPRIS (http://wiki.xmms2.xmms.se/index.php/Media_Player_Interfaces) or to whatever it will evolve, to UPnP-enable the participating MediaPlayers.

    One of the most beautiful things about Rhythmbox’s DAAP support is that I just switch it on and my content is shared. Thats it. This is the approach we need for uPnP sharing. Sure, uPnP can share different types of media,…

    the corresponding UPnP functionality for D*AP is the ContentDirectoryService, something that allows a client to browse and access (media) data. But that’s only one part of the UPnP A/V specification.

    Regarding the PS3 – it is a bit picky in the way it wants the MediaServer to behave, plus it wants a DLNA spec conform one, that’s the reason why most of the open source servers had their issues.

    And you are right, UPnP is much, much more than music, or more general media data sharing, in the A/V context there is for example a service to schedule recordings on a PVR system. Other parts address home-automation services, or printers, …

    Coming to an end, a final thought – if we ever want to see an UMC replace some commercial MediaCenter system in an ordinary household, there has to be a proper implementation that allows communication with other closed, shrink-wrapped consumer devices. As these consumer users don’t want to here: “check out the latest trunk rev” ;-)

  • http://www.loudmouthman.com Nik Butler

    Currently I am using Tversity ( http://www.tversity.com ) which streams and trasncodes content from my Windows boxes to my 360, Wii, PSP and other devices. its the closest I have found to a universally adept media server even if it runs under windows. The owners forum is bombarded with requests to make a linux version. Needless to say its when it goes to linux it will be a great fit to my democracy player and rythmbox install.

  • Abbas Khan

    I think you smoking wayyy to much Crack, but on the other hand it wouldn’t be a bad little plugin to hack up, you might have to change the rhythmbox plugin api b/c i doubt it is designed for anything like that…

  • Ian Stoffberg

    Getting somebody to help scratch your itch is probably one of my favourite things about this community.

    Thanks for the cool info, all of you.

    Jono, please blog about the stunning response to your post as well as the results once you get it working on the ps3.

  • http://zdzichubg.jogger.pl zdz

    DAAP uses ZeroConf which is standarized (RFC) and was adopted by Apple. UPNP is Microsoft’s idea. Now think which of them “just works” and which sucks. And I wonder why Community insist on implementing UPNP instead of broading spectrum of ZeroConf-enabled applications.

  • http://www.communitytechnology.org.uk jackflap

    How about streaming the music via bluetooth to a pair of bluetooth enabled speakers?

    I’ve got a pair of Orange speakers and they’re not that great quality, but I still love my wireless speakers. If I had the money, I would definitely go for these:

    http://www.parrot.biz/uk/products/parrotboombox

    If you have an internal bluetooth device, it’s an amazing feeling, walking around and listening to streamed music from your laptop.

    Alex

  • philn

    zdz,

    ZeroConf != UPnP UPnP specs simply allow more things than ZeroConf, UPnP is not Microsoft’s baby, there’s a whole bunch of hardware retailers behind that as well. There are many hardware devices UPnP-ready.

  • https://coherence.beebits.net Frank

    @zdz:

    As philn already said, ZeroConf is only a small part of the UPnP stack. The corresponding thing there is named SSDP (Simple Service Discovery Protocol).

    What philn said about the consumer device manufacturers is a very (if not the most) important point. These people once sat down and decided on a protocol stack that allowed their devices to inter operate. That itself was a great evolutionary process, if you think of such insular entities like B&O, Philips or Sony.

    Of course they didn’t do that because they are such kind people, they realized that there is a growing consumer demand re interoperability and if they don’t respond to this they will lose market share to the ones who do.

    Sure, what they designed on their round table isn’t creation’s crowning glory – I know that, wading sometimes knee-deep in it – but one can make it work.

    And it is part of the game to create a non-standard implementation like MS did with WMC or trying to extend it to have a “better one” like Philips did.

  • Bilbo

    Easiest streaming music scripts I’ve seen yet. Easy access to your music collection also over the internet. give it a try if you haven’t yet!

    http://www.kplaylist.net/

  • http://www.xdiscover.com/ Freeware and Shareware Software Downloads

    Freeware and Shareware Software Downloads…

    I couldn’t understand some parts of this article, but it sounds interesting…