xbianonpi / xbian

XBMC on Raspberry Pi, Bleeding Edge
https://xbian.org
GNU General Public License v3.0
294 stars 44 forks source link

Xbian not keeping the choosen resolution #648

Closed bellini666 closed 7 years ago

bellini666 commented 9 years ago

Hi all,

Since the update to the packages, after the apt migration, my resolution keeps changing by itself on some actions.

For example, I set it to 1280 x 720. If I restart xbian, it will set it to 1024 x 768. When changing hdmi sources on the tv, sometimes it will do the same. Sometimes it will even set it to 640 x 480, making it really hard to go to the system preferences again.

Like I said, this started happening after the apt migration. Since then, I also started using staging to see if it would fix something, but until now, nothing has changes.

This is the related part (at least I think it's related) from when it was booting:

10:51:27 T:3037876224  NOTICE: Raspberry PI firmware version: Nov 13 2014 17:21:14 
                                            Copyright (c) 2012 Broadcom
                                            version 4b43a6c1fb32bd23b26f999eef78312d71df9b7a (clean) (release)
10:51:27 T:3037876224  NOTICE: ARM mem: 384MB GPU mem: 128MB MPG2:0 WVC1:0
10:51:27 T:3037876224  NOTICE: InitWindowSystem: Using EGL Implementation: raspberrypi
10:51:27 T:3037876224  NOTICE: Found resolution 640 x 480 for display 0 with 640 x 480 @ 60.000000 Hz
10:51:27 T:3037876224  NOTICE: Found resolution 720 x 480 for display 0 with 720 x 480 @ 60.000000 Hz
10:51:27 T:3037876224  NOTICE: Found resolution 1280 x 720 for display 0 with 1280 x 720 @ 60.000000 Hz
10:51:27 T:3037876224  NOTICE: Found resolution 1920 x 1080 for display 0 with 1920 x 1080 @ 60.000000 Hz
10:51:27 T:3037876224  NOTICE: Found resolution 720 x 576 for display 0 with 720 x 576 @ 50.000000 Hz
10:51:27 T:3037876224  NOTICE: Found resolution 1280 x 720 for display 0 with 1280 x 720 @ 50.000000 Hz
10:51:27 T:3037876224  NOTICE: Found resolution 1920 x 1080 for display 0 with 1920 x 1080 @ 50.000000 Hz
10:51:27 T:3037876224  NOTICE: Found resolution 1920 x 1080 for display 0 with 1920 x 1080 @ 24.000000 Hz
10:51:27 T:3037876224  NOTICE: Found resolution 1920 x 1080 for display 0 with 1920 x 1080 @ 30.000000 Hz
10:51:27 T:3037876224  NOTICE: Found resolution 800 x 600 for display 0 with 800 x 600 @ 60.000000 Hz
10:51:27 T:3037876224  NOTICE: Found resolution 1024 x 768 for display 0 with 1024 x 768 @ 60.000000 Hz
10:51:27 T:3037876224  NOTICE: Found (1024x768@60.000000) at 26, setting to RES_DESKTOP at 16
10:51:27 T:3037876224  NOTICE: Checking resolution 16
10:51:27 T:3037876224  NOTICE: GL_VENDOR = Broadcom
10:51:27 T:3037876224  NOTICE: GL_RENDERER = VideoCore IV HW
10:51:27 T:3037876224  NOTICE: GL_VERSION = OpenGL ES 2.0
10:51:27 T:3037876224  NOTICE: GL_SHADING_LANGUAGE_VERSION = OpenGL ES GLSL ES 1.00
10:51:27 T:3037876224  NOTICE: GL_EXTENSIONS = GL_OES_compressed_ETC1_RGB8_texture GL_OES_compressed_paletted_texture GL_OES_texture_npot GL_OES_depth24 GL_OES_vertex_half_float GL_OES_EGL_image GL_OES_EGL_image_external GL_EXT_discard_framebuffer GL_OES_rgb8_rgba8 GL_OES_depth32 GL_OES_mapbuffer GL_EXT_texture_format_BGRA8888 GL_APPLE_rgb_422 GL_EXT_debug_marker

As you can see, it identifies all the possible resolution, but chooses 1024x768@60.000000,even though it was set to 1280 x 720 before the restart.

I'm thinking, since this happens when changing hdmi sources, could it be related to cec? I know that my tv has some problems with it, like this harmless one (https://github.com/xbianonpi/xbian/issues/495). But this one is completely new!

bellini666 commented 9 years ago

And to complement, a test I just made:

1) I booted xbian and set it's resolution to 720. 2) Changes the hdmi source to my cable tv 3) After a while, changed back to xbian

When I changed back, the resolution was set to 640 x 480. But look at the log:

