[Prototyp] Ausgabeplugin für Amlogic SoC (z.B. Wetek Play)

  • Hallo Thomas,

    Es fehlen amavutils und amadec, meine Linker-Flags schauen wie folgt aus:

    Code
    -lamavutils -lamadec -lamcodec

    das macht natürlich Sinn, ich hatte inzwischen auch den Verdacht daß amavutils da mit herein muß, weil die Implementierung auf die das fehlende Symbol hinweist daher kommt. Amadec hatte sich der Linker über amcodec auch so 'reingezogen. Trotzdem, ich habe nun die Flags genau so, explizit in Dein Makefile hereingepatcht (sieht man weiter unten) und beim Linken macht es immer noch keinen Unterschied, erzeugt wird ein gleich großes, mit ldd auf dem Zielsystem nachweislich mit den gleichen Abhängigkeiten wie schon gestern gepostet, und ich habe es ganz sicher richtig hinkopiert, sieht man am Datum und binär gab es doch Unterschiede, nur in der Größe nicht. So sieht der Output beim Bauen aus (ganz am Schluß in letzter Zeile die Linker-Flags):


    Das dabei erzeugte libvdr-amlhddevice.so.2.2.0 "will" selber nach wie vor nur libamcodec.so, und nur darüber, und nicht unmittelbar libamadec.so. Von libamavutils.so nach wie vor keine Rede. Wird denn da beim Linken zu viel weg-optimiert, kann man es noch durch andere Flags beeinflussen (deswegen postete ich nun den kompletten Output)?


    Gruss,
    Lucian

  • Hi,

    Das dabei erzeugte libvdr-amlhddevice.so.2.2.0 "will" selber nach wie vor nur libamcodec.so, und nur darüber, und nicht unmittelbar libamadec.so. Von libamavutils.so nach wie vor keine Rede. Wird denn da beim Linken zu viel weg-optimiert, kann man es noch durch andere Flags beeinflussen (deswegen postete ich nun den kompletten Output)?

    ich fand dafür die Lösung, indem ich beim Patchen des Makefiles noch -Wl,--no-as-needed zu den LDFLAGS hinzugefügt habe, um das Default des Build-systems (as-needed) für dieses Paket auszuschalten, somit stimmen schon mal die Abhängigkeiten. Werde demnächst mal Funktionalität testen.


    Gruß,
    Lucian

  • Hallo,


    mittlerweile kann ich amlhddevice auf der Wetek Play mit OpenELEC-7.0 starten, nachdem ich den Kodi-Dienst stoppe. In einer Konsole starte ich folgende Kommandozeile und das ist hinterher auch sichtbar:


    In einer anderen Konsole filtere sieht man aus dem syslog Folgendes:


    Ich denke da fehlt noch ein Skin-Plugin, das muß ich noch als OpenELEC-Paket genauso wie amlhddevice aufbereiten, und ein Keymapping der Fernbedienung, mache ich heute Abend.
    Trotzdem, am Fernseher hätte ich ein Live-Bild erwartet, es kommt nur das weiße Bootlogo der Wetek-Play (das vor dem Plymouth-Splash), warum wohl?
    Welches Skin-Plugin soll ich denn nehmen, Skindesigner wäre natürlich schön?
    Wie sieht denn der Log aus, irgendwelche Auffälligkeiten?


    Gruß,
    Lucian

  • Hallo,


    mittlerweile habe ich für meine OpeneELEC-7.0 Installation auf der Wetek Play das amlhddevice so patchen müssen, daß die Framebuffer-Devices vertauscht werden, denn dasjenige mit der 32-bittigen Farbtiefe ist bei mir /dev/fb0. Dann kann man auch kurz das OSD vom STTNG-Theme sehen, aber kein Ton und kein Bild, alles schwarz, obwohl VDR auf ARD HD schaltet. Die Fernbedienung die ja Kodi als LIRC-Device nutzen kann, will der VDR nicht anlernen, auch wenn ich ihm den gleichen Pfad zum LIRC-device gebe den auch Kodi nutzt (wenn es gestartet ist, denn ich probiere amlhddevice selbstverständlich mit beendetem Kodi).


    Funktioniert denn bei jemandem etwas mehr, mit amlhddevice und der Original-FB der OpenELEC Edition der Wetek Play?


    Gruß,
    Lucian

  • Hi,


    ja, mit der stable MLD gibt's auch Bild (per streamdev) oder DVB Empfang (als Server). Nur halt nicht beides gleichzeitig. Ist aber eine etwas ältere Version des amlhddevice.


    Claus

    MLD 5.5 mit vdr 2.6 - lirc yaUSBir - Octopus NET S2 - SCR - XFX GeForce 9300 mit Intel E3200 - 2GB RAM - WD Green 12TB HDD - SanDisk 64GB SSD - Lian Li PC-C37B - Samsung LE40A559
    MLD 5.5 mit vdr 2.4 - Raspberry Pi 3 - rpihddevice
    MLD 5.5 mit Squeeze Play - Raspberry Pi 2 - 32GB SD - 7" Touch TFT

  • Funktioniert denn bei jemandem etwas mehr, mit amlhddevice und der Original-FB der OpenELEC Edition der Wetek Play?


    Die DVB-Treiber führen bei mir auch zu Problemen, deshalb arbeite ich stets mit streamdev- oder satip-Plugin. Ich kann mir den Zusammenhang auch nicht erklären und leider findet man nirgens Informationen, was die Treiber an der Hardware umkonfigurieren. Deshalb ist das amlhddevice leider nach wie vor eine Baustelle.


    Gruss
    Thomas

  • Danke Thomas und Claus für Eure Erläuterungen.

    Die DVB-Treiber führen bei mir auch zu Problemen, deshalb arbeite ich stets mit streamdev- oder satip-Plugin. Ich kann mir den Zusammenhang auch nicht erklären und leider findet man nirgens Informationen, was die Treiber an der Hardware umkonfigurieren. Deshalb ist das amlhddevice leider nach wie vor eine Baustelle.

    Das würde also heißen, theoretisch ginge es über den Umweg, minisatip + vdr-satip auf der gleichen Wetek doch amlhddevice zu nutzen?


    Was meinst Du denn mit den Treibern die die Hardware umkonfigurieren? Ich dachte, die einen sind die DVB-Treiber, und die Ausgabe von dekodiertem Video und von OSD ist eine andere Geschichte, aber wie ich es von Euch verstehe, beeinflussen sie sich. Wie funktioniert es denn dann mit Kodi als Ausgabe und VDR als Receiver, nutzt Kodi denn da irgendein closed-source Modul dafür wo wir nicht 'reinschauen können?


    Gruß,
    Lucian

  • Das würde also heißen, theoretisch ginge es über den Umweg, minisatip + vdr-satip auf der gleichen Wetek doch amlhddevice zu nutzen?

    Ob nun VDR die Treiber direkt nutzt oder minisatip, spielt ja keine Rolle.


    Was meinst Du denn mit den Treibern die die Hardware umkonfigurieren? Ich dachte, die einen sind die DVB-Treiber, und die Ausgabe von dekodiertem Video und von OSD ist eine andere Geschichte, aber wie ich es von Euch verstehe, beeinflussen sie sich.

    Ein offensichtlicher Punkt ist der Framebuffer, ein anderer der HW-TS-Demuxer - wobei der bei der aktuellen git-Version des Plugin eigentlich nicht gebraucht wird. Mehr Informationen habe ich leider auch nicht. Kodi wiederum nutzt den Codec anders, indem Bild und Ton separat decodiert und synchronisiert werden - das sollte in meinen Augen in einem Ausgabeplugin aber nicht das Ziel sein.


    Gruss
    Thomas

  • Hallo Thomas,

    Ein offensichtlicher Punkt ist der Framebuffer, ein anderer der HW-TS-Demuxer - wobei der bei der aktuellen git-Version des Plugin eigentlich nicht gebraucht wird. Mehr Informationen habe ich leider auch nicht. Kodi wiederum nutzt den Codec anders, indem Bild und Ton separat decodiert und synchronisiert werden - das sollte in meinen Augen in einem Ausgabeplugin aber nicht das Ziel sein.

    Vielleicht wäre es doch sachdienlich, sich bei den funktionierenden Varianten, umzuschauen. Ich weiß nicht ob Du nicht etwa auch auf OpenPLi's Amlogic Enigma2-Ausgabeplugin gestoßen bist (den genauen Status kenne ich nicht, vielleicht kann sich dazu jemand der das weiß, äußern), aber dort scheint es mir wenn mich nicht alles täuscht, wird auch Audio und Video ähnlich wie bei Softhddevice oder Kodi nicht von der Hardware, sondern in der Software synchronisiert, Du würdest es bestimmt besser als ich verstehen:

    und


    Meinst Du, sowas könnte man im amlhddevice machen?


    Gruß,
    Lucian

  • Hallo Lucian

    Meinst Du, sowas könnte man im amlhddevice machen?


    Vielen Dank für den Link - das Projekt kannte ich noch nicht. Es scheint aber auch nur eine Variante von openatv Enigma2 zu sein, dort habe ich zu Beginn "abgeschaut" und auch den Kernel übernommen. Es gab darin auch Änderungen eines Users "wetek", die aber wiederum nicht synchron mit dem Kodi-Repository von Wetek-Mitarbeiter Codesnake waren und plötzlich nicht mehr mit amlhddevice funktioniert haben.


    So oder so, Live-TV ist nicht das Problem. Klemmen tut es bei der Wiedergabe von Aufnahmen, genauer gesagt bei den Trick-Speeds. Aber das hat mich auch beim rpihddevice am meisten Zeit gekostet, nur dass es da eben eine brauchbare Dokumentation gab...


    Trotzdem danke für deine Hilfe! Momentan fehlt mir zwar die Zeit um an amlhddevice zu arbeiten, aber aufgegeben habe ich nicht! Schliesslich habe ich mir kürzlich einen Odroid gekauft, der will auch was zu tun haben. ;)


    Gruss
    Thomas


  • Danke für die Links! Ich habe im Odroid-Forum auch einen interessanten Thread gefunden. Hier wird auch beschrieben, dass die externe Synchronisation, so wie sie Kodi (und IMHO auch softhddevice) implementiert für Amlogic gar nicht nötig und der Ansatz von amlhddevice grundsätzlich der richtige ist. Ich denke, ich werde meine offenen Punkte mal ausformulieren und dort Hilfe suchen...


    Gruss
    Thomas

  • Hi, geht eigentlich ncoh was bei der Wetek Play? Oder wird es keinen nativen VDR darauf geben??

    Gruß Martin (linuxdep)

  • Hi, geht eigentlich ncoh was bei der Wetek Play? Oder wird es keinen nativen VDR darauf geben??


    Aktuell fehlt mir gerade die Zeit, mich mit der Wetek, bzw. der Amlogic-Plattform zu beschäftigen. Und wann das Plugin einen brauchbaren Stand erreichen wird, kann und will ich nicht voraussagen.


    Mit dem ursprünglichen Ansatz des Plugins, nämlich Audio- und Videodecoder des SoCs so zu nutzen wie von Amlogic vorgesehen, ist irgendwie festgefahren. Während das auf der Wetek noch einigermassen funktioniert, fehlt bei den Odroids der Support für den Audio-DSP im Kernel komplett. Mit andern Worten, ich kann zwar Video decodieren, muss mich aber selber um Audio und - was viel aufwändiger ist - die Synchronisation mit dem Bild kümmern. Kodi und softhddevice funktionieren zwar genau so, aber irgendwie werde ich mit diesem Konzept nicht so warm. Vor allem, wenn auf dem System eigentlich alles bereit liegt und ohne viel Aufwand von der HW selbst erledigt werden könnte.


    Gruss
    Thomas

  • kann das gebraucht werden für das ausgabe plugin?

    Code
    http://forum.odroid.com/viewtopic.php?f=136&t=23143
  • Ist ja deine Freizeit...


    Wollte nur mal horchen wie es steht. Komme auch zu nix, zumindest was VDR betrifft. Dabei muss ich, weil der WZ-VDR immer mal aus geht, darum meine Nachfrage. Werde ich wohl erst mal 1:1 ersetzen das gute Teil.

    Gruß Martin (linuxdep)

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!