OSMC and Hyperion

I can start hyperiond server in /root/hyperion.ng/build/bin/./hyperiond

I can never get past the cmake portion, it always fails at amlogic and framebuffer. I was using your old installer and the java applet then going in and adding amlogic and framebuffer to my config files.

I’m afraid to uninstall the old version of hyperion via the java app as it will mess with however I managed to get hyperiond working.

root@osmc:~/hyperion.ng# git remote -v
origin GitHub - hyperion-project/hyperion.ng: The successor to Hyperion aka Hyperion Next Generation (fetch)
origin GitHub - hyperion-project/hyperion.ng: The successor to Hyperion aka Hyperion Next Generation (push)
root@osmc:~/hyperion.ng# git pull origin
remote: Enumerating objects: 199, done.
remote: Counting objects: 100% (199/199), done.
remote: Compressing objects: 100% (9/9), done.
remote: Total 268 (delta 189), reused 196 (delta 189), pack-reused 69
Receiving objects: 100% (268/268), 65.88 KiB | 0 bytes/s, done.
Resolving deltas: 100% (205/205), completed with 88 local objects.
From GitHub - hyperion-project/hyperion.ng: The successor to Hyperion aka Hyperion Next Generation

ba2a7fb0…48aee890 master -> origin/master (forced update)
Your configuration specifies to merge with the ref ‘refs/heads/entertainment-api’
from the remote, but no such ref was fetched.
root@osmc:~/hyperion.ng#

obviously the api isn’t there…I never required it. It was the only build that actually finished to 100% on my vero4k+

looks like its still on oldest version

trying to pull from master

root@osmc:~/hyperion.ng/build/bin# git pull origin master
From GitHub - hyperion-project/hyperion.ng: The successor to Hyperion aka Hyperion Next Generation

  • branch master → FETCH_HEAD
    Auto-merging libsrc/webserver/WebSocketClient.cpp
    Auto-merging libsrc/webserver/WebJsonRpc.h
    Auto-merging libsrc/webserver/WebJsonRpc.cpp
    Auto-merging libsrc/webserver/StaticFileServing.h
    Auto-merging libsrc/webserver/StaticFileServing.cpp
    Auto-merging libsrc/webserver/QtHttpClientWrapper.h
    Auto-merging libsrc/webserver/QtHttpClientWrapper.cpp
    Auto-merging libsrc/webserver/CgiHandler.h
    Auto-merging libsrc/webserver/CgiHandler.cpp
    Auto-merging libsrc/webserver/CMakeLists.txt
    Removing libsrc/webconfig/WebConfig.cpp
    Removing libsrc/webconfig/QtHttpServer.h
    Removing libsrc/webconfig/QtHttpServer.cpp
    Removing libsrc/protoserver/ProtoConnectionWrapper.cpp
    Removing libsrc/protoserver/ProtoConnection.cpp
    Auto-merging libsrc/leddevice/dev_net/LedDevicePhilipsHue.h
    CONFLICT (content): Merge conflict in libsrc/leddevice/dev_net/LedDevicePhilipsHue.h
    Auto-merging libsrc/leddevice/dev_net/LedDevicePhilipsHue.cpp
    CONFLICT (content): Merge conflict in libsrc/leddevice/dev_net/LedDevicePhilipsHue.cpp
    Auto-merging libsrc/leddevice/LedDeviceSchemas.qrc
    Auto-merging libsrc/leddevice/CMakeLists.txt
    Auto-merging libsrc/jsonserver/JsonClientConnection.h
    Removing libsrc/hyperion/hyperion-icon_32px.png
    Removing libsrc/hyperion/ImageProcessorFactory.cpp
    Auto-merging libsrc/api/JsonAPI.cpp
    Auto-merging libsrc/api/JSONRPC_schemas.qrc
    Auto-merging libsrc/api/JSONRPC_schema/schema.json
    Auto-merging libsrc/api/JSONRPC_schema/schema-serverinfo.json
    Auto-merging libsrc/api/JSONRPC_schema/schema-effect.json
    Auto-merging libsrc/api/JSONRPC_schema/schema-create-effect.json
    Auto-merging libsrc/api/JSONRPC_schema/schema-color.json
    Auto-merging libsrc/api/JSONRPC_schema/schema-clear.json
    Auto-merging libsrc/api/JSONRPC_schema/schema-adjustment.json
    Auto-merging include/webserver/WebSocketClient.h
    Removing include/webconfig/WebConfig.h
    Removing include/protoserver/ProtoConnectionWrapper.h
    Removing include/protoserver/ProtoConnection.h
    Auto-merging include/hyperion/MultiColorAdjustment.h
    Removing include/hyperion/ImageProcessorFactory.h
    Auto-merging include/effectengine/EffectModule.h
    Auto-merging include/api/JsonAPI.h
    Removing effects/schema/running_dots.schema.json
    Removing effects/running_dots.json
    Removing doc/hyperion-stylesheet.css
    Removing doc/hyperion-header.html
    Removing doc/hyperion-build-doc.in.sh
    Removing bin/scripts/setup_hyperion_forward.sh
    Removing assets/webconfig/server_scripts/demo.py
    Auto-merging assets/webconfig/js/content_leds.js
    CONFLICT (content): Merge conflict in assets/webconfig/js/content_leds.js
    Auto-merging assets/webconfig/i18n/en.json
    Auto-merging HyperionConfig.h.in
    Auto-merging CompileHowto.md
    Auto-merging CMakeLists.txt
    Auto-merging .gitignore
    Automatic merge failed; fix conflicts and then commit the result.
    root@osmc:~/hyperion.ng/build/bin#
