Hyperion.NG, Amlogic improvements

You could change to use wled with a esp 8266. Then Hyperion would control the lights through WLAN. In wled you can configure actions and default lights. E.g. on disconnect show yellow.

Hi
Please update Hyperion.ng to Hyperion 2.0.0-alpha.11 when you get a chance
Thanks , I love this add-on

I’m using Hyperion for playback using my 905x3 box and it works great. thank you for this. I wanted to know if coreelec supports video capture over usb? My idea was to get a HDMI splitter with usbb output so that the hyperion install on coreelec could serve my other sources as well. such as cable tv and PS5 and xbox. would this work?

1 Like

i am using an old Khadas Vim1 with Corelec for that.
Attached is a usb grabber and it works

great to hear thanks. I will go and order the hardware. Anyone try the rullz 4k 60hz one on aliexpress? thats the one i was looking at, thanks

After last update to v. 19.3.109 hyperion-remote gets error when try to connect:
REMOTE : Unable to connect to host (), port (19444)
In v. 19.3.108 everything works (even after dowgrade from 109 to 108)

We’ll test it again.

1 Like

Hello,
on behalf of my developer friends I would like to ask for help regarding this issue.

https://forum.odroid.com/viewtopic.php?f=177&t=43593

The main question is: How did you get the grabbing to work with hyperion.ng?

Can you give us some tips about this?

Thx!

Ubuntu does not include the Amlogic Grabber. So you have a wrong place here.
Maybe the v4l grabber will work. Best go to Hyperion forum.

https://forum.odroid.com/viewtopic.php?p=339556&sid=393f9cd6f1b7ac1b2e9f2fabd4c54e63#p339556
I have seen this “strange colors” on newer kernel and it is related to the Amlogic deinterlace driver.
But I have no idea if this is also implemented at this linux distro.

Also we do change the buffering about h265 & vp9:

And the issue is about h265 videos, isn’t it?

Hello,

I am the guy who opened the thread at odroid forum. I have implemented the amvideograb function into odroid 4.9 kernel (I even have a kernel running with all CoreElec media parts). However, the problem in the grabbing is as follows: I cannot grab a complete 4K picture, because I cannot allocate the required memory in one piece. There is one kernel parameter responsible for this (FORCE_MAX_ZONEORDER). It needs to be 13 in order to grab a full 4K picture. However, kernel does neither boot correctly nor do video functions work when changing the order.
I took a look at the CoreElec kernel. This leaves FORCE_MAX_ZONEORDER at the default (11) which is also not enough to grab a full 4K video. So my question is: how do you guys grab the full 4K content into a picture to be used with hyperion later on?
Any hints on that will be highly appreciated.

Thanks for reading this and eventually helping us.

I changed double_write_mode according to your script. However, this does not help.

Best regards
beta

Here is written 11 is for 4k. We never touched this value. We only change the double_write_buffer value for the hardware decoder. When you use the software decoder this will not help.

amvideocap is obsolete already in 3.14 and got hacked into 4.9 and will be maybe dropped in 5.4.

I have only a 1080p TV and grabbing of 4k content does work fine, let me check it next week when my new TV arrive :wink:

Thank you for your support, Portisch. Both, tobetter and myself we are “quite” sure that our kernel implementation is correct. However, we only can grab part of a 4K picture.
Could you please opint me to a github which hosts the hyperion.ng service you are using in CoreElec? Is it your github? This one seems to be 2 years old…
Thank you once again for supporting us.

Thank you, Portisch. I found one major difference. While my Ubuntu implementation shows an hyperion buffer (aml) of 4k, CoreElec only shows FullHD (1920x1080). With this smaller buffer size I can always grab the complete video picture.
This leads me to the question: How can CoreElec show 4K output, while the grab is only at FHD? I guess this has something to do with buffer settings (fb0, …). Any idea? Thank you again for your help.

It is 4k on CE:


Here are the ioctl calls to grab a frame on CE kernel with the amvideocap module:

@Portisch: I just wanted to let you know that I made it using Ubuntu. I generated a new kernel. For this kernel I replaced all Ubuntu media and media_module files with CoreElec ones (with the exception of the HDMI driver in order to get rid of several warning messages during kernel compilation).
For FHD this is working perfectly, For UHD I only need to patch hyperion.db and replace in the framegrabber UHD resolution by FHD resolution. For ambilight this is no problem at all, because the picture itself will be down-scaled anyway.
The only small problem which remains is that video in VDR with odroid output plugin switches off and needs to by re-enabled by echo 0 > /sys/class/video/disable_video. If you habe any idea why this happens, I will be happy to listen to this idea. However, here is an easy workaround by simply activating the video (again) before feeding the video decoder. Thank you once again for your kind help.

For such handling you need to study Kodi.
Like this:

And this:

I found it. Thank you!

@Portisch : May I please ask you another favor: Could you please let me know what was changed in the CE kernel to get rid of the video slowdowns. I also experience with my kernel video slowdowns after a while and I guess this is related. You talked about an error in the decoder source, if I remember correctly. Maybe you can show me the commit… Thank you once again!

in long: Slow down of Hyperion.ng
in short: the user frame request interfered with video thread interrupt function → slow down sometimes.