Resume from Suspend or Hibernation (S3, S4) - corrupt graphics
#1
Sad 
I've used beta 2 and final, and basically if i have XBMC running, suspend or hibernate, then resume, the graphics in XBMC are garbled. Some icons remain unaffected, but the majority of the graphics are all over the place. It only affects XBMC.

If i then terminate XBMC and start it up again, it still has the corrupt graphics. The only way to solve it is a full shutdown and reboot, which is a royal pain in the backside as you can imagine.

I am using a GMA950 int. chip.
Reply
#2
Sounds like your gfx driver doesn't recover from sleep states properly (aka not an xbmc problem). Make sure you have the latest drivers from Intel's website.
Reply
#3
if i switch to the desktop or minimise xbmc it's fine, It's only xbmc that's garbled.

My drivers are current Smile
Reply
#4
It's easy to blame the gfx drivers. I've tried it on several machines and they ALL appear to have problems when resuming from standby, only in relation to XBMC. It varies from a totally garbled screen to unreadable text. I've made a ticket a while ago. It has been postponed.

Funny thing is, when accessing a menu and then go back to the main menu resolves the problem. The solution would be to redraw or reinitialize the screen, the moment XBMC senses the computer resumes from standby.
Reply
#5
DragonFly Wrote:Funny thing is, when accessing a menu and then go back to the main menu resolves the problem. The solution would be to redraw or reinitialize the screen, the moment XBMC senses the computer resumes from standby.
And this is the difference between you and intranex

Quote:If i then terminate XBMC and start it up again, it still has the corrupt graphics.

Don't know how we could fix this in XBMC.
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.
Reply
#6
... I wonder if, in the long run, sticking to OpenGL is going to be a good idea for Windows. While I understand the principle behind the decision, unfortunately it seems to create more problems every day. Sad Specifically because there's nothing we can really do to influence the quality of drivers.
What do you think WiSo?
Reply
#7
Didn't I wrote it in one of the stickies (not sure about it)?
Using DirectX means to separate a lot of code from the other ports which mean we aren't really cross platform anymore.
Also Screensaver (whenever they come) or Visualizations needs to be rewritten and the interface too.
I'm no DirectX expert so meaning switching to it we would need a DirectX developer who would take care of it not to mentioned that we won't gain from any improvements done with the upscaler or other Video related things since it would be different.
To be honest I think it could also be possible that the win port won't be updated anymore in regard to the video functions which at the end would mean the dead of XBMC for Windows.
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.
Reply
#8
I didnt really want to turn this into a dirextx thread(although it would be great!)

Is there anything i can try to sort this problem out? i've tried older drivers also

one thing worth noting is that with beta2, the graphics would be all over the place, moving, scrolling all over the place,

with the final, the graphics are still all over the place, but static!
Reply
#9
ashlar Wrote:... I wonder if, in the long run, sticking to OpenGL is going to be a good idea for Windows. While I understand the principle behind the decision, unfortunately it seems to create more problems every day. Sad Specifically because there's nothing we can really do to influence the quality of drivers.
What do you think WiSo?

perhaps we'll one day see a windows fork such as plex for os x Smile
Reply
#10
WiSo Wrote:Didn't I wrote it in one of the stickies (not sure about it)?
Using DirectX means to separate a lot of code from the other ports which mean we aren't really cross platform anymore.
That's why I mentioned that I understand the principle. Smile
Quote:Also Screensaver (whenever they come) or Visualizations needs to be rewritten and the interface too.
I'm no DirectX expert so meaning switching to it we would need a DirectX developer who would take care of it not to mentioned that we won't gain from any improvements done with the upscaler or other Video related things since it would be different.
To be honest I think it could also be possible that the win port won't be updated anymore in regard to the video functions which at the end would mean the dead of XBMC for Windows.
That would be *really* bad and would lose a ton of audience to the application.

While you deserve unending kudos for deciding to go the platform agnostic way, I'm only afraid that by going SDL, and considering the state of drivers, platform agnosticism will mainly work against the Windows platform which, for reasons completely debatable, still caters for the grand majority of potential users. I'm reading many times "it's the drivers, we can't do anything" and, in the long run, this doesn't promise anything good for the future.

One thing I haven't fully understood is why DirectX is so tough, considering that XBMC originally was born on a DirectX based machine.
Reply
#11
intranix Wrote:Is there anything i can try to sort this problem out?

There are several solutions:
  • Have Eventghost (or similar like IRSS) quit XBMC before resuming and subsequently start it again after resuming.
  • Do nothing while going into standby and have Evenghost execute a reload skin when resuming from standby or activate a menu and then go back (solves the garbled text in my case)

Seeing that in your case even an XBMC restart (after resuming) doesn't fix your problem, the first option would be the best as it quits XBMC before standby.

Also try some settings in your BIOS regarding S3 and S4 in the power management settings. Things like “reinitialize or resume video after S3” or something alike.
Reply
#12
It's my understanding that windows hibernation isnt a suspend state as such, i mean, i can completely unplug my pc and plug it in in a year and it'll still work, because the ram is written to the hdd, and then re-read when booting up, the video is re-initialised in this case?

resuming from hibernation is actually worse, XBMC actually locks it up completely, i cannot terminate it or use keyboard/mouse.
Reply
#13
When I resume after a suspend my audio disappears, but only from XBMC. I need to restart xbmc for the audio to come back, which is a bummer since I need my keyboard for that...
Reply
#14
Try the following manually:
  • Close XBMC
  • Goto Hybernation or Standby
  • Start XBMC manaually after waking up

Do you still have garbled screens?

No matter what the Sleep state, Windows needs to reintialize the videocard on a totally different way than a normal boot

To rule out XBMC's part in this, start any OpenGL app or game, hit the sleep button, resume and check if the game displays any distorted graphics.
Reply
#15
I use hibernate every day on XBMC and don't have any problems with corrupt graphics, so the problem is not inherent to XBMC and is almost certainly a graphics driver issue. As DragonFly suggests, try any other OpenGL app, I bet that's corrupted as well when you resume. Your other applications and the desktop look fine because they are running through GDI or DirectX/Aero.

Let us know what graphics card you have and which driver version you're running.
Reply

Logout Mark Read Team Forum Stats Members Help
Resume from Suspend or Hibernation (S3, S4) - corrupt graphics0