New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Mode whitelist #13274
Mode whitelist #13274
Conversation
❤️ the idea about using a whitelist but have two comments / suggestions:
|
@Kwiboo thanks for the input!
I'll try and think about these two problems |
@lrusak I think that if the setting was saved as a list of strings both my concerns could be addressed. If the This will probably require a little bit more complex handling for selecting and saving the whitelisted modes. |
updated to now save as strings rather than an index.
|
pushed another quick fixup that will allow the default behaviour when the whitelist is empty |
Any other opinions? |
We could add a button to the dialog "Select all/none". Then blacklist fans can select all and then deactivate non desired ones |
We need to persis the whitelisted modes with a platform indenpended name somewhere. |
@FernetMenta can you please explain this statement? |
oops, lots of typos. f*** tablet :) |
I am very very interested to that feature of upscaling/downscaling. |
@FernetMenta I did some tests. In my guisettings.xml modes are persisted like I guess b752a85#diff-8d943449895d0ff6b503e49c8ecf6868R697 is responsible for persisting the modes. |
I also did the following test:
So from my point of view, everything works as expected. |
Works by chance because in both cases screen number is 0. When finding modes, screen has to be ignored. |
@lrusak can you pick a1rwulf@a9496bd please. Edit: Update the commit to reflect feedback from @FernetMenta |
thanks @a1rwulf !! |
Anything else needed for this to go in? |
@a1rwulf I think everyone should be happy now. I should reset the commit dates though. |
If nobody objects I'd like to merge this by end of this week. |
Good! When merged I can test on my Nvidia Shield. |
pushed a fix that sorts the modes in the whitelist. Also I am including RES_DESKTOP now so I'll have to tweak gbm windowing so that it doesn't show the same mode twice. |
@@ -655,12 +655,17 @@ RESOLUTION CDisplaySettings::GetResolutionForScreen() | |||
return RES_DESKTOP; | |||
} | |||
|
|||
static inline bool ModeSort(std::pair<std::string, std::string> i,std::pair<std::string, std::string> j) | |||
{ | |||
return (i.second > j.second); |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
I've removed the verbose logging. I think this is ready to go 👍 |
merge? |
+1 |
1 similar comment
👍 |
Why on the latest nightly for Android the mode Whitelist is not available? |
This PR breaks multimonitor setups. The switch "Fullscreen on Monitor #i" always jumps back to monitor No.1. The only way to get the fullscreen on monitor 2 is to switch to window mode, manually move the window to the second monitor, hit alt+enter to get into the fullscreen mode and adjust the resolution to the correct one. On a restart of Kodi I have to do it again. My monitor setup (if required to know) Debug log: https://paste.ubuntu.com/p/bqS8q3ZbMK/ |
Windows is a bit behind in this regard. Instead of numbering monitors by 1,2,3,.., monitors are supposed to have a name. Screen numbers in resolutions will go away. |
Hey guys, the Windows devs appear to have only found out about this causing windows breakage a few minutes ago. If a break is found and known, might be worthwhile to ping @afedchin or whoever the platform dev is and let him know at the time, as well as pointing out how and where to fix it. Communication is always good. |
I am wondering if there is any dev left who has turned on github notifications. |
I'm wondering if you have a time to inspect all PRs. It's easy to skip something really important (like personal ping) in this spam from GH. Even If I had notifications enabled this PR has the title which has no words what it breaks multimon configs but in fact it does. |
Since this PR does affect all platforms I assumed that all platform devs did observe it. Seems I was wrong. |
RESOLUTION res = CDisplaySettings::GetInstance().GetDisplayResolution(); | ||
RESOLUTION_INFO info = CDisplaySettings::GetInstance().GetResolutionInfo(res); | ||
|
||
for (auto index = (unsigned int)RES_DESKTOP; index < CDisplaySettings::GetInstance().ResolutionInfoSize(); ++index) |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
Whitelist broke my 1080i resolution. 1080p ist not possible on my tv. In Resolution i can choose 1080i but it switch to a 1080p 50/59 or 60 resolution. |
time to replace your tv with a newer model |
an Oled >65inch is on my whishlist... until then is there a way to disable it logic... until end of april it was no issue. |
Whitelist broke my 1080i resolution, too. In Settings-System-Display-Resolution 1920x1080i is listed. Only way to get Display Resolution to 1920x1080i is manually editing the guisettings.xml Didn´t have this before whitelist was introduced in KODI |
Guys. Kodi outputs progressive. Whatever you force on your 1080 interlaced resolutions makes a bsolutely no sense. Edit: Or is this some "3D hack"? |
just tested with LibreELEC-S905.arm-9.0-nightly-20180607-36c2619 |
@lrusak could you workout with your LE guys ;-) about pending / in place AMLogic hacks? Not sure how in their universe progressive content looks fine on interlaced outpud modes - therefore no idea what those builds include. |
Don´t know if we are talking about the same thing. All I said is :
have to edit guisettings.xml with winscp :
otherwise it won´t work |
I need to relativate my initial problem. After update to a more recent Version Kodi from 2nd June my system switched to SD resolution. i tried to set to via resolution 1080i which was showed me twice. both was resulting in "mode not supported" on my Plasma HdReady screen. I downgraded and sleep a night. Today i tried again. Same bahaviour today. No suprise. But now i was looking into xrandr and it switched always to 60Hz 1080p when i selected 1080i. After connecting to system via vncviewer i tried different option and after swithing to 1080p i found 25p for refresh rate. I know 25p is the equivalent to 50i. Now i have at least picture again with 1080i. I am not sure if it was desired like it is now. For frame rate switching i have used advancedsetting xml to avoid switching to 50p for example. |
Pleas use the forum's and/or trac for issue reports. This is a dev space. |
@FernetMenta wanted me to PR this to get some more visibility. I'll add what I had already posted to the internal boards.
Just wanted to start a discussion that won't get lost in slack.
For those that don't know the display and refresh rate switching logic in kodi is rather complex yet it doesn't quite fit everyone's needs. @FernetMenta proposed that we create a set of
whitelisted
resolutions that one can select and create a logic for kodi to switch to only thesewhitelisted
modes.Some reasons to do this is as follows:
The problem with this come down to adding yet another setting. More settings generally decrease the user experience. So how can we make things simpler not more complex?
whitelisted
modes. (add all refresh rates from the desktop resolution automatically)whitelisted
modes are defined.Currently the logic is this:
Sample GUI
Sample outputs below.
Please comment to explain why you ❤️ or 💀 this idea and any further logic or comments about usability below