[mythtv] UPnP server and transcoding

Mark Kendall mark.kendall at gmail.com
Thu Oct 8 02:35:11 UTC 2009

2009/10/8 Jeremy Palenchar <jeremy at palenchar.net>:
> Would you consider migrating over to one of the other stacks if the
> licensing is compatible or do you think the native stack is still the right
> approach?

I spent some time looking at, and to a lesser extent working with,
libmythupnp a couple of months ago.

My focus is very much on the frontend though - with a view to adding
playback of content from other upnp media servers, media renderer
support for mythfrontend and a full html remote interface (by way of
the presentation element of upnp). (the last 2 together also have the
interesting side-effect of controlling frontends with other
frontends). All of this was put on hold until post 0.22 though.

The major issue with adding media renderer support is (as you mention
below) tracking the frontend's state. This will require a fair amount
of work (and agreement) and to my mind reinforces the need for a upnp
stack that is tightly linked to the frontend code.

> I looked at the uPnP specs a little bit yesterday and there is a lot that
> needs to be done in terms of state handling and message responses in order
> to be compliant. I would think it would be easier to offload all of that
> work to a team dedicated on building uPnP functionality.

I'm  not sure whether you mean that there is a lot to be done
generally to be upnp compliant or whether libmythupnp needs a lot to
be done. As I said to David a while back, I like his upnp stack - it's
clear and well written imho - and, from memory, any missing
functionality that I spotted could be added fairly painlessly. It's
also worth bearing in mind that upnp is a pretty static target - the
spec isn't changing rapidly and hence once you have a library, it
should be pretty much stable for an extended period of time.

In case anyone isn't clear on that, my vote goes with libmythupnp :)

But this is all pretty irrelevant to the original topic anyway - on
the fly transcoding is something that you bolt on behind the scenes -
and would be/should be entirely invisible to the upnp stack.



More information about the mythtv-dev mailing list