I'm getting rather tired of the outdated feel of mythfrontend. When I
downloaded moovida it was exactly what I wanted in a media centre frontend,
it just lacked the tv bit!

I'd like to propose development of a plugin for moovida to provide support
for the mythtv-backend service. I am pretty familiar with mythbackend, but I
am quite new to python (dabbled a bit in it, mostly with Django). I am
pretty happy to just get stuck in though, and try and get a (somewhat)
working plugin asap, problem being I am out of my depth when it comes to the
code.

Here is as much as I know about this, in my attempt to get this project
kickstarted as fast as possible:

For the uninitiated, the mythtv-backend is a service that has the hardware
implimentations for tuners, as well as a database backend to store tv
listings. The backend actually does all the heavy lifting - so recording
shows, managing schedules, managing tuners, expiration of recordings, infact
pretty much everything you can think of. All the frontend does is spit out
the video output, and schedule hud.

The service runs on a custom protocol, running on port 6543, so one is able
to setup a mythtv backend service running on one machine, and a mythtv
frontend service running on a separate machine. The backend also handles
backends, so you could have an arbitrary amount of backends in a
internetworked configuration of backends which can be accessed from multiple
frontends. In summary, its a many to many kind of thing.

The protocol basically picks up on a connection from the port, requiring a
MYTH_PROTO_VERSION response, which tells the backend which version of the
protocol you're using. When this handshake is done you can run a huge list
of commands. The caveat is that the protocol version you're running must
match the backends protocol version.

For a more in depth analysis of the protocol, you can see here:
http://www.mythtv.org/wiki/Using_the_Myth_protocol

For a list of commands with details on each one, head over here:
http://www.mythtv.org/wiki/Myth_Protocol_Command_List

There is an implimentation which seems to take out alot of the hard work
from using the mythtv protocol here:
http://gmyth.sourceforge.net/wiki/index.php/Main_Page. This was linked from
the originating forum post.

To flag up some future problems, you can read here:
http://www.mythtv.org/wiki/Using_the_Myth_protocol#Getting_Guide_Data which
details one quirk with getting TV Guide data, where the frontend will simply
query the *sql database direct; rather than the backend. This unfortunately
would add a whole layer of crap into the plugin, as while you can pull the
authentication details from the backend, it means extra db code needs to be
added for such neccessary functions.


...so... anyone interested in getting this going?
----
Keith Cirkel

Reply via email to