my intention is to build a small DVB-TV-Receiver based on a RaspberryPi with an integrated Ambilight, resulting in a small and smart device.
To realize that I added a
Raspi TV HAT extention, driven by TVHeadend,
installed Kodi and
My 1st trial based on a rpi3b+, but this device was too poor, alone driving kodi together with the TV HAT utilized the system between 80 – 90% and adding the Hyperion application caused the whole system to crash.
So I decided to test the Raspi4. This device has a hardware decoder for the H264 Video signal and as a result the device driving kodi together with the TV HAT utilized the system between only 10 – 20%, seemed to be a good base for my intention.
The next problem was that Hyperion was not available for Raspi4, only up to Raspi3, so I decided to switch to Hyperion.NG.
Here came the next problem: To use both the TV HAT and Hyperion it is necessary to change the SPI port of Hyperion away from SPI0. At the TV HAT SPI0 is hardwired and SPI0 cannot be used by Hyperion unless disturbing TVHeadend.
At the old Hyperion I found a workaround to switch the SPI port to 1 but with Hyperion.NG I first had no possibility. Actually we had release Hyperion 2.0.0-alpha.9 without the possibility to change the SPI-port away from 0. But there was a pull request for changing the SPI port away from SPI0 and it was realized already. Waiting for the next release I contacted the Hyperion developer team and got a lot of help – thanks here again to Lord Grey – to use this feature before the next release. The next release will have this possibility included and everything will get much easier.
So, finally I got all 3 parts together working, but I am not satisfied with the result. There are some effects disturbing the system:
1. Looking TV with the ambilight causes flickering effects at the ambilight. This is annoying. I do not have this effect if I look a video from the Harddisk, connected by USB3. So this flickering is related to the use of TVHeadend. Looks like shown here in the mp4 file.
2. Another effect is that kodi behaves strange while looking TV with the ambilight. As long Hyperion.NG is active and I do any action with the remote control (of my TV, connected via CEC), kodi crashes for an indefinite time and brings a black screen. Then the screen comes back for some seconds and gets black again. This repeats again and again. That is the 2nd effect disturbing my intention.
If I try to use kodi’s system information feature while looking TV together with Hyperion the whole system crashes. A trial while looking a video as long as the TVHeadend server is active also does not work, brings most time a black screen, only short sequences where I can see a processor load of less than 10%. Picture CPU-Auslastung 1.png in the same location like the video above.
I write this thread here with 2 intentions:
1st, to share my experience to everybody with the same idea.
2nd, maybe somebody finds my intention interesting and has ideas to improve the rpi’s behavior.
I could imagine that it may be possible to share the 3 applications to dedicated processor cores so they can’t influence each other. But I am not as familiar with the rpi system and do not know if this is possible.
So, if somebody would like to join this thread with a good idea for an improvement, I welcome him/her.