[hyperiond AMLOGICGRABBER] (INFO) VPU mode
[hyperiond AMLOGICGRABBER] (ERROR) AMSTREAM_EXT_GET_CURRENT_VIDEOFRAME failed.
[hyperiond AMLOGICGRABBER] (WARNING) GE2D capture interface not available! try Amvideocap instead
[hyperiond Smoothing] (INFO) set smoothing cfg: 25, interval: 0 ms, settlingTime: 40 ms, updateDelay: 0 frames
[hyperiond LedDevice] (DEBUG) (LedDeviceAdalight.cpp:80:receivedData()) >>received 4 bytes data
[hyperiond Core] (DEBUG) (Hyperion.cpp:536:bonjourRecordResolved()) found hyperion session: osmc.local.:8090
[hyperiond Smoothing] (INFO) set smoothing cfg: 0, interval: 0 ms, settlingTime: 50 ms, updateDelay: 0 frames

I’ve been finding it very hard to follow what you are doing.

Even as I type you are re-editing and re-editing your reply to me and spamming the thread with more logs, screen shots and snippets. Please try to be concise.

Why are you not just building from the master branch of GitHub - hyperion-project/hyperion.ng: The successor to Hyperion aka Hyperion Next Generation as it’s their project? What are the other repos and cross git pulls all about?

Are these not issues relating to your specific lighting setup or the alpha state of the software?

All I can establish is that:

  1. My evenings efforts were not helpful;
  2. You are successfully building and running it yourself.
  3. I not need to add Hyperion.ng to the installer.
  4. I can go back to bed for another hour now on this bank holiday before I really have to be up…
1 Like

It’s been a long day, I apologize.

My main and only goal is to have hyperion.ng on my Vero4k+. Thus far I have been unable to do so. The way I have it working now is odd, I compiled from the entertainment-API repo, which is an older version. It does grab amlogic but not well, webconfig is showing version 2.0

Prior to figuring out that I could build/compile from the samsung hue-api based repo that is in the osmc vero 4k instructions that Antrax posted up awhile ago. I was only able to use your installer and edit that json file after editing my config file, adding framebuffer and amlogic.

Can your installer package the newest hyperion.ng with the webconfig? I get the same build errors regarding amlogic and framebuffer right around 80%. Compiling as amlogic of course, fb on, amlogic on, etc.

Sorry for all the scattered posts. I hope this clarifies things a bit.

Every time I build from the master branch, I see those errors and it never finishes. I think multiple folks have had these amlogic errors. I’ve posted them a few pages up in this channel. It just doesn’t work for the life of me. Following the instructions to a tee, making sure I’m not compiling for an rPi or anything. So I figured I’d try the entertainment-api repo mentioned in Anthrax’s instructions and then maybe just change the source so I can update from the original repo.

Ok, well as I reported that worked for me on the Vero4k just by using the official repository


As above the only build error I encountered was avoidable:

I assume it’s the same error, but regardless it’s the only one. For comparison my error was:

Scanning dependencies of target test_blackborderprocessor                                                            
[ 85%] Building CXX object test/CMakeFiles/test_blackborderprocessor.dir/TestBlackBorderProcessor.cpp.o                                      
/home/osmc/hyperion.ng/test/TestBlackBorderProcessor.cpp: In function ‘int main()’:                
/home/osmc/hyperion.ng/test/TestBlackBorderProcessor.cpp:53:39: error: no matching function for call to ‘hyperion::BlackBorderProcessor::BlackBorderProcessor(QJsonObject&)’
  BlackBorderProcessor processor(config);

