Beiträge von Portisch

    @Portisch I found a thread on coreelec forums where you said you were able to compile in coreelec with some sort of patch. Can you explain?


    When it's ready it will be available on CE repo. But it's still in development so please be patient.
    There have been a lot of improvement regard the RS232 connection, suspend and resume. This is requiring a lot of restructure some parts of the source. This will need some more time until everything is reworked and tested.


    And librelec kernel is completely different from CoreELEC.

    There is no alpha version available for CoreELEC yet. I still working with the Hyperion devs to get the last issues fixed as some parts are changed in alpha versions. As soon the new version is running stable it will be available in CoreELEC repo.
    Another binary will not work as some adjustments for the Amlogic kernel are missing.

    Aber das würde doch bedeuten, dass Hyperion.ng garnicht unter LE funktioniert, Oder hab ich da einen Denkfehler? Bei mir funktioniert es aber unter LE, nur nicht bei Anwendungen mit Inputstream.


    Es funktioniert nur am alten 3.14 Kernel. Da aber mit dem Problem, dass es immer wieder zu "Slow-Downs" bei der Wiedergabe kommt.
    Außer du benutzt Hyperion, nicht Hyperion.NG. Hyperion.NG ist bei LE gar nicht über das Repo verfügbar. Ein Pull-Request von Paulchen-Panther sollte das beheben. Meine Erfahrungen dazu zeigen daß dieser nie in LE eingefügt wird. LE macht keine Entwicklung mehr da sie auf "Mainline" umsteigen wo es keine Hardware Dekodierung gibt.

    @Cosmicbase @Paulchen-Panther
    LibreELEC hat und wird keine Hyperion.NG Grabber Unterstützung haben. Der Kernel ist bei CoreELEC extra dafür angepasst.
    Eigentlich war Kernel 3.14 die letzte Version von Amlogic die das unterstützt. Ich habe das dann auf 4.9 implementiert.
    Auch hatte Amlogic einen Fehler beim Grabber drinnen der zu "Slow-Down" vom Video führte. Auch diesen habe ich behoben.


    Da LibreELEC & CoreELEC einen komplett anderen Kernel benutzen wird die vorhandene Amlogic Grabber Methode nie bei LE funktionieren da LE diese Änderungen nie übernehmen wird -> LE Team Politik. Erst recht nicht mit dem LE "Mainline" Kernel an dem as Team LE seit Jahren arbeitet und arbeiten wird.
    Auch hat LibreELEC zusammen mit dem Kodi Team die Amlogic Unterstützung ab Kodi v19 gestrichen/gelöscht!
    Keine Angst CoreELEC wird trotzdem Kodi v19 auf Amlogic Geräten zurück bringen.


    Das Paket Hyperion.NG + Amlogic funktioniert nur reibungslos bei CoreELEC.
    Auch hat CoreELEC die bessere Hardwareunterstützung weil es für Amlogic spezialisiert ist.
    Alle CPU unterstützten Formate werden per Hardware Dekodiert und seit ein paar Tagen geht auch HDR10+.


    Also ohne Werbung zu machen ist bei Amlogic Geräten ab Chip S922X auf jeden Fall CoreELEC als System vorzuziehen.
    Wichtig ist das man ein Gerät auswählt das den "Amlogic-NG" Kernel unterstützt. Also S922X (z.B. Odroid N2, Beelink GT King) oder neuer S905X2 oder S905X3.
    Und jeder der LE auf S922X oder neuer betreibt ist angeraten auf CoreELEC umzusteigen wenn dieser Hyperion.NG verwenden will.

    Alle Amlogic Boxen mit einem SoC S922X, A311D, S905X2 oder S905X3 (X3 ist noch nicht ganz ausgereift).
    Eine S912 oder S905X würde ich nicht mehr kaufen.
    Die S905X2 ist die Billigvariante und es sind Boxen von 20-30€ im Netz zu finden.
    Am besten vorher bei https://discourse.coreelec.org/ vorbeischauen und Prüfen ob es Probleme mit CoreELEC gibt oder nicht.


    Ich habe einen Arduino Clone per USB an der Box dran.


    Bei Amlogic gibt es auch noch das "Problem":
    https://discourse.coreelec.org…ogic-improvements/5476/25
    Das scheint ein Fehler von früher zu sein und RGB->BGR Änderung scheint hinfällig zu sein.
    Aber wie ich geschrieben habe möchte ich das nicht ändern da viele so wie ich das in der externen Hardware ausdrehen.
    Irgendwo steckt da der Wurm drinnen ;)

    It looks like it is just stopping. But this line should send black to the leds, isn't it?
    https://github.com/hyperion-pr…e/LedDevice.cpp#L104-L107


    EDIT:
    I guess I found it. It looks like it get set to black for one time, but after this it get reset to the last frame:

    Code
    [hyperiond LEDDEVICE] <DEBUG> <LedDeviceAdalight.cpp:94:write()> LedDeviceAdalight writebytes 231: 416461004A1F000708000A0B000E10001013001014000F14000E15000D16000D16000D18000F19000F1B00101B000C1402040502040502030402030402030402030302030402030402030405060702030407090A020304050607040506020304002C41002C41050506020303020303020303010202010202010203010303060809050707000D10051012000B0E000B0E000C11040F14000B1200090E050F1400090F00070B000609000406000304000304000204020304090B0C01030300050800050900060900060A00070A00070A00080A00080A00080A000809000709000708000607000607
    [hyperiond ComponentRegister] <DEBUG> <ComponentRegister.cpp:67:componentStateChanged()> LED device: disabled
    [hyperiond LEDDEVICE] <DEBUG> <LedDeviceAdalight.cpp:94:write()> LedDeviceAdalight writebytes 231: 416461004A1F000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
    [hyperiond LEDDEVICE] <DEBUG> <LedDeviceAdalight.cpp:94:write()> LedDeviceAdalight writebytes 231: 416461004A1F000708000A0B000E10001013001014000F14000E15000D16000D16000D18000F19000F1B00101B000C1402040502040502030402030402030402030302030402030402030405060702030407090A020304050607040506020304002C41002C41050506020303020303020303010202010202010203010303060809050707000D10051012000B0E000B0E000C11040F14000B1200090E050F1400090F00070B000609000406000304000304000204020304090B0C01030300050800050900060900060A00070A00070A00080A00080A00080A000809000709000708000607000607


    EDIT2:
    The smoothing have to be disabled also:


    Then it should work...

    Hi,


    I currently trying to add support of suspend mode for hyperion.ng.
    I added two signals in hyperion, one for suspend, one for resume.
    On suspend I turn off the leds, on resume I turn it on:


    Code
    CoreELEC:~/.config/sleep.d # ./hyperion-suspend.power pre
    Going to suspend...
    [hyperiond ComponentRegister] <DEBUG> <ComponentRegister.cpp:67:componentStateChanged()> LED device: disabled
    CoreELEC:~/.config/sleep.d # ./hyperion-suspend.power post
    Resume from suspend...
    [hyperiond ComponentRegister] <DEBUG> <ComponentRegister.cpp:67:componentStateChanged()> LED device: enabled


    But the leds are remaining on!? They are not getting updated but they are still on. When I send the resume signal the leds are chaninging like before.


    This line should be called because of the signal:
    https://github.com/hyperion-pr…ddevice/LedDevice.cpp#L42


    I just call:

    Code
    _hyperion(Hyperion::getInstance();
    _hyperio->handleComponentState(hyperion::COMP_LEDDEVICE, true/false);


    Why are the leds not off (black)?

    This will fix the PR #539 with CE Amlogic. As the cmake variables are case sensitve and the package is named "Protobuf" the vars have to be "Protobuf_....":


    When this get merged and the fix for instCapture get included I can update the CoreELEC repo:
    https://github.com/hyperion-pr…/CaptureCont.cpp#L97-L116


    This "systemEnable" have to be set as default to "true" if missing in the config file!

    I only can check if it is compiling as I never used that feature. I will check it.


    What about the "instCapture" parameter?
    Can you add a default enable when it is missing in the config!?


    The last used version in Coreelec amlogic is from 1.12.2017 and there this parameter doesn't exist.


    The upgrade should work without the need to modify the config.

    I will check!


    I think I found the crash on stopping hyperiond:
    Fatal Python error: PyInterpreterState_Delete: remaining subinterpreters


    https://github.com/hyperion-pr…on/PythonInit.cpp#L26-L31


    But I don't know how to fix it...


    Log when stopping hyperiond:

    Code
    [hyperiond MAIN] <INFO> Application closed with code 0
    [hyperiond FLATBUFSERVER] <INFO> Stopped
    [hyperiond WEBSERVER] <INFO> Stopped Hyperion Webserver
    [hyperiond AmLogic] <DEBUG> <GrabberWrapper.cpp:36:~GrabberWrapper()> Close grabber: AmLogic
    QThread: Destroyed while thread is still running
    QWaitCondition::wakeAll(): mutex lock failure: Invalid argument
    [hyperiond DAEMON] <DEBUG> <PythonInit.cpp:28:~PythonInit()> Cleaning up Python interpreter
    Fatal Python error: PyInterpreterState_Delete: remaining subinterpreters



    EDIT:
    The new flatbuffers. The server is is starting on port 19400. Is than a FlatBufferConnection needed to transfer the image data? The log does not show anything about "Connecting to Hyperion:"


    Is this for Amlogic and local device needed:

    Code
    "forwarder" :
        {
            "enable" : false,
            "proto"  : ["127.0.0.1:19400"]
        },


    I had before:

    Code
    "forwarder": {
            "json": [
            ]
        },


    Log:

    Code
    [hyperiond DAEMON] <INFO> AMLOGIC grabber created
    [hyperiond JSONSERVER] <DEBUG> <JsonServer.cpp:23:JsonServer()> Created instance
    [hyperiond JSONSERVER] <INFO> Started on port 19444
    [hyperiond FLATBUFSERVER] <INFO> Started on port 19400


    Right now:

    Code
    "forwarder" :
        {
            "enable" : false,
            "proto"  : ["127.0.0.1:19400"]
        },


    Log:

    Code
    [hyperiond DAEMON] <INFO> AMLOGIC grabber created
    [hyperiond JSONSERVER] <DEBUG> <JsonServer.cpp:23:JsonServer()> Created instance
    [hyperiond JSONSERVER] <INFO> Started on port 19444
    [hyperiond FLATBUFSERVER] <INFO> Started on port 19400
    [hyperiond FLATBUFSERVER] <DEBUG> <FlatBufferServer.cpp:61:newConnection()> New connection from ::ffff:127.0.0.1

    Here a gdb log, not realy usefull:

    I implemented some more debug info. It looks like the frame is getting grabed but not forwarded: