NEW - Der Feed des Merlin Images jetzt bei BoxPirates - NEW

NEW - BoxPirates Plugin Feed - NEW
Unsere Plugins direkt über den Plugin Browser eure Box installierbar

Angepinnt [Plugin] Amazon Prime Dream

    • Hallo allerseits,

      ich fürchte es ist jetzt soweit: Amazon hat die APIs in großen Stil geändert, sodass aktuell weder Login noch Wiedergabe von Videos funktionieren. Ich habe mir das vorhin mal angeschaut, aber es sieht nicht gut aus...

      Wenn wir das Ganze wieder nutzen können wollen (und ich selbst bin daran durchaus interessiert), sehe ich nur zwei Möglichkeiten zum Umbau des Plugins:
      • Verwendung der HTML Seiten als APIs (= wartungsintensiv, da wir auf alle Änderungen immer wieder reagieren müssen)
      • Verwendung der Amazon APIs (funktioniert vermutlich dauerhaft) - hier sehe ich allerdings das Problem, dass wir das über einen einzigen Developer API Key machen müssten, der dann ja wieder mit einem Konto verbunden ist... Wenn das jemand rausbekommt und Schindluder treibt, will ich nicht wissen, wo das hinführen wird...
      Kurzum: Ich habe im Moment keine gute Idee, wie es hier weitergehen wird. Wenn ihr Ideen habt, schreibt gerne eure Meinung hier im Forum.

    • Na ja Webseiten parsen kann ein Browser gerade in html5 Zeiten halt immer noch am besten.

      Insofern war der Weg den Dream im AIO Image eingeschlagen hat, also die native YouTube Browser App in einem eigenen Chromium derivat laufen zu lassen durchaus eine valide Antwort auf so ein Problem.

      Wenn du das mit OpenGL Support mit HW unterstützung für den Framebuffer und Standard Alsa Sound kombinierst ist da gar nicht so viel anzupassen.

    • Hm, auch denkbar. Da würde dann sicherlich ein Großteil des Codes entfallen und der Rest überarbeitet werden müssen. Man könnte also quasi mit einem leeren Blatt Papier anfangen. Aber vielleicht hast du recht und es ist der bessere Ansatz... Danke für den Gedanken, ich lass es mal gären. :thumbsup:

      Mir ist gerade noch eingefallen, dass das mit dem HTML als API gar nicht so trivial ist. Amazon hat sich nämlich entschieden, dass die Seiten sich nicht mehr so einfach programmatisch auslesen lassen. :pinch:

      Habe zwar (noch) nicht im Detail reingeschaut, vermute aber mal, dass die Javascript nutzen, was ausgeführt werden muss, um die Seiten dann korrekt zu laden. Macht man das nicht, bekommt man nur einen Hinweis darauf, dass man die offiziellen APIs nutzen soll... Das passiert sogar schon beim Aufruf von amazon.de über z.B. mechanize oder requests lib.

      Hach, irgendwie frustrierend. Ich kann mich gedanklich noch nicht von dem existierenden Ansatz inkl. dem erst vor ein paar Monaten refaktorierten Code verabschieden. Viellleicht wäre das aber besser.

      Wie gesagt: Danke und ich schlaf mal drüber.

    • Alles was es an python libs zum Webseiten Parsen gibt stösst da an seine Grezen.

      Der zweite mögliche Ansatz ist dann aufzugeben und den FireTV Stick oder Chroemcast oder was auch immer als Device wie einen externenTuner zu versklaven, aber dann kann man ihn auch gleich zum Anspielen verwenden und du landest bei einem Ansatz wie meinem gRabber Plugin wo der HDMI Output abgegriffen wird und die Fernbedienung der Box an das device weitergeleitet wird.

      Dann benutzt du diese Devices dann wie eine art externer "Streaming Tuner" mit den dort laufenden Apps - womit das Problem dann natürlich auch vermieden wird.

      Ich habe sogar mal einen Hybriden getestet wo man das Netflix Plugin im enigma2 verwendet hat um sich die url zum Abspielen zu holen und diese dann auf dem Chromecast angeworfen wurde, das geht dann mit voller Auflösung und Sound abspielen und man braucht kein Widevine & Co auf der box selber.

      Insofern gibt es durchaus lustige Möglichkeiten, aber wie du richtig erkannt hast du fängst dann vor VORNE an.

    • Glaub mir, wenn es funktioniert ist das den Benutzern aber sowas von EGAL.

      Und eigentlich ist das ein Kopfschuss, weil du dann die native Applikationen der Streaming Anbieter auf voll unterstützten und voll lizenzierten Devices benutzt welche "Iimmer" funktionieren und das mit der vollen Qualität die dein Abo hergibt.

      Das Problem ist dann "nur" die Weiterleitung und Weiterverarbeitung auf deiner Box :D

    • Dir ist schon klar das du mit dem gRabber dann Aufnahmen machen kannst, oder auch im PIP abspielen, etc?

      Aber das ist OT hier, es ging ja nur darum das nach Alternativen gefragt wurde und da sind die native Applikationen oder die Browser Applikationen der Streaming Anbieter halt durchaus "Alternativen".

      Gerade wenn man an der Vordertüre hämmert und keiner mehr aufmacht ist es durchaus überlegenswert ums Haus herum zu gehen und an der Hintertür liegt der Schlüssel vielleicht unter einem Blumentopf :P

    • Habe gerade mal mit dem eingebauten Browser die Prime Video Seite geöffnet... Ehrlich gesagt ist das als Basis völlig unbrauchbar auf meiner DM One. Der lädt nicht mal die Bilder vernünftig.

      Eventuell ist das mit AIO besser. Kann das mal jemand mit AIO testen und mir sagen, ob es dort besser aussieht?

      Falls nicht, denke ich doch nochmal über den Weg der Amazon API nach.

      Danke Leute!

    • Der QT browser ist maximal für die Logins brauchtbar auch im AIO Image.

      Im AIO Image gibt es aber dreamium, allerdings ist DAS derzeit hardcoded NUR für die YouTube Website verwendbar, aber da sieht man wie (gut) sowas funktioniert.

      Wobei du zum Abspielen dann aber auch die HW Unterstützung brauchst und das kannst du auf den Broadcom Boxen wohl vergessen.

      Das Dreamium hingegen läuft sogar wenn enigma2 gestopped ist, weil es davon nichts verwendet :D

      Auf dem Screenshot siehst du in der YouTube App was diese glaubt wo sie im Dreamium läuft :*

      Und hier noch die libs damit man sieht was im dreamium drinnen steckt:

      Quellcode

      1. ldd dreamium
      2. linux-vdso.so.1 (0x0000007f8d101000)
      3. libasound.so.2 => /usr/lib/libasound.so.2 (0x0000007f8cfe3000)
      4. libQt5WebEngine.so.5 => /usr/lib/libQt5WebEngine.so.5 (0x0000007f8cf70000)
      5. libQt5WebEngineWidgets.so.5 => /usr/lib/libQt5WebEngineWidgets.so.5 (0x0000007f8cf24000)
      6. libQt5Widgets.so.5 => /usr/lib/libQt5Widgets.so.5 (0x0000007f8c9ac000)
      7. libQt5Gui.so.5 => /usr/lib/libQt5Gui.so.5 (0x0000007f8c52b000)
      8. libQt5Core.so.5 => /usr/lib/libQt5Core.so.5 (0x0000007f8bfc0000)
      9. libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x0000007f8be32000)
      10. libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x0000007f8be10000)
      11. libc.so.6 => /lib/libc.so.6 (0x0000007f8bcc7000)
      12. libm.so.6 => /lib/libm.so.6 (0x0000007f8bc16000)
      13. libdl.so.2 => /lib/libdl.so.2 (0x0000007f8bc03000)
      14. libpthread.so.0 => /lib/libpthread.so.0 (0x0000007f8bbd6000)
      15. librt.so.1 => /lib/librt.so.1 (0x0000007f8bbbf000)
      16. libQt5WebEngineCore.so.5 => /usr/lib/libQt5WebEngineCore.so.5 (0x0000007f86718000)
      17. libQt5Quick.so.5 => /usr/lib/libQt5Quick.so.5 (0x0000007f8633f000)
      18. libQt5WebChannel.so.5 => /usr/lib/libQt5WebChannel.so.5 (0x0000007f86313000)
      19. libQt5Qml.so.5 => /usr/lib/libQt5Qml.so.5 (0x0000007f85f69000)
      20. libQt5Test.so.5 => /usr/lib/libQt5Test.so.5 (0x0000007f85f1d000)
      21. libQt5Network.so.5 => /usr/lib/libQt5Network.so.5 (0x0000007f85d9d000)
      22. libQt5QuickWidgets.so.5 => /usr/lib/libQt5QuickWidgets.so.5 (0x0000007f85d7d000)
      23. libMali.so => /usr/lib/libMali.so (0x0000007f83941000)
      24. libpng16.so.16 => /usr/lib/libpng16.so.16 (0x0000007f838f9000)
      25. libz.so.1 => /lib/libz.so.1 (0x0000007f838cf000)
      26. libicui18n.so.58 => /usr/lib/libicui18n.so.58 (0x0000007f83659000)
      27. libicuuc.so.58 => /usr/lib/libicuuc.so.58 (0x0000007f834a9000)
      28. /lib/ld-linux-aarch64.so.1 (0x0000007f8d0d7000)
      29. libQt5Positioning.so.5 => /usr/lib/libQt5Positioning.so.5 (0x0000007f83420000)
      30. libsmime3.so => /usr/lib/libsmime3.so (0x0000007f833f0000)
      31. libnss3.so => /usr/lib/libnss3.so (0x0000007f832f9000)
      32. libnssutil3.so => /usr/lib/libnssutil3.so (0x0000007f832bf000)
      33. libnspr4.so => /usr/lib/libnspr4.so (0x0000007f8326f000)
      34. libevent-2.0.so.5 => /usr/lib/libevent-2.0.so.5 (0x0000007f83220000)
      35. libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x0000007f8318f000)
      36. libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0x0000007f83142000)
      37. libjpeg.so.62 => /usr/lib/libjpeg.so.62 (0x0000007f830f8000)
      38. libwebpmux.so.3 => /usr/lib/libwebpmux.so.3 (0x0000007f830df000)
      39. libwebpdemux.so.2 => /usr/lib/libwebpdemux.so.2 (0x0000007f830c9000)
      40. libwebp.so.7 => /usr/lib/libwebp.so.7 (0x0000007f8306a000)
      41. libexpat.so.1 => /usr/lib/libexpat.so.1 (0x0000007f83035000)
      42. libavcodec.so.58 => /usr/lib/libavcodec.so.58 (0x0000007f81e7b000)
      43. libavformat.so.58 => /usr/lib/libavformat.so.58 (0x0000007f81c5d000)
      44. libavutil.so.56 => /usr/lib/libavutil.so.56 (0x0000007f81bee000)
      45. libopus.so.0 => /usr/lib/libopus.so.0 (0x0000007f81b9b000)
      46. libdbus-1.so.3 => /usr/lib/libdbus-1.so.3 (0x0000007f81b48000)
      47. libicudata.so.58 => /usr/lib/libicudata.so.58 (0x0000007f80236000)
      48. libplc4.so => /usr/lib/libplc4.so (0x0000007f80221000)
      49. libplds4.so => /usr/lib/libplds4.so (0x0000007f8020d000)
      50. libswresample.so.3 => /usr/lib/libswresample.so.3 (0x0000007f801e7000)
      51. libtheoraenc.so.1 => /usr/lib/libtheoraenc.so.1 (0x0000007f801a5000)
      52. libtheoradec.so.1 => /usr/lib/libtheoradec.so.1 (0x0000007f80180000)
      53. libssl.so.1.0.2 => /usr/lib/libssl.so.1.0.2 (0x0000007f80115000)
      54. libcrypto.so.1.0.2 => /usr/lib/libcrypto.so.1.0.2 (0x0000007f7ff5b000)
      55. libNE10.so.10 => /usr/lib/libNE10.so.10 (0x0000007f7ff21000)
      56. libsystemd.so.0 => /lib/libsystemd.so.0 (0x0000007f7fe8f000)
      57. libogg.so.0 => /usr/lib/libogg.so.0 (0x0000007f7fe77000)
      58. libresolv.so.2 => /lib/libresolv.so.2 (0x0000007f7fe53000)
      59. libcap.so.2 => /lib/libcap.so.2 (0x0000007f7fe3d000)
      60. liblzma.so.5 => /usr/lib/liblzma.so.5 (0x0000007f7fe07000)
      Alles anzeigen
      Dateien
      • screenshot.png

        (65,19 kB, 37 mal heruntergeladen, zuletzt: )

      Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von gutemine ()


    • Danke @gutemine, für deinen Input. Dann ist der Aufwand hier doch noch ziemlich hoch und da sehe ich bei mir aktuell keine Chance das zu investieren...

      Ich habe mit übrigens bei Amazon mal noch einen Developer Account geholt und mal reingelesen. Da gibt es wohl APIs um zumindest Metadaten abrufen zu können. Vermutlich würde das Ganze auch ausreichen, um die existierende Funktionalität wieder abzubilden, ABER die T&Cs sind nicht gerade geeignet für so ein Hobby-Projekt. Da hat Amazon recht hohe Qualitätsansprüche, die es schwer werden dürfte einzuhalten.

      Ehrlich gesagt fürchte ich, dass es hier in absehbarer Zeit nicht weitergehen wird. Tut mir leid für alle, die das Plugin genutzt haben!

      @murxer vielleicht macht es Sinn, im ersten Post zu vermerken, dass das Plugin aktuell nicht funktioniert. Danke!

    • @divinity666 ich habe es im ersten Post vermerkt.
      Auch funktioniert Danzn nicht mehr und auch bei Netflix kann man sich nicht mehr anmelden, hierzu müsste vermutlich am Browser was gemacht werden.
      Derzeit funktioniert nur noch Disney.

      Ich hab für mich beschlossen hier nicht mehr groß was zu machen, es rentiert sich einfach nicht hier ständig dran zu basteln.

    • Wir mit dem GP vod´s haben uns ja auch entschlossen diese nicht weiterzuführen weil es eben wirklich nix mehr bringt dem ganzen ständig hinterher zu rennen ,das macht dann irgendwann keinen Spaß mehr und Aufwand/Nutzen ist einfach nicht mehr gegeben.
      Poblige 35 Euro Sticks usw. sind dafür zertifiziert und können das besser und auch muss man da nicht hinterherräumen ,daher ist das auf den e2 Boxen zwar mal ne gute Idee gewesen aber leider nicht rentabel ,man muss irgendwann einfach den Tatsachen in die Augen schauen.

    • Na ja nachdem wir die sourcen vom Dreamium Binary halt nicht haben, habe ich mal ein bisschen rumgesucht.

      Lustigerweise hat mich die diskussion im NN2 Board auf die richtige Spur geführt:

      Qt WebEngine supports viewing DRM protected videos if the Widevine CDM plugin has been installed.
      Gibt man das in der Suchmaschine ein landet man hier:

      doc.qt.io/qtforpython-6/overviews/qtwebengine-features.html

      Sprich es gibt eine python Library wo die Qt Web Engine eingewicklet wird und wo man auch das widevine dazu linken kann.

      Blöde ist nur das dies nur mehr mit python 3.7+ funktionieren würde, weswegen Dream das wahrscheinlich als dreamium binary umgesetzt hat damit man es auch mit python2.7 im AIO Image benutzen kann.

      doc.qt.io/qtforpython-6/gettingstarted/index.html

      Im AIO Image ist leider auch nur python3.5 dabei aber das wäre ein "lösbares" Problem., weil im debian bullsey habe ich 3.9+

      Na ja ich schaue mal ob man das überhaupt bauen kann ... dann sehen wir weiter.... aber nicht mehr an diesem Wochenende ...

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von gutemine ()