Windows Entertainment and Connected Home

How to organize, access and enjoy all of your media in and around your home

Playing Music/Movies in Vista Media Centre does not prevent Standby Timer countdown ..

  • rated by 1 users
  • This post has 42 Replies |
  • 8 Followers
Page 1 of 3 (43 items) 123
  •  

    Hi Jessica

    Have scoured web for a solution and found that there are quite a few people experiencing the problem as described below and am hoping MS might have a solution or at least be aware of it ---

    It seems button presses on the remote (ie pause, play, stop) don't actually register as an input event with Vista while in Media Centre, and the standby timer isn't reset properly - therefore, as soon as playback is stopped it enters standby because the computer hasn't seen any active inputs in a while.  Not sure what the fix is, but this describes the problem accurately.

    I have done some further testing as  follows - I have set screen to standby after 10 min and pc to standby after 30min.

    If I press a remote button before the 10 min is up all works fine, If I wait till after the 10 min is up and press the remote button the screen will immediately go to standby.  Ditto with pc to standby, if I wait till after the 30 min is up the pc immediately goes to standby.

    This only happens when I watch live TV, recorded TV or a DVD via Vista's Media Centre UI, without any input during the standby timeouts.  However, if during this time I move a mouse or press a conventional keyboard key it resets the standby timer countdown.

    I raised the problem with SoundGraph and these are their comments --

    "Usual movie or music playing programs themselves, prevent PC falling into sleep mode. So does iMEDIAN. But reading your threads, we think MCE does not do this way. So we're thinking of workaround method included in the future patch of iMON/iMEDIAN. This can be "generating dummy keyboard signal to OS from iMON Manager for every iMON PAD button push". "

    "iMON remote just passes remote signal to the active program directly. So OS doesn't know if user input command or not from the view point of "Power Options" of Vista. To prevent this misunderstanding, we can on purpose generate blank signal to OS every remote button. We will consider this into the patch. "

    Thanks .... Anthony

    Specs ... Intel c2d 6600, Asus p5b plus, Silverstone GD01-MX with IMON/LCD, 2gig Corsair ram, Asus EN8600GT video card, DNTV pciex s2 dual tuner, Vista 32, Asus 1814blt sata dvd, wd sata2 500g hd, Seasonic s12 energy+ 550w psu.

  •  

    Hi Jessica

    Any response to my problem, please :)  ?

    Anthony

     

  •  
    I asked the expert in this area; he hasn't gotten back to me.
    This posting is provided "AS IS" with no warranties, and confers no rights.
  •  
    Thanks Jessica, much appreciated.
  •  

    JessZahn:
    I asked the expert in this area; he hasn't gotten back to me.

    Great cause it´s buggin´ the hell out of me too ... :)

    By the way, I started a smiliar thread here http://www.xpmediacentre.com.au/community/vista-media-center-software/21489-vmc-instant-sleep-after-music-ends.html

  •  

    Hi Jessica

     

    Just wondering if you may have had any feedback on this issue.

     

    Thanks ... Anthony

  •  
    bump... this is a really annoying "feature"
  •  

    We attempted a repro in-house, and we think it's the third-party IR solution you're using. When we use our own, we see the behavior we expect: screen blanking/standby start at the right number of minutes past the last keypress.

    However, if there are no keypresses, and media is playing back and the standby timer elapses, we do go straight into standby. I think this is by design, but maybe not by good design. It's something we'll reconsider in the future.

    This posting is provided "AS IS" with no warranties, and confers no rights.
  •  
    JessZahn:

    We attempted a repro in-house, and we think it's the third-party IR solution you're using. When we use our own, we see the behavior we expect: screen blanking/standby start at the right number of minutes past the last keypress.

    However, if there are no keypresses, and media is playing back and the standby timer elapses, we do go straight into standby. I think this is by design, but maybe not by good design. It's something we'll reconsider in the future.



    I'm not using a third-party IR product and I have this issue.  It could be slightly different as it only occurs when watching TV, not DVD's I haven't noticed the issue when listening to music but I usually do that with the display off.

    For e.g. if I have my display set to turn off after 20 min, after watching a 30 min show (without interacting with the PC) the display immediately shuts off when the show stops, not 20 min after the show stops.
  •  
    Yeah, that's what I said was by (maybe not good) design. When you watch TV, the standby timer isn't reset at the end of the show - it starts with the last user input it has.
    This posting is provided "AS IS" with no warranties, and confers no rights.
  •  
    JessZahn:
    Yeah, that's what I said was by (maybe not good) design. When you watch TV, the standby timer isn't reset at the end of the show - it starts with the last user input it has.


    ok, I misunderstood what you were saying.

    If WMC was designed to behave like that it actually contravenes MS documentation.

    "Multimedia applications, such as video players and presentation applications, must use ES_DISPLAY_REQUIRED when they display video for long periods of time without user input."

    For anyone who is looking for a "fix", I'll be adding something to the next rev of DTB that addresses this issue.




  •  
    What Jessica is saying is that the idle timer only resets on a key press.  After a show finishes, Media Center clears its ES_SYSTEM_REQUIRED bit so the machine can then idle to standby, but since the idle timer has been counting since the last key press, it's probably already past the idle threshold and the system goes to sleep immediately.

    They could reset the idle timers at the end by doing this:
    SetThreadExecutionState(ES_SYSTEM_REQUIRED);  //reset system idle timer
    SetThreadExecutionState(ES_CONTINUOUS);  //clear the state so idle timers can run again

    This would only keep it awake until the regular idle threshold from the power settings is hit again, then the machine would still go to sleep... but you'd have some extra time.

    You really need a way to clear the execution state but say "pretend I'm still in the last state for XX seconds even after I close my thread".
  •  
    kballs:
    What Jessica is saying is that the idle timer only resets on a key press.  After a show finishes, Media Center clears its ES_SYSTEM_REQUIRED bit so the machine can then idle to standby, but since the idle timer has been counting since the last key press, it's probably already past the idle threshold and the system goes to sleep immediately.

    They could reset the idle timers at the end by doing this:
    SetThreadExecutionState(ES_SYSTEM_REQUIRED);  //reset system idle timer
    SetThreadExecutionState(ES_CONTINUOUS);  //clear the state so idle timers can run again

    This would only keep it awake until the regular idle threshold from the power settings is hit again, then the machine would still go to sleep... but you'd have some extra time.

    You really need a way to clear the execution state but say "pretend I'm still in the last state for XX seconds even after I close my thread".


    I understand the problem... My point was that MS in it's documentation for SetThreadExecutionState actually uses this use case as an e.g. of when to call SetThreadExecutionState(ES_DISPLAY_REQUIRED) (the link I posted above goes to the doc published on MSDN); the WMC TV team didn't do this, by design.

    I'm adding this to the CommercialSkip Addin application in DVRMSToolbox to 'fix' my experience, so anyone else who doesn't like the way WMC handles this can benefit.
  •  
    Media Center does call SetThreadExecutionState(ES_DISPLAY_REQUIRED) to keep the display on while watching video content... but when a recording is done playing, the state is cleared so that the display can idle off (no reason to keep it on when the system is sitting idle in the menu with no user input).  Windows will try to shut the display off and/or go to sleep immediately after all callers clear their SetThread bits if the idle timers are beyond the values set in the power settings (unless you reset the timer using pulse/non-continuous mode).

    To clarify, this is the way most media apps work when playing video:

    SetThreadExecutionState(ES_SYSTEM_REQUIRED | ES_DISPLAY_REQUIRED | ES_CONTINUOUS);  //keep the display and system on until we call SetThread again
    //...
    //playing video content
    //...
    //done playing video content
    SetThreadExecutionState(ES_CONTINUOUS);  //clear execution state and allow system to go to sleep

    If the idle timers are > policy setting at this point, the system will go to sleep/shut off monitor immediately, unless you reset the timers with pulse mode:
    SetThreadExecutionState(ES_SYSTEM_REQUIRED);  //reset sleep timer - it will then contine to accrue even if you don't call SetThread again
    SetThreadExecutionState(ES_DISPLAY_REQUIRED);  //reset display timer - it will then continue to accrue even if you don't call SetThead again
  •  
    kballs:
    Media Center does call SetThreadExecutionState(ES_DISPLAY_REQUIRED) to keep the display on while watching video content... but when a recording is done playing, the state is cleared so that the display can idle off (no reason to keep it on when the system is sitting idle in the menu with no user input).  Windows will try to shut the display off and/or go to sleep immediately after all callers clear their SetThread bits if the idle timers are beyond the values set in the power settings (unless you reset the timer using pulse/non-continuous mode).

    To clarify, this is the way most media apps work when playing video:

    SetThreadExecutionState(ES_SYSTEM_REQUIRED | ES_DISPLAY_REQUIRED | ES_CONTINUOUS);  //keep the display and system on until we call SetThread again
    //...
    //playing video content
    //...
    //done playing video content
    SetThreadExecutionState(ES_CONTINUOUS);  //clear execution state and allow system to go to sleep

    If the idle timers are > policy setting at this point, the system will go to sleep/shut off monitor immediately, unless you reset the timers with pulse mode:
    SetThreadExecutionState(ES_SYSTEM_REQUIRED);  //reset sleep timer - it will then contine to accrue even if you don't call SetThread again
    SetThreadExecutionState(ES_DISPLAY_REQUIRED);  //reset display timer - it will then continue to accrue even if you don't call SetThead again


    do a gut check, if you're watching a show and when it ends the computer immediately shuts down does that seem like a proper behavior?  when my kid asks why the tv's broken when his show ends the answer seems pretty obvious to me.

    I disagree with your interpretation of the documentation, personally I read it to state that SetThreadExecutionState should be called periodically with the ES_DISPLAY_REQUIRED flag when displaying video (which is consistent with how I want it to behave, and how it behaved in MCE 2005).  If you take a careful look at what's written, in one case it states that ES_SYSTEM_REQUIRED | ES_CONTINUOUS should be used, but when addressing video application it only referers to ES_DISPLAY_REQUIRED.  Now this could be an omission, and maybe I'm reading too much into it, but I don't think so...

    If you're happy with the way it works now, that's fine with me.  I'm not, and obviously the person who started this thread isn't either.  If MS wants to characterize this as a feature, that's OK too; I don't agree with the decision, I would characterize it as a bug, but it's not my application and it's not so severe that it can't be "fixed".

    One of many great things about using a PC based PVR is that we have options for correcting these sorts of issues.  I'm just providing an option to those that don't like this "feature".
Page 1 of 3 (43 items) 123