• 1(current)
  • 2
  • 3
  • 4
  • 5
  • 7
Kodi doesn't choose the correct resolution from the whitelist
#1
Hi, I've just bought a new LG oled C3 and I'm running Kodi nightly v21 (20240114) on a Fire TV Stick 4K Max 2gen; the stick is connected derectly to the TV. I've set the adjust display refresh rate to start/stop and then I've whitelisted all the resolutions that my TV is capable of. 
If I play a 480p, 576p, 720p or 1080p Kodi always chooses to otput at 1080p at the Hz frequency that matches the source and also the Fire stick and, even stranger, the TV stay in that resolution. What I mean is that during the playing both the Fire Stick X-Ray overlay, from the developer tools, and the TV display infos show the same resolution that Kodi has choosen. On the other end whenever I play a 4K video Kody outputs it at 4K and the other devices follow that.

I really don't get two thing:
1) Why in the first place Kodi decides to output every low resolution at 1080p, even if it has lower resolution to choose from wich have also the right Hz
2) Why my TV doesn't upscale everything to 4K. As far as I know the panel shoud always works at 3840x2160 upscaling everything and of course match the Hz

This happends equally with the GUI set to 1080p and 4K. I know it has nothing to do with the refresh rate matching function, but I've tried just to test.

Any idea ? Thanks
Reply
#2
I've done further tests and I have to partially correct myself. According to Kodi my TV supports the following resolutions:

720x480       60Hz
720x576       50Hz
1280x720     50Hz - 59.94Hz - 60Hz
1920x1080   23.98Hz - 24Hz - 29.97Hz - 30Hz - 50Hz - 59.94Hz - 60Hz
3840x2160   23.98Hz - 24Hz - 29.97Hz - 30Hz - 50Hz - 59.94Hz - 60Hz

The GUI is set to 1080p 60Hz. So let's say for example that I play a video at 720p 25Hz. Kodi choses to playback that at 1080p 25Hz and also the screen resolution reports 1080p 25Hz. The behavior is the same with every other resolution I've tried so, just to mention, a 576p 25Hz is played back at 1080p 25Hz and a 720p 23,98Hz at 1080p 23,98Hz. Reading other posts I've learnt that if there's no matching Hz, in the withelist, Kodi will choose the first matching resolution with that Hz.

Said that I still don't get three things:
1) Why not choosing to play it at 720p 50Hz doubling the refresh rate (I've toggle both double refresh rate and 3:2 pulldown)
2) Why the TV shows the same resolution outputting from Kodi and not the full 4k
3) In these cases Kodi upscales to 1080p and then the TV from there to 4K ?

If that wasn't already a good mess by itself then setting the GUI at 4K changes the situation because then Kodi will output the videos at 2160p with the matching Hz and in that case also the TV will show the 4K resolution.
On the other hand 4K files are always played at the correct resolution in every scenario and all the devices show the correct 4k resolution.

Now my assumption is that the TV doesn't show the actual screen resolution, but what it gets from the HDMI input... and then it upscales everything at 4K. But I'm just making assumption, I didn't find a way to check if that's the case...

I'm quite confused....
Reply
#3
enabling "allow double refresh rates" should allow kodi to select 720p
Reply
#4
(2024-01-18, 16:04)wsnipex Wrote: enabling "allow double refresh rates" should allow kodi to select 720p

Yes that's what I thought too, but Kodi instead chooses 1080p 25Hz and I don't know why...
Reply
#5
We also don't know, cause you did not post your Debug Log
First decide what functions / features you expect from a system. Then decide for the hardware. Don't waste your money on crap.
Reply
#6
(2024-01-19, 03:27)fritsch Wrote: We also don't know, cause you did not post your Debug Log

There you go: Debug Log

I played 4 videos: 576p, 720p, 1080p, and 2160p. I hope this could help. Let me know if you need anything else.

Thanks in advance for your time.
Reply
#7
Every gets selected correctly in that log even the 720p one.

