[mythtv] Protocol negotiation?

Geoffrey Kruse gkruse at gmail.com
Fri Sep 29 19:02:34 UTC 2006


On Sep 29, 2006, at 11:53 AM, Paul Bender wrote:

> Michael Tiller wrote:
>> It seems like every time there is an update to MythTV, it creates  
>> havoc
>> with all other clients.  In my case, I have a MediaMVP and an XBox
>> running XBMC but the issue also exists because when trying to run  
>> MythTV
>> on Xebian as well because some people (like me) prefer to have  
>> prebuilt
>> distributions and those often lag significantly.
>>
>> I'm curious...wouldn't it be possible to have the MythTV backend
>> negotiate which protocol to support?  In that way if it ran across an
>> "old" client that wanted protocol level 30, it could say "OK, I'll  
>> talk
>> to you with 30" insteady of throwing protocol errors.
>>
>> I suppose since the current protocol doesn't support this kind of
>> handshaking we'd have to bump the change the protocol thereby
>> (temporarily) exacerbating the situation. :-)  But it seems like a  
>> good
>> way to go in the long term because then it wouldn't force you to  
>> update
>> all clients at the same time.
>>
>> Just a thought.
>
>  From experience, I can tell you that it is often a lot of effort to
> make sure that older protocol versions still work when you extend or
> replace protocols. I would much rather MythTV developers spend time  
> move
> things forward than looking back.
>
I think it could be done quite simply...
The myth protocol is basically a series of strings separated by a  
token ([[::]] if I remember correctly).  Why not just add the  
protocol version of each token to the separator ( [[::30::]]Some Data 
[[::31::]]New Data ...)  That way, the parser just simply throws out  
any tokens that have a number higher than it understands in the  
separator.  I think this would be fairly straight forward to  
implement.  Of course, there would have to be tolerance for missing  
fields if a newer version of the protocol were to remove elements,  
but this also should be trivial.  Since the myth protocol is already  
very string heavy and not very efficient, I think adding a few  
characters to each separator would not be much of a performance hit.

As far as not -having- to upgrade, I run a linux backend and two mac  
frontends, one intel and one ppc.  Often there is a critical fix for  
the backend, however in the meantime, a bug or compile error has been  
introduced in the mac version of the frontend that prevents me from  
using the same version.

Just my $0.02

Geoff
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 2415 bytes
Desc: not available
Url : http://mythtv.org/pipermail/mythtv-dev/attachments/20060929/bd541776/attachment.bin 


More information about the mythtv-dev mailing list