Dankeschön für das Intro.
Also erstmal schön, dass ein paar Leute sich eingefunden haben zu diesem wunderbaren Nischenvortrag.
Und wir sehen es geht heute auch um viele Abkürzungen, Abkürzungs-Kauderwelsch und
deswegen gehen wir erstmal zu was Konkreteren über, nämlich zu mir.
Wer bin ich?
Wie schon gesagt, ich bin Sebastian.
Ich arbeite zufälligerweise bei der Deutschen Telekom, hat aber mit dem, was ich heute hier
zeige, gar nichts zu tun.
Ich arbeite da einfach da.
Denn normalerweise ist mein Job im Smart Home und IoT Bereich zu arbeiten und auch viel
Reverse Engineering zu betreiben und da schließt sich mit so ein kleines bisschen der Kreis
auch zu diesem Vortrag hier, weil es geht auch um Reverse Engineering.
Ich möchte heute gerne sprechen über ein Thema, was mir am Herzen liegt, was aber durchaus
doch ein Nischenthema ist, obwohl es uns alle, würde ich mal behaupten, betrifft, nämlich
WebDHM.
Ich habe nichts damit zu tun.
Ich habe mir das aus reiner Lust und Freude mal in der Freizeit angetan, wo wir wieder
da wären.
Und da muss ich sagen, als ich dann angefangen habe, mich mit dem Thema zu beschäftigen
und auf all diese wirren Abkürzungen und Begrifflichkeiten gestoßen bin, von denen ich keine Ahnung hatte,
was sie bedeuten, war alles, was ich im Kopf hatte, eigentlich nur so ein großes Fragezeichen.
Ich habe absolut keine Ahnung von diesem Krempel.
Wenn es euch auch so geht, keine Angst, wir kommen dahin.
Interessanterweise habe ich dann festgestellt und ihr werdet dann auch feststellen, dass
ihr all diese wirren Begrifflichkeiten und die Technologien dahinter eigentlich häufig
benutzt, nämlich immer dann, wenn ihr ein Video auf Netflix oder YouTube oder Amazon
Prime oder Sky oder Das und oder Punkt, Punkt, Punkt, Punkt, Punkt, einem dieser Video Streaming
Anbieter anschaut, wer kann im Hintergrund all diese Technologien, von denen selbst wir
als, ich würde mal behaupten, webaffine Menschen, die teilweise schon sehr lange dabei sind,
eigentlich täglich nicht mit den Berührungen kommen und nicht so wirklich was von gehört
haben bisher.
Bevor wir aber zu dem großen Treiber hinter diesem Vortrag zu dem Thema DRM kommen, ein
kleiner Schwank durch die Geschichte des Webvideos.
Eigentlich hat alles 1990 angefangen mit QuickTime, also damals noch nicht im Web, das
kam dann erst so 1993, 1994, aber 1990 und deswegen habe ich es aufgenommen, fand ich
es einfach von der Hardwareleistung erstaunlich.
QuickTime auf dem Apple Rechner von 1990 konnte ein Video in 156, 116 Pixeln mit 10
Frames per Second ohne Hardware Acceleration, also ohne Hardware Beschleunigung, ohne extra
Chip, nämlich nur auf der CPU rennen, was für die damalige Zeit eigentlich schon eine
extreme, extreme Hardware und Softwareleistung war erstaunlich.
Als das Video dann ins Web gewandert ist, dann konnte man teilweise, und da sind wir
auch wieder bei den Fantastischen Vier, das war das erste Mal, dass ich einen Livestream
im Internet gesehen habe, war ein Konzert der Fantastischen Vier, ich glaube das war 1995,
über eine Verbindung, die nur mit 9600 Baud lief, also 9600 Zeichen in der Sekunde übertragen
konnte, es war ein Livestream mit bewegt Bild, also sagen wir mal bewegt Klötzchen und ein
bisschen krachendem Audio im Hintergrund, aber es war ein Livestream, es war Mitte der 90er
und über 9600 Baud mit QuickTime, erstaunliche Leistung.
Das ist interessanter, wenn wir uns jetzt mal anschauen, okay, wie sah das gerendert
auf der Webseite aus, so ein Video Mitte der 90er, cool, war halt Bewegt Bild auf der Webseite,
aber es passte irgendwie nicht so rein, man hat gemerkt, dass da irgendwas eigentlich
Presenters
Sebastian Golasch
Zugänglich über
Offener Zugang
Dauer
00:47:10 Min
Aufnahmedatum
2018-09-12
Hochgeladen am
2018-09-12 20:23:36
Sprache
de-DE
We´ve all used Netflix, but most of us (developers included) do not know how to deliver or implement encrypted video to the browser ourselves.
I´d like to invite you to join me as I recap my journey into reverse engineering Netflix. I’ll let you know how I came to understand the messy, monstrous world of DRMed videos on the web, how fragmented this ecosystem is, and who is in control of what.
It´s a depressing but fun journey full of WTFs and technical/legal contraints that I had no idea about when I first set sail watching Netflix on my Raspberry PI.
Usage of web video behind a paywall (*1 Adobe Digital Index Q1 2016 Digital Video Benchmark Report) is rising constantly and every device with a display that is produced nowadays comes with some sort of web browser that should be able to play all videos (Hint: It´s not that easy). Cisco estimated that by the end of this year, 80 to 90 percent of all global internet traffic will come from video data (*2 Cisco estimation of growth of global Internet traffic over time).
Based on these unbelievably high stats, I believe that every web developer would benefit from a basic understanding of the mechanics behind „DRMed“ videos on the web and the history behind them.
What will the audience learn from it
– A super short history of web video
– What the different meanings behind DRM for web videos are
– What different DRM implementations/protocols are out there and when/why they’re used
– What a CDM (Content Decryption Module) is and how it’s used to decrypt videos
– Why hardware acceleration is mostly a no-go for web video
– What EMEs (Encrypted Media Extensions) are and what implementations on the client look like
– The flow of a browser requesting & playing encrypted video
– What restrictions video platforms get from content providers
– (Bonus: If there´s time – Netflix on Raspberry PI isn’t a myth)
Outline
– The real story of how a random web developer fell into this devil pit
– A super-short history of web video (From Quicktime/Flash/Silverlight and the
tag to MPEG-DASH)
– The media playback ecosystem (Stakeholders and their role)
– Case study Netflix – Pure map of HTTP requests made to play a video
– API flow for requesting encrypted video with EME
– Different implementations for different browsers and operating systems (and their implications for implementors and users)
– Sir Tim Berners-Lee approves
– (Chrome+Firefox)/Widevine CDM architecture (and a peak at Playready & Fairplay)
– The blurry outline of robustness requirements and their impact on Hardware/Software decoding
– Manifest files & content negotiation formats in detail (MPEG-DASH)
– Demo: Build your own Netflix player
– Explanation of the code behind the self-implemented Netflix player
– (Bonus: If there´s time – Netflix on Raspberry PI isn’t a myth)
Who is this presentation for?
Web developers who would like to understand these cryptic terms (EME, CDM, DRM, etc…), and want to know how the client side implementation of video platforms is really done. I also believe it is of common interest for any user of web video behind a paywall because it allows a look into this media sandbox – its implications and drawbacks.