I’m not sure which of the Anthrax instructions you followed but the ones I see on his github are essentially the official dev ones with some local tweaks. Looks like following those should be fine. And they are building from the master official branch as I did above.

BUT first you’ll need to run:

This is to avoid the “floating point exception” when you run ‘hyperiond’.


If you mean does the webUI work on port :8090 then yes, as above the webUI and the alpha android app were essentially the only way I could test the build for now.


This really should be it. It’s essentially what I’ll be automating with my installer/builder, along with some housekeeping. Please read all of this and make a clean start of it.

1 Like

What options should I use when I am compiling after making my build directory? I’m going to give it a shot tonight. Old version of classic isn’t working so well for me.

Also, what commands if any, should I run to make sure I have completely removed hyperion and hyperion.ng before proceeding with another attempt?

Thank you for your response by the way. Very kind of you working with me on this.

Should I just do cmake dbplatform=amlogic64 and framebuffer and just leave everything else out?

99% of the “errors” you are reporting are “warnings” as they say. They don’t matter at all.

The only errors are linker errors at the end:

So you need to install these missing dependencies. Why they are missing is unclear, but your system is likely tainted by the previous goings on.


I don’t know about sluggish but this is certainly what I meant by making a clean start of it. Might fix some of the dependency issues. When these things happen you just need to google the package names for the missing libraries yourself. In this case it is telling us you’ll need:
sudo apt-get install libpcre16-3 zlib1g


Do read the Anthrax instructions carefully. Some aspects, like Phillips Hue and entertainment-api etc are OPTIONAL. Sounds like you installed everything back in the day.


And yes, you could just wait for the installer.

3 Likes

For some odd reason that Philips hue repo would compile to 100% with no errors. I tried it yesterday and it didn’t work either.

I’ve got some new resources to use @hissingshark posts, especially the most recent. I’m looking forward to giving it another shot this evening. Completely fresh wipe off the Vero first. I’ll build from the Leia image too, no upgrades.

@hissingshark I’m going to wait for your installer as well… Had a working Setup, but did a fresh install with newest OSMC Update, and now can’t get my Hyperion back to run … Sometimes building ends up at 92% with “Error 2”, sometimes it works, but then Hyperion.Service can’t run … Don’t know whats wrong. I’m not doing anything else than last time, when it’s worked… Following @Anthrax Instructions, as it was easy last time, but now more and more errors occured -.-

Edit: with https://github.com/SJunkies/hyperion.ng-Fork it’s running fine, everything works as expected again … strange
Additionally now, building with hyperion.ng original Repo, gives me everytime the Error 2 at the End ~92% and aborts.
Nevertheless, I will try your Installer, when it’s ready :slight_smile:

Ditto.

I just tried from a completely fresh format/install on my Vero4k+ following this guide:
https://github.com/AnthraxLeprosyPi/hyperion.ng/blob/master/CompileHowtoOSMC.md

and I got the same make build 2 error:

Makefile:149: recipe for target ‘all’ failed
make: *** [all] Error 2
root@osmc:/home/osmc/hyperion.ng/build#

you should try install all depndencies. I had this problem too. And just enough to instal LIBPCRE16 and ZLIB.

Tomas

I tried that and it says I have it. In one of the compile instructions listed right on hyperion.ng there is a mention of blacklisting libpcre16-3 zlib1g

libpcre16-3 is already the newest version (2:8.39-3).
zlib1g is already the newest version (1:1.2.8.dfsg-5).

#blacklist: lib32z1 lib32ncurses5 lib32bz2-1.0 zlib1g-dev

Updated Hyperion Installer

Just merged in my Next Generation (ng) branch.

This tested fine with:

  1. Clean install of 2018.12-1
  2. Upgrade to Leia (2019.04-1 equivalent)
  3. Clean install of 2019.04-1

By tested I mean the installer works and the binaries allowed connection via their respective remotes and interfaces. Actual light output I cannot test as my LED luminaire is down due to decorating.

Usage essentially the same as before.

I hope this is useful.

1 Like

I am able to build no problem, I’m still not capturing any video with amlogic though even though it says it should be working fine.

Running systemctl status hyperion:
A result of [hyperion AMLOGICGRABBER] Read of device failed: 11 - Resource Temporary Unavailable

