Article
4 comments

Video von Arte laden

Manchmal möchte man sicherlich für den Hausgebrauch ein Video aus dem Arte-Plus-7-Archiv auf den eigenen Rechner laden, um es sich später ansehen zu können. Das ist eigentlich auch nicht so schwer. Als Voraussetzung benötigt man die Software, die dem Streamingserver gegenüber so tut, als sei sie ein Streamingclient und die Daten auf die Platte chreibt. Diese Software heißt rtmpdump und ist hier zu finden.

  • Videoseite bei Arte +7 aufrufen, bis das gewünschte Video anspielt
  • Quelltext anzeigen lassen
  • Ziemlich weit im unteren Bereich des Quelltextes steht ein Block JavaScript, der eine Zeile wie
    vars_player.videorefFileUrl = "http://videos.arte.tv/de/do_delegate/videos/x_
    enius-3676952,view,asPlayerXml.xml";
  • Die darin enthaltene URL
    http://videos.arte.tv/de/do_delegate/videos/x_enius-3676952,view,asPlayerXml.xml

    gibt man im Browser in der URL Zeile ein.

  • Daraufhin bekommt man (vor allem im Firefox) eine XML Datei angezeigt. Die enthält eine Zeile wie:
    <video lang="de" ref="http://videos.arte.tv/de/do_delegate/videos/x_enius-3679702,
    view,asPlayerXml.xml"/>
  • Diese URL gibt man wieder im Browser ein und erhält wie der eine XML Datei. Diese enthält eine Zeile mit der gewünschten RTMP-Datei:
    rtmp://artestras.fcod.llnwd.net/a3903/o35/MP4:geo/videothek/EUR_DE_FR/arteprod/
    A7_SGT_ENC_04_041302-013-A_PG_HQ_DE?h=f101fe66ff0692d1ad12d361c5153ec6

    Dabei bitte darauf achten, daß wir die Datei im Tag

     <url quality="hd">

    haben möchten

  • Nun startet man den Download mittels:
    rtmpdump -e -r RTMLURL -o FILE.mp4
  • Das “-e” steht für “resume”, weil der Arte-Server öfters mal neu starten. das rtmpdump hängt dann an den schon herunter geladenen Teil an. Die Output-Dateiendung hängt natürlich davon ab, welches Dateiformat im RTMP-Filenamen steckt. In unserem Fall war das ja “MP4”.

So, und jetzt viel Spaß beim Offline-TV-Schauen.

[UPDATE]
Noch ein wenig komfortabler wird das Herunterladen durch eine Schleife um den Aufruf von rtmpdump, die überprüft, ob der Download abgeschlossen wurde. Dies meldet rtmpdump mit einem Exit-Code von 0. Solange der also nicht erreicht ist, soll der Download immer wieder gestartet werden:

false; while [ $? -ne 0 ]; do <RTMPAUFRUF_VON_OBEN>; done

Das false vor der Schleife sorgt dafür, daß beim Erststart schon ein Exit-Code von 1 gesetzt ist, damit die Schleife überhaupt anläuft … trickreich, oder?

4 Comments

Leave a Reply to Tobias Cancel reply

Required fields are marked *.