[mythtv] Enhanced OSD functionality in tv_play

Bryan Mayland bmayland at leoninedev.com
Mon Nov 28 22:36:47 EST 2005


So I've updated my working copy to include support for a multi-level OSD 
when watching TV, and I'm still not completely happy with how it works.  
So I'm thinking the osd behavior could be enhanced to provide a little 
more flexibility. 

The main change I'm proposing is a small and large program info OSD.  
Pressing info displays the small if it is available, pressing again 
displays the large, pressing again hides all info.  If either are 
missing it is skipped.  Here is some pseudocode which sums up all the 
state changes:
In WatchingLiveTV function, non browse mode:
On Channel change: hide channel_number, display smallinfo
On INFO command
  If nothing displaying
    If has smallinfo
      display smallinfo
    Else
      display longinfo
  Else If smallinfo displaying
    If has longinfo
      display longinfo
    Else
      HideAll
  Else If longinfo displaying
    HideAll

On browsemode activated: Display smallbroswseinfo
On browse channel change: display smallbroswseinfo
On INFO command
  If channel = currentlytunedchannel
    Use non browse mode logic
  Else If smallbroswseinfo displaying and has longbrowseinfo
    display longbrowseinfo
  Else If longbrowseinfo and has smallbrowseinfo
    display smallbrowseinfo

Note that I've put the channum back into each respective osd container, 
since the varying sizes of the containers does not lend itself to having 
the channel number in the same place all the time.  This is the only 
change needed to existing osds to make them work with the new system 
(because only largeinfo will be used if smallinfos aren't present).

Anywho, I'd be happy to code this up and submit a patch, since I've 
already gotten a good start on it... assuming there are no objections to 
the new behavior.


More information about the mythtv-dev mailing list