Hyperion.NG, internal Frame grabber does not work with Kodi

  • Hello,

    I have a setup with Rpi3, with 164 LEDs SK6812RGBW, controlled by controller type ws281x (pwm section).

    This works fine, at least with the Web Configuration Remote Access tool and also controlled from Hyperion at my smartphone,

    but it does not work with the internal frame buffer.


    As I have read, KODI needs the "GL driver (Full KMS) OpenGL desktop driver with full KMS" to work and I verified this, with the legacy driver KODI does not start.

    But with the legacy driver I see a red ambilight shimmer behind the 4 raspberry (fruits) at the upper left corner of my screen, so Hyperion.NG seems to work with the legacy driver.

    With the "GL driver (Full KMS) OpenGL desktop driver with full KMS" Hyperion.NG does not work with the internal frame buffer, all LEDs remain dark.

    btw., a trial with the desktop GUI also did not work, this seems to have an own driver.


    The Web Configurations color calibration wizard works with KODI, so there must be a way that both tool work together, how have I to configure my graphics driver, that either Kodi and Hyperion.NG are working?

  • No reaction...


    meanwhile I installed Hyperion at my media center, based on a rpi4. This has had some Issues , but now I can access the web configuration tool also at this system.

    But other as at my rpi3 (there it only does not work), if I try to select the internal screen capture and click on the checkbox, immediatly the website makes an update as it should do only, if I click on the save configuration button, and

    comes back with the checkbox not activated. If I repeat this, happens the same again. I cannot select the internal frame buffer.

    Has anyone an Idea?


    ok, I tried to activate the internal buffer while kodi was running. If I close kodi then I can activate the internal frame buffer or dispmanX.

    Edited once, last by micha53: Merged a post created by micha53 into this post. ().

  • Select Settings level Expert. System > log > log level debug.

    Read the output in case of problems post here.


    regards pclin

    Dreambox ONE / TWO

    dreamOS OE2.6

    Amlogic S922X - 53.000 DMIPS - 2 GB RAM - 16 GB Flash - Twin-DVB-S2X Tuner - HDR10 - HLG
    -
    AudioDSP: miniDSP 2x4HD - Amp: Pentagon - Lautsprecher ELAC / ARENDAL
    LG OLED65BX9LB (PicCap, hyperion.NG webOS)

    FireTV 4K max

    -
    hyperion (classic) & Plugin HyperionControl | hyperion-ng 2.0.16-beta.1 (dreamOS)
    Hyperion-ng (Debian bullseye)
    -
    6 x ESP32/Wemos D1 mini - WLED - SK6812 RGBW-NW 60 LEDs/m
    FeinTech VSP01201 - Grabber Macrosilicon

    LG TV Hyperion webOS & PicCap


    Ambilight for ever

  • meanwhile I am on the wled track, but I do not get it controlled from the internal screen capture, neither framebuffer nor dispmanX. What is recommended??

    the 1st issue I have solved, turend to wled control and took away the root rights.

    Code
    < ----- Current Log --------------------------- >
    2023-01-30T22:51:34.453Z [LEDDEVICE|First LED Hardware instance] (ERROR) Device disabled, device 'ws281x' signals error: 'Hyperion must run with "root" privileges for this device. Current user is: "micha"'
    2023-01-30T22:53:29.825Z [LEDDEVICE|First LED Hardware instance] (ERROR) Previous line repeats 6 times
    2023-01-30T22:53:29.825Z [LEDDEVICE|First LED Hardware instance] (ERROR) Device disabled. Maximum number of 6 attempts enabling the device reached. Tried for -1325405724 seconds.
    2023-01-30T22:57:00.771Z [WEBSOCKET] (DEBUG) (WebSocketClient.cpp:30:WebSocketClient()) New connection from ::ffff:192.168.178.22
    2023-01-30T22:57:01.442Z [WEBSOCKET] (DEBUG) (JsonAPI.cpp:129:handleInstanceSwitch()) Client '::ffff:192.168.178.22' switch to Hyperion instance 0
    2023-01-30T22:57:01.782Z [WEBSOCKET] (DEBUG) (JsonAPI.cpp:1197:handleLoggingCommand()) log streaming activated for client ::ffff:192.168.178.22
  • can I look somewhere which driver is actually used? raspi-config doesn't say this, only lets set it...

    At the moment I have it running with wled control, internal grabbing, dispmanX, with some smaller issues, but don't remember wich driver I selected as last.


    .... should it work with buster?

    Edited once, last by micha53: Merged a post created by micha53 into this post. ().

  • Yes, I have it disabled, so it is logically, now I only wonder that Kodi works with disabled KMS driver...


    Do you have Kodi working at the same system?

    My kodi actually works with pitures, but playing videos is not ok. At last kodi freezes after video start.


    I made some tests:

    1st, raspi-config does not offer me the menu point to change the driver, so I enabled it in config.txt,as result the raspi does not start anymore

    after these last logs

    the screen gets black.

    I had to turn this setting back and it works again.

    Can this behavior come from hyperion installation?


    How can I prevent Hyperion from starting after boot? I'd like to look how kodi and the gl-driver behave when hyperion not is working.

  • It is always a better idea to read the actual original Raspi documentation than search the whole internet and find thinks that are outdated....


    I've done this and now it is clear that with bullseye at rpi4 some thing are other than at rpi3 with buster or older Op. systems, where I made my 1st steps with kodi, tvheadend and hyperion....


    Forget my questions above, in only one thing I am still interested: What is your rpi4 cooling method and do you have temperature problems playing pictures or videos with kodi?

  • Hallo,

    today I come back with some new information and a new "feature".

    I have Hyperion working now with the screen capture like shown in #7, working in wled mode. (btw. wled really works great.)


    Now I have a new feature. If I start kodi, already at the start screen, and furtheron some leds are bright shining white. These are the same 30 leds at the top and 28 at the bottom, leaving 17 leds not affected at the left side and 37 at the right, also overspanning the 2 gap positions at the bottom.

    Beneath this, the kodi colors get extended like expected.

    I have no idea where this bright overlaying area does come from.

    If I leave kodi, the effect vanishes.

    Who has an idea where this behavior comes from?

    protocol attached.

  • In Debian 11 Bullseye & Kodi 19+, you would need to use fkms for Hyperion to capture the screen. However switching to fkms rendered the audio from HDMI undetectable, I would recommend a fresh install of the latest OSMC image.


    Here is the way to use Hyperion + Kodi on Bullseye:


    Install Hyperion:

    sudo apt update && sudo apt install gpg -y

    wget -qO- https://apt.hyperion-project.org/hyperion.pub.key | sudo gpg --dearmor -o /usr/share/keyrings/hyperion.pub.gpg

    echo "deb [signed-by=/usr/share/keyrings/hyperion.pub.gpg] https://apt.hyperion-project.org/ $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/hyperion.list

    sudo apt-get update && sudo apt-get install pulseaudio pavucontrol alsa-utils hyperion -y


    If you use WS281x LED you will need root, use this command: sudo updateHyperionUser -u root


    Fix FKMS HDMI Audio

    1. Add snd-bcm2835.enable_compat_alsa=1 to /boot/cmdline.txt


    2. Add to /boot/config-user.txt:

    no_hdmi_resample=1

    hdmi_stream_channels=1

    hdmi_force_edid_audio=1

    dtparam=spi=on

    dtparam=audio=on


    3. In /boot/config.txt change vc4-kms-v3d to vc4-fkms-v3d


    4. Add bcm2835_alsa cards.bcm2835 to /usr/share/alsa/cards/aliases.conf


    5. Create "$HOME/.asoundrc" with the following content :


    6. Create "/usr/share/alsa/cards/bcm2835.conf" with the following content:


    7. Reboot, DispmanX will now show up in Hyperion and able to capture Kodi screen, Kodi now work with HDMI Audio with the capability to passthrough same as KMS.

    Edited 6 times, last by manhmz ().

  • In Debian 11 Bullseye & Kodi 19+, you would need to use fkms for Hyperion to capture the screen.

    I made the experience that it works with the kms driver. Or did you see the same feature like me (#11) with the kms driver. Lord Grey (#7) seems to have it working, too.

    I know, that with ws281x mode i have to use hyperion as root user and lose the audio facility, but I selected the wled mode and installed wled at a ESP8266...

  • Remember, RPI3 have three modes: FKMS, KMS and Legacy.


    Disabled kms (legacy) driver only work till Kodi 18.9 though, newer Kodi required fkms or kms driver. And DispmanX - Hyperion screen capture is based on fkms, I would suggest follow my tutorial with newer Kodi 19.5 and latest kernel for security fix.


    For the audio, fkms is not detecting HDMI Audio driver that's why I included an tutorial to add HDMI audio and it should work normally.



  • Could we also install this in kodi self? I have a rpi4 with libreelec on it and installed there the hyperion.ng


    I just want to use the internal fframe grabber for screen caputure

  • Dear Manhmz i have tryed your tutorial, and it worked for the hyperion and sound. But i lost my CEC functionality (when i go back to vc4-kms-v3d CEC works again). I'm using OSMC on RPI4. Thay say thay do not support fake MKS on OSM. Is there a way to make CEC working on FKMS? I found some topic thay may be helpfull.

    https://github.com/Pulse-Eight/libcec/issues/579

    https://github.com/raspberrypi/Raspberry-Pi-OS-64bit/issues/143

    https://forums.raspberrypi.com/viewtopic.php?t=327247

    https://discourse.osmc.tv/t/testing-kodi-v19-builds-for-raspberry-pi-2-3-4/89152/311
    Can some one help out what course of action is the best to fix my issue?


  • But i lost my CEC functionality

    you should check what is switched on first, yor TV or kodi. I made the expierience that CEC does not work when I switch on the TV while kodi is running. Starting kodi while the TV is switched on it works.

    edit:

    But I am working with raspberry pi OS and have no expierience with OSMC or libreelec.

  • CEC powers on my TV without a problem with FKMS and KMS driver. So it's not the case...

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!