On Sun, May 01, 2005 at 12:53:35AM -0400, David Shay wrote: > OK, I've decided to go ahead and complete the protocol extensions that I would
If it matters much, I think what you're doing is exactly what myth needs. Something I noticed awhile ago is myth's reliance (and blocking) on sql queries. It looks fine on paper until you consider latency. > need for most playback functions from alternate frontends. Here are the > additional commands and how they work: > > QUERY_SQL [query statement] > Returns all rows and columns of the resultset in []:[] delimited form > QUERY_COMMBREAK [chanid] [starttime in seconds since 1/1/1970] > Returns the set of all commercial breaks. Each set has 3 values: > [4 or 5] -- commercial break type (4 = start, 5 = stop) > 2 values representing a long-long encoded in usual fashion > All values are []:[] delimited > QUERY_CUTLIST [chanid] [starttime in seconds since 1/1/1970] > As above, but returns the cutlist. 0 = start, 1 = stop of each section > QUERY_BOOKMARK [chanid] [starttime in seconds since 1/1/1970] > Returns a long-long, encoded as usual with 2 values []:[] separated > SET_BOOKMARK [chanid] [starttime] [long value 1] [long value 2] > Sets the bookmark, using the 2 values to form one long-long > > All commands (except QUERY_SQL) use the ProgramInfo functions to get/set the > data, so the logic is still in one place. > > Comments,thoughts before I proceed? Next steps would be to add functions to > get guide data, in order to emulate the front-end guide, then add a function > to schedule a recording. Scheduling the recording is a pretty vital one. If > we can make that a protocol function, then MythWeb could use it as well, so > that there would be much less dependence on the database structure for adding > a scheduled program. The guide definetly needs help. I count about 11 queries just by changing focus (alt-tab away and back to myth): - SELECT NULL (these btw POUND the sql server in mini storms for some reason .. I haven't dug much into what the hell causes it or why they are needed) - Time format - NULL again - OldDateFormat? .. does this twice, once with hostname, once with NULL as hostname - NULL again - ShortDateFormat - NULL again - ChannelFormat - NULL - LongChannelFormat - Channel Icon (another thing that bombards the server for no reason .. should be cached on client) - NULL Idealy the frontend would request a snapshot of time, and render the results. Some of the funner stuff comes from just changing channels: - NULL - ShortDateFormat - NULL - ChannelOrdering - NULL - Big ass query just to get current program data for currently tuned channel - NULL - TimeFormat - NULL - DateFormat - OldDateFormat (same as above, one with and one without a hostname nfi why this couldn't have been at least an OR) - NULL - ShortDateFormat - NULL - ChannelFormat - NULL - LongChannelFormat - NULL All those .. just to change a channel.. There are other areas that are just as bad (if not worse). Ultimately the fix for this will be reworking how myth does things internaly.
_______________________________________________ mythtv-dev mailing list [email protected] http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-dev
