Posts: 17
Joined: Feb 2016
Reputation:
0
shteve
Junior Member
Posts: 17
Yep, I've started getting this too. I find just playing any video file will correct it.
Windows 10 x64, Intel i3 NUC, Intel HD graphics, through a Yamaha rx750 amp via HDMI to a Samsung TV at 1080p - so no similarities hardware-wise. Usually it's just the screen enlarged, but for the first time yesterday I had that tiny squashed screen in the top left of the desktop. I am using full screen, so it does feel odd that the desktop was visible when that happened.
Posts: 59
Joined: Apr 2012
Reputation:
6
2016-03-12, 04:06
(This post was last modified: 2016-03-12, 04:06 by Scythe42.)
Disabling AMD External Events Service handles certain power management stuff, this includes clocking the card up and down when needed as well. It also monitors the driver, state of the GPU and other related stuff. Yes, also handles hotplugging of devices. Quite a vital service in general for most setups.
If you disable it and play a game for example, it might happen that the GPU will not clock down later depending on which GPU and driver version you use. Worth a try if it is working for a given combo. Check with some GPU monitoring tool if the throttling of the GPU still works on your system. Though when playing movies your GPU is probably idle anyway...
The service does not have a UI to configure it, but you can control a ton of the GPU power management and related functions (unsupported of course)
That you did not see the problem on your system with 15.2 before upgrading is probably due to some registry keys that overriding the default resolution Windows should fallback to. Why they reset around the time of your 16.0 installation I cannot tell you. Must have been something else and Kodi does not fiddle with this to my best of knowledge (or there was a reference in the registry to Kodi 15,2 to prevent resetting these values as long as it was installed, meaning difference in settings in various parts of the registry related to software installation).
So give it a shot and try to set a new default resolution and see if it works for your setup.
HKEY_CURRENT_CONFIG -> System -> CurrentControlSet -> Control -> Video
Then there is an ID for the GPU, displays and so on different on each system. Under that you find a value named "0000". The correct one usually lists a display name below "0000" as well, which helps you to identify the right key. There might be quite a lot IDs there depending on your system and what changed there over time.
Below that are the settings Attach.RelativeX and Attach.RelativeY, DefaultSettings.XResolution, DefaultSettings.YResolution. (first combo is the current resoltution, 2nd combo is the default resolution the display support).
Setting the default to e.g. 1920x1080 might prevent Windows to fallback to a default resolution when a display is disconnected by whatever means and therefore making windows on the screen smaller. Depends on the GPU, driver version, and the involved Hardware in the chain as well depending what announcements it sends. It might send information to Windows that take precedence over these settings.
If you never experienced the problem before then by whatever means it is likely that some other default values where set here. Give it a shot.
Also give DefaultSettings a quick search through your registry in case at some other HKEYs values are there that will override the current control set later. Now we enter the territory where EDID information is stored. But unlikely that this is involved or plays a role. But it could...
And for some ppl. good old HDMI Pin 19 trick might work (or Default Settings plus Pin19)
Also it might be worth to test Exclusive Fullscreen vs. Fullscreen (aka Borderless Window). Contrary to popular belief on modern Windows version you should only choose exclusive Fullscreen if you really have to as certain GPUs/Driver combos behave different here. Not going into that here or starting a discussion...
But as said, a Software is responsible to deal with resolution change announcement by the OS. If not Windows will just put it at screen coords 0.0 and scale down if needed (but never scales up again). The later is what a Software needs to do.
Minimizing the app to the background on sleep (display removal plug and play message is sent by the OS when entering sleeping) is also a solution for a software to deal with this. But then it needs to handle automatically restoration if it was not put in the background manually.
Let me know if the Registry Keys work for your setup as it might help other as well until Team Kodi deal with this issue (or someone provides a PR - as said I don't know the Windows code base here to provide one quickly - might take a look at this tough if I find some time).
Posts: 1,772
Joined: Aug 2009
Reputation:
24
Derek
Posting Freak
Posts: 1,772
Pin19 works more than it fails if you can do it correctly.
Posts: 34
Joined: May 2012
Reputation:
0
jht3
Junior Member
Posts: 34
FWIW, since disabling the service Kodi has been stable all day. this pc is dedicated 100% to kodi so i'm not sure if it matters about the side effects you mentioned. i'm also forcing my monitor resolution w/ a EDID override now.
i'll look into my registry settings, as i've never heard of them described before. i've had this same install running for 4+ years so no telling what junk is there. what is odd is my Kodi resolution would change in two ways...a small 1/4 size window in the top left corner, and a 4x zoomed in window. so your explanation of it reverting to some sort of default size doesn't make sense to me as the size it changed kept switching.
Posts: 59
Joined: Apr 2012
Reputation:
6
The size of the window should always be the default resolution your system reverts to, usually 640x480 per standard: But some displays force 1024x768 to be the lowest resolution. It is 1/4th you are seeing.
The 4 times zoomed in is the same thing. It is the the default resolution part of the D3D backbuffer scaled to the screen size and later "cropped" to the default resolution.
When resolution change there are some sideffects on D3D if resolution changes are not handled at all. There is some "scale to fit window" stuff that plays a role here that takes place automatically when the resolution change event is not handled. Just a different symptom with the same root cause.
If fixed this stuff and some multi display and other stuff in MediaPortal some years ago. Exactly the same symptoms, different setups showed different symptoms of the same root cause.
As said the Registry Keys might work on some system. The question is here if the GPU Driver will always honor these or if something in the driver for that GPU or something in the HDMI/Display Port chain will take preference.
And if it's a dedicated HTPC machine you should not have any problems with turning off the External Events service. The GPU will always be under the threshold for serious up and downclocking anyway.
Posts: 34
Joined: May 2012
Reputation:
0
jht3
Junior Member
Posts: 34
based on your previous post, i dug into the registry and I have three keys under the tree you mentioned, all with a default res os 1024x768 but no way to determine which of those three is active/maps to my gpu (amd apu). i then searched the entire registry for DefaultSettings and found a ton of entries in HKLM that look VERY like those in HKCC, except a few list 1920x1080 as the resolution and look like the values i'm forcing w/ custom monitor.inf.
anyways, i chose not to muck around in there and leave my current setup (custom .inf and disabled amd service) as its the most stable its been in years. i have a few things in my chain between the htcp and screen that can mess w/ edid and resolution....cat5/hdmi baluns and hdmi switch, so i'm leaving well enough alone. i've been through multiple tv's, amd driver updates, and kodi versions that probably added all these values. if i ever "upgrade" to 8.1 or 10 (or just reinstall 7), maybe i'll play w/ those.
Posts: 59
Joined: Apr 2012
Reputation:
6
Yeah with all the changes over the years accumulate as Windows is remembering these setups for the purpose of re-identification, disabling of the service should be your safest bet on a dedicated machine.
But would not hurt trying to set the three value in HKCC to 1920x1080 and see if that might be enough, meaning nothing else takes precedence in your setup.
You could also look into providing a custom monitor.inf that tells Windows 1920x1080 is the only supported resolution. Though I never tried that as I never had the need for an EDID override myself.
Cat5/HDMI baluns should have no side-effects. At least not the ones I use ever made any issues in any setup. For me they were always plug and play....
My system went through similar iterations but including cloned installations from one machine to another beside upgrades since Vista. No reinstallation ever took place.
But once I upgrade to 4K I will have to revisit this problem for sure as with 4K TVs new stuff comes in here. At this time I am probably force to patch XBMC to deal with resolution changes on Windows and related stuff...
Posts: 34
Joined: May 2012
Reputation:
0
jht3
Junior Member
Posts: 34
i've been experiencing odd display issues with other devices too. cisco fios box especially as it doesn't appear to meet all the hdmi/hdcp specs and i get a solid blue screen with two devices inline...the cat5/hdmi adapter and hdmi switch. workaround was to ADD an hdmi splitter using only one leg to "reclock" the signal and all works. so while the cat5 converters and switch SHOULDN'T muck with the signal, i find that it does due to poor vendor implementations. i've tried other switches w/ the same results, so who knows. the chip used by the convertors are all the same so that shouldn't be the issue either. i've also tried numerous hdmi cables, etc.
while i have a custom .inf for my display, it is possible i don't need it due to this AMD driver/service getting in the way. but i still doubt it as i have similar resolution/edid issues when trying kodi on linux (openelec and custom installs). another symptom i've been experiencing is losing the hdmi audio ouput in windows.
so at least for me, the edid override and disabled service seems to be the fix i've been looking for. for the last couple days both windows and kodi have been rock solid. and thanks to you i've learned more about what windows is doing behind the scenes.