the MPEG-2 spec. Or poking around inside of a the linux audio stack with a long stick. More recently, its been a bit of LED art with some interesting physical simulation ideas.

The curse I bear as retribution for the deep magic I know is that I am fanatical about UPnP.

Its a set of protocols that let networked devices discover and interact with each other on the local network. It is used quite a lot; Chromecast, PulseAudio, DAAP, Apple TV, and others use it to do their magic.

UPnP does cover a lot of uses, but the ones i'm interested in are the MediaRenderer and MediaServer classes of devices. To get more confusing, this particular domain of UPnP magic is part of the "Digital Living Network Alliance" guidelines. DLNA is the industry group that makes sure that this stuff Actually Works. They do a fantastic job for the most part.

Without diving too far into the rabbit hole that is the combination of XML, SSDP, IGMP, and MDNS that UPnP really is, I'll jump ahead and introduce Telekinesis.

Telekinesis is a UPnP control point that can tell a MediaRenderer (for example, the Sony BD series of set-top boxes) to play a file from a MediaServer (for example, MediaTomb <http://mediatomb.cc/>_ or Plex).

I don't need a chromecast for this. I don't need an Apple TV. Most "smart televisions" sold after 2013 include some form of DLNA playback support as a MediaRenderer, mine included.

Telekinesis!

Telekinesis is a simple program made to scratch a simple itch. You can browse any available media servers on the network, and you can tell any given media renderer to play a file.

This will work for some people right out of the box. Unfortunately, as you may already know, codecs. Some UPnP servers out there will handle the transcoding for you into whatever format your renderer supports. MediaTomb does not. In fact, to play most files, I end up using bubbleupnpserver through the android BubbleUPnP app. The android app just tells the renderer to stream at a different URL, using the bubbleupnpserver as a transcoding proxy.

As far as I can tell, there currently is no FOSS low overhead UPnP media server that can handle the inline transcoding. I've played on and off with Rygel but was never able to get very far with it without having to write my own server. I do plan to write a better UPnP server that is similar to MediaTomb, but spoons.

Give Telekinesis a try. Maybe it'll be useful to you! I'd love to hear about it.

"/>

At heart, I'm a multimedia engineer. I really like making shiny things happen which is a rather broad spectrum of things if you think about it. To be a bit more specific, I have been known to brew a pot of tea and settle in for the evening with some romantic reading, such as the MPEG-2 spec. Or poking around inside of a the linux audio stack with a long stick. More recently, its been a bit of LED art with some interesting physical simulation ideas.

The curse I bear as retribution for the deep magic I know is that I am fanatical about UPnP.

Its a set of protocols that let networked devices discover and interact with each other on the local network. It is used quite a lot; Chromecast, PulseAudio, DAAP, Apple TV, and others use it to do their magic.

UPnP does cover a lot of uses, but the ones i'm interested in are the MediaRenderer and MediaServer classes of devices. To get more confusing, this particular domain of UPnP magic is part of the "Digital Living Network Alliance" guidelines. DLNA is the industry group that makes sure that this stuff Actually Works. They do a fantastic job for the most part.

Without diving too far into the rabbit hole that is the combination of XML, SSDP, IGMP, and MDNS that UPnP really is, I'll jump ahead and introduce Telekinesis.

Telekinesis is a UPnP control point that can tell a MediaRenderer (for example, the Sony BD series of set-top boxes) to play a file from a MediaServer (for example, MediaTomb <http://mediatomb.cc/>_ or Plex).

I don't need a chromecast for this. I don't need an Apple TV. Most "smart televisions" sold after 2013 include some form of DLNA playback support as a MediaRenderer, mine included.

Telekinesis!

Telekinesis is a simple program made to scratch a simple itch. You can browse any available media servers on the network, and you can tell any given media renderer to play a file.

This will work for some people right out of the box. Unfortunately, as you may already know, codecs. Some UPnP servers out there will handle the transcoding for you into whatever format your renderer supports. MediaTomb does not. In fact, to play most files, I end up using bubbleupnpserver through the android BubbleUPnP app. The android app just tells the renderer to stream at a different URL, using the bubbleupnpserver as a transcoding proxy.

As far as I can tell, there currently is no FOSS low overhead UPnP media server that can handle the inline transcoding. I've played on and off with Rygel but was never able to get very far with it without having to write my own server. I do plan to write a better UPnP server that is similar to MediaTomb, but spoons.

Give Telekinesis a try. Maybe it'll be useful to you! I'd love to hear about it.