2012-09-05, 01:44
Currently XBMC ignores the OS settings for energy saver/sleep modes and prevents any sleep for a Mac at all with the 'sleep' timer disabled in XBMC.
If you enable the Sleep Timer within XBMC, you can get some sleep functionality (while still ignoring the OS sleep setting), but it does so without any awareness or politeness around what processes are currently running on the host Mac. Any processes currently running when the XBMC idle timer runs out are ignored and the PC is put to sleep.
This overrides any background processes which have assertions into the OS X power settings to prevent sleep. For example, I use iTunes to stream video to various rooms in the house to Apple TV's while using XBMC as my primary HTPC media player. I also have scheduled backups which have begun failing as well. It also causes lost network connections when copying a large number of files because of this idle timer configuration. It will literally go to sleep right in the middle of the copy.
What I'm suggesting would be to make the sleep timer a bit more OS friendly. Instead of forcing the Mac to go to sleep, I'm requesting that you instead use a sleep assertion to prevent the mac from sleeping while XBMC is playing back content, or you are actively working in XBMC via the GUI. Once neither of these activities is going on, remove the sleep assertion from the OS and allow the OS to take over with managing the sleep setting. That way, XBMC would allow any OS activities that might need to keep the OS awake to do so. Once any apps remove all of their assertions, the system IDLE timer will count down to whatever setting you've set in the OS power settings and the Mac will go to sleep as designed.
I was told in the forums that the current setup is working as designed, and that leaving it in windowed mode would allow the OS to control the idle timer while fullscreen ignores the OS and uses XBMC's timer (if enabled, or it ignores the OS setting if disabled and in fullscreen). To me, running in windowed mode isn't a common use case since a typical user would install this on a media PC (HTPC) and run it at full screen. It also assumes that the ONLY process or app running on the Mac is XBMC while ignoring common tasks like backups, file copies, or any other activity outside of XBMC.
Thanks
If you enable the Sleep Timer within XBMC, you can get some sleep functionality (while still ignoring the OS sleep setting), but it does so without any awareness or politeness around what processes are currently running on the host Mac. Any processes currently running when the XBMC idle timer runs out are ignored and the PC is put to sleep.
This overrides any background processes which have assertions into the OS X power settings to prevent sleep. For example, I use iTunes to stream video to various rooms in the house to Apple TV's while using XBMC as my primary HTPC media player. I also have scheduled backups which have begun failing as well. It also causes lost network connections when copying a large number of files because of this idle timer configuration. It will literally go to sleep right in the middle of the copy.
What I'm suggesting would be to make the sleep timer a bit more OS friendly. Instead of forcing the Mac to go to sleep, I'm requesting that you instead use a sleep assertion to prevent the mac from sleeping while XBMC is playing back content, or you are actively working in XBMC via the GUI. Once neither of these activities is going on, remove the sleep assertion from the OS and allow the OS to take over with managing the sleep setting. That way, XBMC would allow any OS activities that might need to keep the OS awake to do so. Once any apps remove all of their assertions, the system IDLE timer will count down to whatever setting you've set in the OS power settings and the Mac will go to sleep as designed.
I was told in the forums that the current setup is working as designed, and that leaving it in windowed mode would allow the OS to control the idle timer while fullscreen ignores the OS and uses XBMC's timer (if enabled, or it ignores the OS setting if disabled and in fullscreen). To me, running in windowed mode isn't a common use case since a typical user would install this on a media PC (HTPC) and run it at full screen. It also assumes that the ONLY process or app running on the Mac is XBMC while ignoring common tasks like backups, file copies, or any other activity outside of XBMC.
Thanks