11:03:49 T:3037876224  NOTICE: NFS is idle. Closing the remaining connections.
11:10:30 T:2714436672  NOTICE: Thread JobWorker start, auto delete: true
11:12:39 T:2943198272  NOTICE: Found resolution 640 x 480 for display 0 with 640 x 480 @ 60.000000 Hz
11:12:39 T:2943198272  NOTICE: Found resolution 720 x 480 for display 0 with 720 x 480 @ 60.000000 Hz
11:12:39 T:2943198272  NOTICE: Found resolution 1280 x 720 for display 0 with 1280 x 720 @ 60.000000 Hz
11:12:39 T:2943198272  NOTICE: Found resolution 1920 x 1080 for display 0 with 1920 x 1080 @ 60.000000 Hz
11:12:39 T:2943198272  NOTICE: Found resolution 720 x 576 for display 0 with 720 x 576 @ 50.000000 Hz
11:12:39 T:2943198272  NOTICE: Found resolution 1280 x 720 for display 0 with 1280 x 720 @ 50.000000 Hz
11:12:39 T:2943198272  NOTICE: Found resolution 1920 x 1080 for display 0 with 1920 x 1080 @ 50.000000 Hz
11:12:39 T:2943198272  NOTICE: Found resolution 1920 x 1080 for display 0 with 1920 x 1080 @ 24.000000 Hz
11:12:39 T:2943198272  NOTICE: Found resolution 1920 x 1080 for display 0 with 1920 x 1080 @ 30.000000 Hz
11:12:39 T:2943198272  NOTICE: Found resolution 800 x 600 for display 0 with 800 x 600 @ 60.000000 Hz
11:12:39 T:2943198272  NOTICE: Found resolution 1024 x 768 for display 0 with 1024 x 768 @ 60.000000 Hz
11:12:39 T:2943198272  NOTICE: Found (1280x720@60.000000) at 18, setting to RES_DESKTOP at 16
11:12:40 T:2823488576  NOTICE: XBian : on saver deactivated
11:12:40 T:2823488576  NOTICE: XBian : on saver deactivated END
11:12:40 T:2714436672  NOTICE: Thread JobWorker start, auto delete: true

It thinks it's activating 720. And if I go to the system preferences, just by opening it, it will prompt me with the "Do you want to keep this resolution" dialog, and apply the 720. No need to select it.

mk01 commented 9 years ago

as usually thanks for that quality of info - when I don't need to ask anything more. short story:

-> point of that story - we decided to correct (or let's say implement correct screen modes changes / handling - as something what was missing and never added (again related to "FULLSCREEN" platforms/devices)). it was primarily developed on IMX6 but released to RPI as well as the core code is the same. with your report I found that - Popcornmix didn't like the XBMC's way of re-forcing one resolution as well - he also implemented a way how RPI could run on different (max) resolution and partially solved that XBMC will not go mad with stupid resolutions if res list changes (by any chance during run of XBMC). so much more than XBMC alone could offer to poor user. RPI "driver" in XBMC was outsmarting the "smart" XBMC and also the new introduced code which now depends on actual and correct info from HDMI/DVI status.

I restored the RPI driver to provide correct info from HDMI for now and committed to DEVEL for you to test as xbian-package-xbmc=14.0.

(it is of course Helix so if you prefer for now keeping Gotham's versions of DB Library files do a snapshot of root and home before install, rollback to it after test & reboot (don't even install your 13.2 back as this will be rolled back with "root" snapshot).

and let me know of course, thanks

mk01 commented 9 years ago

@btw:

can you maybe update the old CEC thread what's the status with LGs ? all the fixes were accepted upstream into libCEC and with some other changes PE released 2.2.0. XBian provide that as 9.2.2.0 it stable - but I never forgot the LG case. ;) also I can't test if the LG handling code changed, if yes, if with good or bad direction... ?

I don't expect logs, just update libcec to stable, do the three test steps and tell back.

bellini666 commented 9 years ago

@mk01 nice, the update to helix solved the problem! It's not happening anymore. Thank you :)

And I'll make a quick update on the libCEC thread!

I think you can close this one!

bellini666 commented 9 years ago

@mk01 the issue came back after I upgraded it to 14.1-1423177674

I was trying to reopen this issue, but I don't know how =P

CurlyMoo commented 9 years ago

Please try this fix: https://github.com/xbianonpi/xbian/issues/667#issuecomment-73777064

bellini666 commented 9 years ago

@CurlyMoo that file already had its permission set to 644, so nothing to test unfortunately :(

mk01 commented 9 years ago

@hackedbellini

I have to check if that patch to EGLRPI was committed by me. I have a group of patches in wait queue (to be 100% confirmed they are OK) and I'm failing past weeks to finally sort it all out. and that one particular xbmc build was build by myself - containing it - autobuilds are maybe missing it.

let me get back to this in few hours. you triggered that I'm sorting the patches now.

mk01 commented 9 years ago

that one looks be properly pushed

https://github.com/xbianonpi/xbian-package-xbmc/blob/master/patches/EGLRPI-nativeres.patch

bellini666 commented 9 years ago

@mk01 oh, sorry for not giving a feedback earlier.

The issue was really back on 14.1-1423177674, but no more since some updates after. Probably that build (and one or another more) didn't have the patch.

I'll close it again now. Thank you!

bellini666 commented 9 years ago

Is there any change this issue is back? I'm having this problem since the update to 14.2~BETA2-1425665200.

If it is not this issue anymore, maybe it is something else?

f1vefour commented 9 years ago

I have to try something and I will get back to you @hackedbellini

f1vefour commented 9 years ago

Try adding this to /boot/config.txt then reboot, calibrate and reboot/restart kodi and see if it sticks

hdmi_ignore_edid=0xa5000080
f1vefour commented 9 years ago

I have the same issue so I reopened it.

bellini666 commented 9 years ago

@f1vefour I tried that and it seems to be working (although the issue was a little random for me, so give me a couple of days to be sure).

One interesting thing is that the resolution on the boot screen has increased. I never noticed that it before, but the splash was using a small resolution.

f1vefour commented 9 years ago

It is just a workaround for now, it will be resolved when 15.0 alpha makes it to stable