[mythtv-commits] Ticket #7887: Additional MusicExitAction option for MythMusic

MythTV mythtv at cvs.mythtv.org
Sun Jan 10 06:20:25 UTC 2010


#7887: Additional MusicExitAction option for MythMusic
-----------------------------------+----------------------------------------
 Reporter:  mythtv@…               |        Owner:  ijr    
     Type:  patch                  |       Status:  closed 
 Priority:  minor                  |    Milestone:  unknown
Component:  Plugin - MythMusic     |      Version:  0.22   
 Severity:  medium                 |   Resolution:  wontfix
  Mlocked:  0                      |  
-----------------------------------+----------------------------------------

Comment(by mythtv@…):

 >  Your action is an undesired (and to many unexpected change IMHO).

 How so?  This patch does not change *any* existing functionality for the
 existing possible values of MusicExitAction.

 This patch adds a *new* possible value for MusicExitAction (yes, with
 different functionality than the existing three possible values; but
 that's the whole point of a configuration setting).  As long as a user
 does not select this new value, then MythMusic with this patch works
 *exactly* the same as MythMusic without this patch.  I do not presume to
 force my configuration preferences on others; merely to make a new and
 useful option available.

 How is adding a new value for MusicExitAction an undesired and unexpected
 change?

 >  If the user decides to really exit they should confirm either 1 or 2,
 if
 >  the user decides to cancel it can select option 3. The use can (on a
 >  keyboard) also press Escape to effectuate option 3.

 Please keep in mind the usage case I'm taking about:  an IR remote control
 macro.  The remote has no way of knowing what state MythTV is in (e.g. is
 MythTV currently in the MythMusic plugin playing music, or in MythTV,
 proper, playing a recorded show, or in the MythVideo plugin editing
 metadata for a video, etc) and no way to know if an on-screen prompt is
 being presented.  For remote automation, there needs to be a single set of
 remote commands to send to MythTV to cause it to exit out of whatever it
 is doing and get back to an idle state (preferably back to the main menu)
 regardless of what it is doing.

 When not enabling the "prompt on exit" functionality in MythMusic, the
 single set of commands to send happened to be a serious of ESCAPEs.
 Regardless of what MythTV is doing, given enough ESCAPEs, it will exit and
 eventually get back to the main menu.  (For all the plugins that I use, it
 turns out that four ESCAPEs do the trick no matter what state MythTV is
 in.)

 >  Escape should be used
 >  for backing out, not confirming like you desire IMHO. I doubt that the
 >  cancel function (ESC) should be used to exit from this prompt other
 than
 >  the current behavior return to MythMusic as the user cancels the exit.

 That is perfectly well if you desire that behavior on your MythTV system.
 This patch will not change anything for you.  You will still have exactly
 the behavior that *you* desire on *your* systems.  All this patch does is
 add a way for others to opt for behavior different than what you want.

 >  You are trying to override the cancel to do both, cause option 1: "stop
 >  playing and exit" as well as your new option 4: "stop playing and
 exit",
 >  this is a race condition which will not likely be added to the source I
 >  think.

 Uh.  There's no race condition here.

 If (and only if) a user selects the new option for MusicExitAction,
 pressing ESCAPE at the exit prompt will do the same as if the user
 selected "No, stop playing and exit" (or however it is worded) at the
 prompt and pressed ENTER.  Yes, that could be seen as counter-intuitive
 for many users and that is exactly why this patch implements this behavior
 *only if* the user explicitly configures MusicExitAction with the new
 value.  The existing value of "Prompt" still behaves exactly as you prefer
 it to (namely, if a user presses ESCAPE at the prompt, they will be
 returned to MythMusic).

 >  You can disable prompting IIRC in the database, which might solve your
 >  issues in home automation.

 I don't want to completely disable the prompt.  I love the prompt!  When
 I'm interactively using MythMusic and want to exit *and* still have music
 playing, the prompt is wonderful!  I've been using it since 0.21.

 But I also want my system to be able to work well with remote control
 macros.  One of the macros I have is an "All Off" macro.  It ensures that
 the TV is off (and set to the VGA input), the VCR is off, the DVD player
 is off, the A/V receiver is off (and set to the optical audio input coming
 from my MythTV system), and that the MythTV frontend is in some idle
 state.  This makes it brain-dead simple (just press one button on the
 remote) for my three-year-old daughter to turn everything off when she is
 done doing whatever she is doing (regardless if she was watching a DVD, a
 recorded show in MythTV, or listening to music in MythMusic).

 I've been using the prompt-on-exit functionality since it was introduced
 in 0.21.  However, I locally changed the behavior in my 0.21 installation
 to behave the way the new option that this patch adds behaves.  I did not
 submit my local modifications during 0.21, as it was a fixed, non-
 configurable change.  Now that 0.22 has introduced several different
 options for what action to take on exit from MythMusic that can be
 *easilyS selected from the configuration UI, I am submitting the patch.
 Again, as stated above, the patch only changes the prompting behavior if
 and only if the new value for MusicExitAction is explicitly configured by
 the user.

 >  Are you sure your home automation can not send a plain ENTER in order
 to
 >  confirm the first (default option) to stop playing and leave MythMusic
 >  after the first Escape which causes the prompt?

 Of course it could, but that is not a universal sequence for exiting every
 state that MythTV could be in.  For example, if a recorded show where
 being watching in MythTV, and an ESCAPE and then ENTER were sent, the end
 result would be that the show would still be playing (the ESCAPE stops the
 playback, but the ENTER starts it back up again).  As I stated before, a
 remote control cannot query the state that MythTV is in and then change
 it's macro (yes, humans are usually pretty good at that, though).  Remote
 macros always play out in the same order from start to finish every time.
 (Of course, getting a three-year old to understand that the remote needs
 to remain pointed in the general direction of the TV is little harder.
 :-)

 This patch does *not* change the behavior of the existing prompt-on-exit
 functionality of MythMusic.  This patch simply adds a new configuration
 option that enables a new (and, yes, slightly different) behavior for the
 prompt-on-exit.  If you do not personally like that behavior, that is fine
 --you don't have to use it.  However, please consider that others would
 like the choice to configure their systems to behave differently than
 yours.

 This patch is also brain-dead simple.  It adds one new line in one file
 and changes one line in a second file.  The increased flexibility of
 MythTV is well worth such a light-weight patch.  Please merge the patch.

 Thanks,[[BR]]
 Garrick

-- 
Ticket URL: <http://svn.mythtv.org/trac/ticket/7887#comment:3>
MythTV <http://www.mythtv.org/>
MythTV


More information about the mythtv-commits mailing list