Code:
Stream #0:0(eng): Video: h264 (High), yuv420p(progressive), 1280x720 [SAR 1:1 DAR 16:9], 25 fps, 25 tbr, 1k tbn (default)
...
[WHITELIST] Searching the whitelist for: width: 1280, height: 720, fps: 25.000, 3D: false
[WHITELIST] Searching for an exact resolution with an exact refresh rate
[WHITELIST] No match for an exact resolution with an exact refresh rate
[WHITELIST] Searching for an exact resolution with double the refresh rate
[WHITELIST] Matched an exact resolution with double the refresh rate 1280x720 @ 50.000000 - Full Screen (34)
Display resolution ADJUST : 1280x720 @ 50.000000 - Full Screen (34) (weight: 0.000)
Reply
#8
Ok, but then there's
Code:
CRenderManager::Configure - change configuration. 1920x1088. display: 1920x1080. framerate: 25.00.
...
[WHITELIST] Searching the whitelist for: width: 1920, height: 1088, fps: 25.000, 3D: false
[WHITELIST] Searching for an exact resolution with an exact refresh rate
[WHITELIST] Matched an exact resolution with an exact refresh rate 1920x1080 @ 25.000000 - Full Screen (32)
[WHITELIST] Searching for an exact resolution with double the refresh rate
[WHITELIST] Matched an exact resolution with double the refresh rate 1920x1080 @ 50.000000 - Full Screen (28)
Display resolution ADJUST : 1920x1080 @ 25.000000 - Full Screen (32) (weight: 0.000)

And that's what both player debug info and display info show: in the end the video is played at 1080p 25Hz not at 720p 50Hz

Am I wrong ?
Reply
#9
I think there is a misinterpretation how kodi's algorithm works. So here I tell it.
Kodi does NOT choose the higher refreshrate by default IF (!) you have also the lower rate whitelisted.
Reason: Why would you whitelist 25 hz if you don't want it to be used.

Search Double Rates only means: If you don't have e.g. 25 hz available, also please search 50 hz matches and so on.

Code explanation:
25 fps comes here:
unsigned int pen = abs(info.iScreenHeight - height) + abs(info.iScreenWidth - width);
penalty = pen;

now 5 fps comes here:
unsigned int pen = abs(info.iScreenHeight - height) + abs(info.iScreenWidth - width);

        if (pen < penalty) // false as it is exactly the same pen as above in green.
        {
          resolution = i;
          found = true;
          penalty = pen;
        }

So they are exactly "worth" the same. Which is why pen is not "exactly lower" than penalty, cause it is equal.

And the 25 hz is chosen.
Open question: Why does it work for 1280x720. Answer: There is not 25 hz, but only a 50 hz.

Suggestion:
If you want 50 hz for all 1920x1080 videos that are either 25 or 50 hz, simply remove the 25 hz from the whitelist and kodi happy chooses 50 hz for you.
First decide what functions / features you expect from a system. Then decide for the hardware. Don't waste your money on crap.
Reply
#10
From the option's description:
Select this option to allow using double refresh rates (playing 29.97 FPS video on a 59.94 Hz monitor or playing 30 FPS video on a 60 Hz monitor). You may want to use this option if your monitor doesn't have a 29.97 Hz or 30 Hz mode.
->Allow double refresh rates

It does not mean "ENFORCE" or "USE" the double refresh rate one ... as you, as the user have whitelisted the 25 hz one, kodi thinks that you - as you set it - also want it ... if you don't want it, remove it ;-)
First decide what functions / features you expect from a system. Then decide for the hardware. Don't waste your money on crap.
Reply
#11
Maybe I didn't explain myself well. I don't want to force Kodi doing something; I just wanna have the best experience I can with my TV. That's why I've whitelisted all the available resolutions, precisely in order to prevent Kodi from upscaling and let the TV handles that.
My doubt was not about the 1080p and the 2160p, which are always played at the correct resolution and Hz; but I was wondering why Kodi chooses to play the 576p and the 720p at 1080p when it has lower resolutions to choose from.

For example, let's take the 720p. The resolution is 720p 25Hz then because I have only 720p at 50Hz Kodi can't play that as a "3:2 pulldown" or "double resfresh rate" because of course there's not a 720p resolution that can be used in order to achieve at least one of these scenarios. Right ?
Therefore it chooses the first available resolution that's 1080p 25Hz.

