OK, dann brauchen wir wohl einen Addonentwickler, der die Skygo Seite auseinandernimmt.....
Beiträge von libdev
-
-
Das freut mich sehr zu lesen! Ein paar mehr Infos für Nicht-entwickler könnten allerdings sehr hilfreich sein. Hast du rechtliche Bedenken oder warum gibts nur so spärliche Hinweise?Gibts von deinem repo eine .zip, die man im Kodi laden kann?
Nichts desto trotz herzlichen Dank für deinen Einsatz, es scheint ja wirklich zu funktionieren.Ich bin immer so kurz und knapp, das hat keine rechtlichen Gründe
Stand genau jetzt ist es für Nicht - Entwickler erstmal nicht möglich einzusteigen.
Es muss eine bibliothek kompiliert werden, die das decrypten vornimmt.Ich gehe davon aus, dass an dieser Stelle über kurz oder lang etwas angeboten wird.
(SourceCode liegt ja in meinem git repo http://github.com/liberty-developer/inputstream.mpd)Wenn dann hier etwas Fahrt reinkommen sollte, schalte ich mich selbstverständlich ein um Probleme auszumerzen.
Dann wird recht schnell klar wie es geht - es ist recht einfach. -
Die neue DASH schnittstelle für kodi Krypton ist nun im master branch enthalten, auch das dash addon ist im offiziellen repo (aber ohne decrypting, dazu baucht man noch einen kleinen helfer, der im o.g. thread beschrieben wird). Damit ist kodi nun DASH fähig!
Da ich kein SkyGo habe eine Frage: Gab es denn in der Vergangenheit ein SkyGo addon, welches genau wie amazon prime aufgrund des Videoformates dann nicht mehr lief?
Es war ziemlich wenig Arbeit, das bestehende plugin.amazon.prime auf die neuen Möglichkeiten in kodi anzupassen, wenn es ein altes skygo addon gibt, was reaktiviert werden kann, sollte man ggf. da ansetzen. -
So, es hat sich in den vergangenen Tagen einiges getan:
- das neue interface inputstream ist im aktuellen kodi branch drin
- das dash addon ist jetzt auch im offiziellen kodi repositoryDas bedeutet erstmal, dass kodi in den aktuellen nighly builds ab morgen DASH fähig ist.
Das bedeutet aber noch nicht, dass wi..vi.. gecrypteter content wie amazon darauf sofort läuft.
Hierzu braucht es einen decrypter, der die codierten videos entschlüsselt.Das inputstream.mpd addon wurde um eine Schnittstelle erweitert, welche externe decrypter zulassen.
Ich habe daher für diesen Fall genau so einen implementiert - er findet sich im inputstream.mpd repo.Für die Entwickler unter euch:
- inputstream.mpd clonen (kodi sourcen müssen NICHT vorliegen).
- einen build ordner anlegen, reingehen und dann mit cmake entweder linux Makefile oder VS sln erzeugen
cmake [path_to_wvdecrypter] [-G "VisualStudio...."]
- make (linux) oder .sln öffnen
- es entsteht eine ssd_wv.dll/so, also eine dynamische Bibliothek
- diese einfach zjsammen mit der wi..vi..cdm.dll in den kodi ordner xbmc/addon/http://inputstream.mpd/decrypter/ legen (Ordner muss angelegt werden)Für die nicht Entwickler:
- nightly build kodi installieren
- hoffen, dass irgendjemand hier die kompilierte decrypter dll zur Verfügung stellt.
- wi..vi..http://cdm.dll/so finden, Dateien in den o.g. Ordner legen und fertig.Danach ist alles startbereit,und das plugin.amazon.prime plugin, welches ebenfalls in meinem repo liegt, sollte funktionieren
Ein Satz zum Rechtlichen: Lizenzschlüssel für das Decrypten mit der hier vorgestellten Entwicklung gibt es nur, wenn man korrekt auf amazon eingeloggt ist!
Amazon weiss also nach wie vor, was ihr schaut und was nicht. Für User ohne Prime account also ziemlich nutzlos.Ich schaue jetzt schon seit ein paar Tagen wieder prime, in deutsch, englisch, 5.1 und top qualität. Herrlich.
Die dash entwickler haben den Audio Streamchange perfekt hinbekommen und auch vor- rückspulen funktioniert jetzt. -
1.) Mit "DRM Kram" meinst du einen vollständigen Browser mit HTML5 Viewer in Fullscreen? Wenn so, klar, theoretisch ist alles machbar, aber jemand muss eine Ansteuerung des Browsers auf Win über den RPI programmieren - ich denke nicht dass das jemand machen will.
2.) DRM decrypting gibt es sehr wohl für RPI (libwidevinecdm.so), das was unter RPI nicht performant genug ist ist der Browser / HTML5 Player, der derzeit versucht wird in Kodi einzupflanzen
3.) In Kodi 17 gibt es für diese Probleme eine Lösung: plugin.amazon.prime reloaded [experimental!]
libdev
-
- der kodi xbmc tree im repo https://github.com/liberty-develper ist nun auf dem Stand von gestern, also inkl, der neuen default Skin
Beim Windows build wird ein Fehler geworfen in einer automatisch generierten Datei, an der Fehlerstelle einfach ein .c_str() anhängen.- im inputstream.mpd repo existiert nun eine configure.bat Datei, die macht soweit alles fertig, was fürs addon zu tun ist.
Am Anfang der Datei stehen nochmal die Schrite, die gemacht werden müssen.
Die configure.bat ist für Windows builds in Visual Studio 12 gedacht. Für nichts anderes.Ich werde in Kürze auch noch eine configure.sh nachlegen, die dann für linux funktioniert.
2 Sachen noch:
- Seek backwards hat Probleme
- Audio Change funktioniert nicht (kodi wählt by default Dolby aus)Für beide Punkte hoffe ich, dass die kodi Entwickler bald etwas nachlegen.
-
Kurze Info:
- ich habe den xbmc tree gestern intern rebased und gesehen, dass ein neuer Skin in krypton hinterlegt ist. Ich werde heute diesen tree in meinem repo aktualisieren
- ich werde heute mal ein batch skript erzeugen, welches die Schritte der Addonerstellung mit einem Klick erledigt (erstmal nur für windows)
Wenn sich das dann jemand schon einmal anschauen will, ist es einfacher - die Installation eines binären addons ist ziemlich gruselig. -
Aber nicht für dieses Addon hier. Es geht hier gerade darum KEINEN eigenen Player zu installieren sondern die jahrelange, sehr performante Entwicklung des kodi cores zu nutzen.
- H/W Decoder
- Sync zwischen Audio / Video
- Seek
- vieles, vieles mehr.
- Ambient lightDas alles nochmal für einen eigenen Player zu entwickeln seh ich gar nicht (ein)
Ist doch perfekt so wie es in kodi drin ist... -
@piet Das binäre addon (inputstream.mpd) decrypted lediglich die kodierten daten und gibt diese dann direkt an kodi.
kodi macht dann das dekodieren genau so als ob es ein ganz normaler mp4 stream wäre (h/w, ffmpeg ....) und die Darstellung.Das addon läuft mit 10MB speicherbedarf und 0.2%CPU, es ist für alle systeme, auch RPI's one Einschränkungen verwendbar.
-
@membrane ja, du hast es in der Tat richtig erkannt - es sind alle stream varianten verfügbar, die in mpd geliefert werden und das sind einige.
Für kodi ist das in der Tat ein grosser Sprung nach vorne. Adaptives Bitrate switching ist wohl auch in Arbeit wenn ich das richtig sehe.Wenn es der Orginalautor (@mapfau) nicht einbaut, ist das ziemlich schnell gemacht.
-
Vermutlich ist es einfacher, sich mit dieser Lösung zu beschäftigen.
plugin.amazon.prime reloaded [experimental!]
Was halt im addon gemacht werden muss ist herauszufinden, wie die .mpd dash datei heisst und wie die Lizenzanfrage von statten geht.
Wie es bei a****n geht findet ihr in der methode play im default.py im plugin.video.prime_instant repo.
SkyGo ist dann wieder in Kodi wie gewohnt.....
-
Einleitung
Mit Kodi 17 kommt eine neue Schnittstelle zum Einsatz, die es Entwicklern ermöglicht, Video / Audio / Teletext / Untertitel Streams innerhalb Kodi abzuspielen, ohne dass Kodi genau kennen muss, wie diese Daten ursprünglich vorlagen - inputstream.
Über inputstream werden Packetdaten, also so ziemlich die kleinste Einheit eines Streams, an Kodi gesendet und Kodi macht daraus das was es hervorragend kann: aufbereiten, synchronisieren und anzeigen.Wie viele von euch mitbekommen haben werden, stellen viele Streaming Dienste wie amazon / netflix / skygo ihre Technik auf ein neues Konzept um: Adaptives Streaming.
Kurz erklärt: Ein Film wird in unterschiedlichen Auflösungen und Qualitäten abgespeichert, und der WebBrowser entscheidet je nach Situation, welche Qualität bestmöglich dargestellt wird.
Um einen weichen Übergang bei einem Wechsel zu ermöglichen, liegt jede der o.g. Streams in gleichen, kurzen Abschnitten vor (i.d.R. 2 Sek) vor, welche jedoch perfekt zueinander passen.
Mit 2 aufeinanderfolgenden sog. "Fragmenten" aus unterschiedlichen Auflösungen / Qualitäten erreicht man einen fast unsichtbaren Übergang.Die Information, in welchen Qualitäten / Auflösungen / Sprachen / etc die Streams vorliegen, wird in der regel in sog. manifest Dateien definiert.
Hier gibt es leider viel Wildwuchs, es gibt Standards, die jedoch nur wenige Nutzen, aber auch Standards werden mit nicht konformen Inhalten ergänzt.
Dies ist mit der Hauptgrund, warum Kodi keine DASH streams im Core haben möchte, es müsste alle Nase lang im Core gewerkelt werden.@mapfau (https://github.com/mapfau/inputstream.mpd/) hat nun ein inputstream addon geschrieben, welches das manifest von einigen Anbietern lesen kann: inputstream.mpd.
Dieses inputstream.mpd addon bekommt eine manifestdatei als Eingabe und holt sich alle erforderlichen Video / Audioinformationen und liefert diese an Kodi.
Dieses Addon ist im offiziellen kodi repo enthalten und wird bei einer Installation in der Regel mit installiert.Das o.g. Addon kann sehr gut die manifest Dateien, die bei amazon im MPEG DASH Format vorliegen, lesen, eins wird jedoch nicht unterstützt: DRM (Digital Rights Management)
Es geht hier um die Tatsache, dass Amazon seinen Streams verschlüsselt ausliefert, und nur mit einem richtigen Schlüssel, den ihr auch nur bekommt wenn ihr angemeldet seid(!!), können diese Streams entschlüsselt werden.***********
Was wird benötigtHierzu habe ich einen "Wrapper" implementiert, der die DRM Inhalte mithilfe der widevine Technologie entschlüsselt. Widevine ist Bestandteil des Chrome Browsers und wird als separate "Shared library" ausgeliefert.
Unter windows heisst diese Datei widevinecdm.dll, unter linux libwidevinecdm.so und unter OSX libwidevinecdm.dylib.
Der Wrapper trägt unter Windows den Namen ssd_wv.dll, unter linux libssd_wv-lib unter OSX libssd_wv.dylib.Der Wrapper muss kompiliert werden, die widevine Datei nach einer erfolgreichen Chrome installation gesucht werden und beide Dateien in einen Ordner kopiert werden, damit der wrapper diese Dateien finden kann.
Windows: C:\Users\[name]\AppData\Roaming\Kodi\cdm\
Linux: ~/.kodi/cdm/
OSX: ??Es gibt bereits einige seriöse Quellen, welche den wrapper [lib]ssd_wv kompiliert haben, ich werde diese Quellen hier nachträglich nennen sobald ich mir einen Überblick verschafft habe (oder sich jemand meldet).
Für mache Systeme gibt es auch bereits vollständige Packete ( Milhouse z.B.) die bereits mit dem wrapper ausgestattet kommen.************
Selber kompilieren von ssd_wv.dll- git clone https://github.com/liberty-developer/inputstream.mpd
- cd wvdecrypter
- cmake .
- make [-j4]************
Das Amazon AddonIn meinem git repo (https://github.com/liberty-developer/) gibt es ein plugin.video.prime_instant Plugin,welches ich rein zum Testen verwendet habe.
Es kommt ursprünglich von @AddonScriptorDE und ist voll mit Fehlern und wird nicht wirklich weiterentwickelt.
Bitte verwendet / supported das Addon von @Sandmann (einfach mal hier in kodinerds suchen) !Zu finden ist alles in meinem repo:
https://github.com/liberty-developer/
libdev.