If I do a Google search I am relayed to this same error

Wonder if this is the same issue with the default config is not set.

Sorry, wrote this out by hand on mobile, I hope it’s properly formatted.

Appreciate all the hard work everyone is doing to get this going. Especially appreciate the new installer update today, albiet it only captures from the Kodi menu using FB, it goes dark when I play a video.

Figure I’d screenshot what I think may be the root of the issue. Sorry for improper formatting

Also, [hyperiond AMLOGICGRABBER] VPU mode

So, I am trying to check if the April OSMC update fixed the video lag (with HyperionNG).
Compilation/Installation worked perfectly thx to @hissingshark awesome installer (thanks so much).
I got everything working now except grabbing the actual video.
The Kodi interface (and images) work perfectly (LEDs light up correctly), but I don’t know how to grab actual video playback.

If I select AMLgrabber in the webinterface, it always processes the Kodi interface (even during playback it seems to use the interface which appears to be displayed in the background somehow

Edit: I can even see the process image (Kodi menu) in the hyperion webinterface live video feed).
If I select Framebuffer in the webinterface, it only processes the Kodi interface and shows nothing during playback.

For Hyperion classic I had both active with different priorities, but I am not sure what to do here.
So before I spend hours looking for a solution, I would like to ask here, if someone already successfully configured their Vero with hyperion.NG (I have searched the thread, but couldn’t find anything helpful)

1 Like

I have the same exact result. It just doesn’t use amlogic so it will only work for the Kodi menus and lights go dark during any playback.

Hopefully @hissingshark releases any update for the amazing work he did on the new installer that fixes that amlogic issue. I suspect a kernel update/patch is going to be needed also due to amlogic not caputuring during playback? It’s odd because it works fine on classic.

Could it be the double write mode mentioned here?

https://discourse.coreelec.org/t/slow-down-of-hyperion-ng/341/321

echo 3 | tee /sys/module/amvdec_h265/parameters/double_write_mode

Could fix the issue?

I think hissingshark has nothing to do with this, the installer just compiles and installs hyperion.ng from the master branch AFAIK.

I have found a valid config for an older version of hyperion.ng https://discourse.coreelec.org/uploads/default/original/2X/0/06ee2d4f088ab00b06157044aa8749a7cf273648.png .
However, that configuration/feature has recently been removed Cap flag at end by Portisch · Pull Request #551 · hyperion-project/hyperion.ng · GitHub , because someone from CoreELEC (Portisch) has found a different solution for it and the AMLLogic slowdown issue. But it required some changes to kernel/driver (“The amvideocap driver needs to support the CAP_FLAG_AT_END method.”)

@sam_nazarko suggested that these changes might already be included in the OSMC April update. Maybe he confirm this.
I am not sure, but this might be the CoreELEC internal fix for the issue: hyperion.ng: fix: do not close the video device on each frame · CoreELEC/CoreELEC@910cde3 · GitHub

Discussions about that one start here: Slow down of Hyperion.ng - #218 by Portisch - Add-ons - CoreELEC Forums
Edit: Nevermind that was just an CoreELEC internal patch to hyperion, but it the changes are now upstream, so this should not require any changes on OSMC side. (GE2D support has been removed from hyperion apparently btw)
However, still not sure why the video signal is not grabbed correctly on OSMC.
As nbraunstrein mentioned it prints [hyperiond AMLOGICGRABBER] <ERROR> Read of device failed: 11 - Resource temporarily unavailable in the log, which is probably logged here: hyperion.ng/AmlogicGrabber.cpp at 74766fd62631a35d90872278b3bf9d88d4dfffdd · hyperion-project/hyperion.ng · GitHub

@maxanier

Just so. And I’m very glad that’s working for you.
All issues beyond that point are usually down to individual setup/configuration. However as Hyperion.ng is alpha development software there may be bigger issues such as bugs in Hyperion itself or local kernel stumbles…

Ditto. Even though we needed this, it wasn’t so far as I could tell, an option in the official Hypercon.jar so we had to manually edit the config file.
So I’ve had my concerns that just because the webGUI looks right in .ng doesn’t mean we wont have to the same again here. I’ll need to fix up my lights this week to try for myself.


So have you tried that then?

(Also that seems to be for 4K content. I assumed the issue was for all playback beyond the Kodi OSD?)

If you look at the OSMC GitHub those options already appear to be set, so I don’t think that’s likely to be the issue here.