Did I get this wright ?
Reply
#12
I take back what I've just said. I've just removed the 1080p 25Hz from the whitelist and now Kodi chooses 1080p 50Hz. So my doubt persist: if the video is 720p 25Hz why not choosing 720p 50Hz ? Why forcing it to 1080p Hz ? I simply don't get the reason behind this behaviour...

I mean it abviously can double the refresh rate so why also force an upscale ? It selects 1080p 50Hz so it has to upscales and also double the refresh rate. On the other hand if it would have choosen the 720p 50Hz it would have only to double the refresh rate without upscaling the video... It would have been less work and also a better choice because the TV can upscale better...
Reply
#13
Kodi seems to find correct mode each time, but after 1-2 seconds of playback the video output is reset and Kodi retries with 1080p which then works without cutting.

Maybe FireTV just doesn't like these low res modes?

I don't think it really matters, though. Kodi does just fine upscaling to 1080p. You might try whitelisting only 4K modes so Kodi upscales everything to 4K. I don't think you can see the difference in either case.
Reply
#14
(2024-01-20, 04:38)Zuikkis Wrote: Kodi seems to find correct mode each time, but after 1-2 seconds of playback the video output is reset and Kodi retries with 1080p which then works without cutting.

Maybe FireTV just doesn't like these low res modes?

I don't think it really matters, though. Kodi does just fine upscaling to 1080p. You might try whitelisting only 4K modes so Kodi upscales everything to 4K. I don't think you can see the difference in either case.
Of course if I whitelist only 4K resolutions then Kodi will upscale everything to 4K and that's exactly what I wanna avoid. Actually I'm trying to achieve the exact opposite. Kodi has to select the best resolution in order to avoid upscaling and possibly also the refresh rate manipulation.

At least I'm not the only one who have seen it. As you said too in the first place Kodi selects the best resolution, so if we take as an example the 720p it chooses 720p 50Hz (double 25Hz), then it changes its mind and selects 1080p 25Hz. Same behaviour with the 576p, on the other hand with the 1080p and the 2160p everything it's ok.

As you suggested maybe it's the fire stick that triggers this behaviour; maybe that's its fault.... I don't know...
Reply
#15
(2024-01-20, 01:01)Kayn Wrote: Maybe I didn't explain myself well. I don't want to force Kodi doing something; I just wanna have the best experience I can with my TV. That's why I've whitelisted all the available resolutions, precisely in order to prevent Kodi from upscaling and let the TV handles that.
My doubt was not about the 1080p and the 2160p, which are always played at the correct resolution and Hz; but I was wondering why Kodi chooses to play the 576p and the 720p at 1080p when it has lower resolutions to choose from.

For example, let's take the 720p. The resolution is 720p 25Hz then because I have only 720p at 50Hz Kodi can't play that as a "3:2 pulldown" or "double resfresh rate" because of course there's not a 720p resolution that can be used in order to achieve at least one of these scenarios. Right ?
Therefore it chooses the first available resolution that's 1080p 25Hz.

Did I get this wright ?
No.

1280x720     50Hz - 59.94Hz - 60Hz

Is what you have available. Kodi chooses:

Stream #0:0(eng): Video: h264 (High), yuv420p(progressive), 1280x720 [SAR 1:1 DAR 16:9], 25 fps, 25 tbr, 1k tbn (default)
...
[WHITELIST] Searching the whitelist for: width: 1280, height: 720, fps: 25.000, 3D: false
[WHITELIST] Searching for an exact resolution with an exact refresh rate
[WHITELIST] No match for an exact resolution with an exact refresh rate
[WHITELIST] Searching for an exact resolution with double the refresh rate
[WHITELIST] Matched an exact resolution with double the refresh rate 1280x720 @ 50.000000 - Full Screen (34)
Display resolution ADJUST : 1280x720 @ 50.000000 - Full Screen (34) (weight: 0.000)
First decide what functions / features you expect from a system. Then decide for the hardware. Don't waste your money on crap.
Reply
  • 1(current)
  • 2
  • 3
  • 4
  • 5
  • 7

Logout Mark Read Team Forum Stats Members Help
Kodi doesn't choose the correct resolution from the whitelist0