Screensaver not going black when video is paused (yes option is deactivated)

  • Hi guys some strange bug:

    Its easy to reproduce

    - Go to settings -> desktop

    - Change the screensaver to black

    - Waittime to one minute

    - Uncheck the option "Dimming if the video is paused"

    - Start a video over Network or usb -> pause the video and wait a minute

    - Screen is dimming down to 20 % and not going to black

    So the option is not working? I need the black screen option because i have an OLED and want to save energy and prevent burn in when iam pause the movie to get on the phone or the door.

    Whats really strange the same thing happens with OSMC but it seems only on ARM versions because if iam testing kodi 18.1 here on my Windows PC it goes to black like it should.

    So somebody with a Raspberry Pi 3B+ must test it and yes i rebooted the system mutiple times its not changing.

    Hardware: Raspberry Pi 3B+ with LibreELEC (Leia) 9.0.1 MR

    Edit: Workaround:

    Edi2: Workaround not working only for a shorttime.

    Edited 2 times, last by Lostion (May 1, 2019 at 1:06 PM).

  • Ok some interesting things:

    - I activated VNC and the black screensaver is working so it must be some sort of hdmi bug?

    The log shows nothing special:

    2019-05-01 17:52:52.666 T:1379906416 DEBUG: Thread JobWorker 1379906416 terminating (autodelete)

    2019-05-01 17:52:52.666 T:1550656368 DEBUG: Thread JobWorker 1550656368 terminating (autodelete)

    2019-05-01 17:52:52.667 T:1805910896 DEBUG: Thread JobWorker 1805910896 terminating (autodelete)

    2019-05-01 17:52:53.037 T:1536160624 WARNING: CRenderManager::WaitForBuffer - timeout waiting for buffer

    2019-05-01 17:53:27.202 T:1906602864 WARNING: Previous line repeats 66 times.

    2019-05-01 17:53:27.202 T:1906602864 DEBUG: CAESinkPi:Drain delay:99ms now:0ms

    2019-05-01 17:53:27.574 T:1536160624 WARNING: CRenderManager::WaitForBuffer - timeout waiting for buffer

    2019-05-01 17:53:28.448 T:1937159024 WARNING: Previous line repeats 1 times.

    2019-05-01 17:53:28.448 T:1937159024 DEBUG: CAnnouncementManager - Announcement: OnScreensaverActivated from xbmc

    2019-05-01 17:53:28.448 T:1937159024 DEBUG: GOT ANNOUNCEMENT, type: 4, from xbmc, message OnScreensaverActivated

    2019-05-01 17:53:28.451 T:1937162912 DEBUG: ------ Window Init () ------

    2019-05-01 17:53:28.614 T:1536160624 WARNING: CRenderManager::WaitForBuffer - timeout waiting for buffer

    2019-05-01 17:53:37.202 T:1906602864 WARNING: Previous line repeats 16 times.

    2019-05-01 17:53:37.202 T:1906602864 DEBUG: CAESinkPi:Deinitialize

    2019-05-01 17:53:37.203 T:1906602864 DEBUG: CAESinkPi:SetAudioProps hdmi_stream_channels 0 hdmi_channel_map 00000000

    2019-05-01 17:53:37.213 T:1906602864 DEBUG: COMXCoreComponent::Deinitialize : OMX.broadcom.audio_render handle 0x5f6c76b0

    2019-05-01 17:53:37.373 T:1536160624 WARNING: CRenderManager::WaitForBuffer - timeout waiting for buffer

    It activates the black screensaver like it should? I don't get why its not working over hdmi.

  • Ok so i found the problem, i tested it with a new flashed version and the problem is still the same but i know now whats happening, there is no screensaver kicken in only the standard "dimming" one, i tested 10 different screensavers and none is working if you pause a video only if you stop the video then they jump in. Has somebody any idea why this happens on ARM versions? Because i have Kodi on Windows and thats not happening here. Here on Windows the screensaver jumps in if you choose another one instead of the "dimming" one.

    So here is the workaround start with:

    Code
    mkdir /storage/bind
    Code
    cp -r /usr/share/kodi/addons/screensaver.xbmc.builtin.dim/ /storage/bind
    Code
    mount --bind /storage/bind/screensaver.xbmc.builtin.dim/ /usr/share/kodi/addons/screensaver.xbmc.builtin.dim/

    then you must edit the settings xml under

    Code
    /storage/bind/screensaver.xbmc.builtin.dim/resources/settings.xml

    change following:

    Code
    <setting label="30000" type="slider" id="level" range="20,1,100" option="percent" default="20"/>

    to

    Code
    <setting label="30000" type="slider" id="level" range="0,1,100" option="percent" default="20"/>

    and save the file, now you must also edit the autostart.sh (so that the file will be always mounted even after reboot)

    Go to

    Code
    /storage/.config/shutdown.sh

    and copy paste:

    Code
    mount --bind /storage/bind/screensaver.xbmc.builtin.dim/ /usr/share/kodi/addons/screensaver.xbmc.builtin.dim/

    and save the file, now it should be mounted on every reboot.

    This will set the "limit" from 20 to 0 % so the screen can go real black. I don't know why there is a "limit" at all? In Kodi 17.6 there was no limited you can go to 0 % without any edit. Ofcourse you must use "mount --bind" because the system files are read only, i hope i could help someone with this workaround.

    Also thank you to this two thread here:

    Adding a setting to LibreELEC

    How could I modify the SYSTEM in /boot/ partition?

    which i helped me a lot. Thanks to milhouse and vpeter :)

  • There is no need to use mount bind. Just copy addon from /usr to /storage, change files and restart kodi.

    Code
    cp -a /usr/share/kodi/addons/screensaver.xbmc.builtin.dim /storage/.kodi/addons
    #edit file /storage/.kodi/addons/screensaver.xbmc.builtin.dim/ resources/settings.xml
  • I tried that but its not working only bind worked. If i copy the files nothing happens seems like kodi is using the /usr/ files on standard (maybe because its the system screensaver?).

    There was a settings.xml under "addons" but even after i changed it nothing worked it just did go back to 20.

    Code
    cp -a /usr/share/kodi/addons/screensaver.xbmc.builtin.dim /storage/.kodi/addons

    Is not working i already tried that and there was already a folder but it just change nothing, kodi is still using

    Code
    /usr/share/kodi/addons/screensaver.xbmc.builtin.dim

    only bind worked for me vpeter

    Seems like the screensaver has a bug i first thought its maybe a broken system so i flashed the newest libreelec version to a new sd card but the bug is still there.

    Edited 3 times, last by Lostion (May 4, 2019 at 1:47 PM).

  • @vpeter

    I must correct myself you are correct i installed a clean version and indeed

    Code
    cp -a /usr/share/kodi/addons/screensaver.xbmc.builtin.dim /storage/.kodi/addons
    #edit file /storage/.kodi/addons/screensaver.xbmc.builtin.dim/ resources/settings.xml

    is working :) thank you