Opened 17 years ago
Closed 17 years ago
#6147 closed defect (fixed)
Changeset 18970 breaks screen saver handling in DVD playback
Reported by: | Owned by: | skamithi | |
---|---|---|---|
Priority: | minor | Milestone: | 0.22 |
Component: | mythtv | Version: | head |
Severity: | medium | Keywords: | |
Cc: | Ticket locked: | no |
Description
Since changeset 18970, if playing a DVD with still frames in the menus, the screen saver is enabled (as expected), but not disabled once the menu is exited.
I've tried to figure out how the still frame handling works between ./libs/libmythtv/DVDRingBuffer.cpp and ./libs/libmythtv/avformatdecoder.cpp but it's eluding me.
I've attached a log with playback,extra enabled which shows a failing session.
Attachments (4)
Change History (15)
by , 17 years ago
Attachment: | dvd_screensaver.log.gz added |
---|
comment:1 by , 17 years ago
Owner: | changed from | to
---|---|
Status: | new → assigned |
by , 17 years ago
Attachment: | dvd_screensaver_fix.diff added |
---|
comment:3 by , 17 years ago
Status: | assigned → infoneeded |
---|
comment:4 by , 17 years ago
I tried a similar patch myself, and whilst it does resolve the issue of the screensaver remaining active during playback, it appears to break the original functionality of activating the screensaver for still frames. From what I can tell, the problem relates to stored frames - one of which triggers the still frame code, but the subsequent one then releases it. So, for the specific DVD that I'm testing again, with this patch I'd see the screen saver enabled then immediately disabled. Unfortunately, I haven't been able to get my head around how the stored frame code works to figure out how to fix it.
To be honest, I'm not sure that I agree with the still frame screen saver code anyway. Personally, I'd like to see the screen saver enabled whenever menus were activated - these days, most DVD menus are not still frames, but video loops.
by , 17 years ago
Attachment: | dvd_screensaver_fix2.diff added |
---|
comment:5 by , 17 years ago
I've attached a patch which now enables/disables the screen saver based on whether the player is in the DVD menus at any point in time. It seems to work ok based on limited testing.
comment:6 by , 17 years ago
I have a slightly different problem. Part way through some DVD ISOs, the screen saver will activate. Seems only some DVDs not all, haven't had time to look at it further though.
comment:7 by , 17 years ago
Sounds like the same thing. The issue is dependent on the structure of the DVD's menus, so it doesn't affect all of them. You'll probably find that if you pause then resume playback once you're out of all the menus, that the screensaver won't kick in (pause/resume resets the screensaver state).
Try the patch, see if it helps.
by , 17 years ago
Attachment: | dvd_screensaver_fix3.diff added |
---|
slight modification of user attached patch (fix2)
comment:8 by , 17 years ago
Status: | infoneeded → assigned |
---|
enabling screensaver during the dvd menu sounds fine to me. attached fix3 patch, a slight modification of your patch. if it works fine for you i'll commit it. thx.
comment:9 by , 17 years ago
Fix3 doesn't appear to work. Looking at the GetScreensaverEnabled code, it uses a state variable which is only set by the DoRestoreScreensaver/DoDisableScreensaver routines. Not sure how these relate to the RestoreScreensaver/DisableScreensaver routines.
comment:10 by , 17 years ago
Changeset 19867 (which incorperates fix3 above) along with the other recent screensaver changes seems to have fixed the issue for me with the exception of the issue described in ticket #6193 (where DPMS is disabled at startup).
comment:11 by , 17 years ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Log from failing session