Video-Streams im Flash-Player herunterladen (RTMP)

Meine Freundin wollte gerne Inhalte von einer Website mit Membership-Bereich offline nutzen. Also habe ich mir gedacht: Okay, einfach die mp4-Dateien herunterladen. Bei einem „Stream“ lädt man die Daten ja schließlich eh aus dem Netz. Und da Sie für das Portal ja sowieso zahlt, sehe ich da nichts schlimmes oder unfaires dran. Der Betreiber mag das im Einzelfall anders sehen.

Also als erstes geschaut, wie das Ganze abgespielt wird. Ein Flash-File. Mist. HTML5-Videos hätten mir das Leben hier sehr viel einfacher gemacht. Aber gut: Challenge Accepted!

Schauen wir doch mal rein in das Gute swf-File. Diese Dateien kann man ja glücklicherweise relativ einfach decompilen. Jetzt könnte man sich verrückte Tools auf dem Rechner installieren, oder man Lädt die Datei einfach hier hoch / gibt dessen URL an: showmycode.com

Cool! Kurz darauf habe ich auch direkt eine URL im File gefunden. Und zwar mit dem Protokoll RTMP. Das Protokoll wird dazu verwendet, um Mediendateien zum Beispiel zum Flash-Player zu streamen. Aber wie komme ich da nun ran? Die gängigen Browser können mit so einer URL / dem Protokoll nichts anfangen.

Software 1: RTMPDump

Abhilfe schafft rtmpdump. Das Programm ermöglicht es, genau diese Dateien aus dem Netz auf die Festplatte zu laden. Eigentlich. Ich habe es allerdings nicht zum laufen bekommen… Trotzdem versuchen? So wird es installiert.

brew install rtmpdump

Software 2: FFMpeg

Nächster Versuch: ffmpeg

Installation ebenfalls über brew

brew install ffmpeg

In meinem Fall konnte ich die Dateien mit folgendem Befehl herunterladen:

ffmpeg -i "rtmp://server.foo.domain.de/pfad/quelldatei.mp4" -c copy -absf aac_adtstoasc ausgabedatei.mp4

Und schon liegen die Daten im angegebenen Verzeichnis. Das Dauert pro Datei wenige Minuten. Hier wird allerdings auch nicht mit Höchstgeschwindigkeit geladen, sondern ein Stream vorgetäuscht. So kann der Download für wenige MB schon einmal eine Weile in Anspruch nehmen. Zumindest ist es aber noch ein klein wenig schneller als alles per Screencast zu laden.

Alternative: Screen Recording

Falls man sich damit gar nicht beschäftigen kann oder will, schmeißt man einfach einen Screen-Recorder wie ScreenFlow (kostenpflichtig) an. Dann wählt man den entsprechenden Ausschnitt und zeichnet alles auf: Nachteil dabei ist allerdings, dass alles in Echtzeit aufgezeichnet werden muss. Mit entsprechend langen Inhalten benötigt man auch einfach sehr viel Zeit. Aber auf jeden Fall eine Variante, die immer klappt!


Beitrag veröffentlicht

in

,

von

Schlagwörter: