Dieser Artikel ist größtenteils für alle Ubuntu-Versionen gültig.
Häufig werden im Internet Multimedia-Inhalte im sog. Streaming-Verfahren angeboten. Vor allem Filmtrailer oder Hörbeispiele für Musik, aber auch Interviews werden dabei meist in der Internetseite eingebettet abgespielt. Dies soll zum einen gewährleisten, dass ein Benutzer länger auf der Seite bleibt und sich vielleicht noch weitere Inhalte anschaut. Zum anderen möchte man so auch die dauerhafte Speicherung der Medien durch den Konsumenten verhindern.
"Da Streaming Media speziell für Echtzeit-Übertragungen und nicht für die dauerhafte Speicherung gedacht ist, muss die Qualität entsprechend niedrig sein, um bei den heute üblichen Datenübertragungsraten eine flüssige Übertragung zu ermöglichen. Ärgerlich ist daher die Verwendung der Streaming-Technologie bei Inhalten, bei denen es nicht auf eine Echtzeit-Übertragung ankommt, etwa bei Film-Trailern." (aus Wikipedia, der freien Enzyklopädie)
Dieser Artikel behandelt nur das Speichern von Video-Streams oder mms-Audiostreams. Für die Aufnahme von Internetradio gibt es den Artikel Internetradio aufzeichnen.
Möchte man Internetstreams dauerhaft speichern, so muss man zunächst die Adresse herausfinden, unter der der Inhalt abgelegt ist. Die allermeisten Streams liegen in einem weit verbreiteten Format, wie etwa avi, mov oder wmv vor. Die Adressen zu diesen Inhalten liegen jedoch in den seltensten Fällen offen vor. Meist wird auf eine Streaming-URL verwiesen, die dafür sorgt, dass das entsprechende Plugin zum Abspielen aufgerufen wird. Um die Adresse herauszufinden hat man folgende Möglichkeiten:
Die Adresse kann im Quelltext der Internetseite aufgeführt sein
Beim Abspielen des Streams wird die Adresse (kurzzeitig) angezeigt
Beim Abspielen durch das Totem-Plug-in (siehe Streaming) kann die Adresse per -Klick"→Kopieren" in die Zwischenablage eingefügt werden
Man kann die Firefox-Erweiterung MediaPlayerConnectivity /
verwenden
Man kann auch die Firefox-Erweiterung Adblock Plus verwenden, hierbei im FF unter "Ansicht" auf "Adblock Plus: Elemente der geöffneten Seite" klicken
Wichtig ist hierbei, dass die Adresse die Endung eines gültigen Videoformats wie z.B. .mov oder .wmv hat. Beginnt die Adresse darüber hinaus mit http://
, so handelt es sich um eine normale Internet-URL. Hat die Adresse jedoch den Anfang mms://
oder rtsp://
, so deutet dies auf eine Streaming-URL hin, bei der die "wahre" Adresse versteckt ist.
mms://
- deutet auf ein Microsoft-Format, meist wmv hin
rtsp://
- deutet auf eine Datei im Real-Media Format hin, meist rm
rtmp://
(usw.) - deutet auf einen Stream im Real Time Messaging Protocol (RTMP) hin
Bei URLs mit der Endung .asx handelt es sich um eine Container-Datei, in welcher sich wiederum eine mms://
-Datei befindet. Man erhält die Adresse der mms://
-Datei entweder, indem man die URL mit der .asx-Endung direkt in den Browser eingibt. Oder man kann die Datei mit einem Download-Manager herunterladen, sie dann mit einem Text-Editor öffnen und sieht die Adresse der mms://
-Datei. Ähnlich verhält es sich auch mit den beiden Container-Dateien .mov und .smil.
Es kommt auch vor, dass sich die Adresse in einer URL mit der Endung .xml versteckt, welche man dann direkt in den Browser eingibt und in der Ausgabe entweder direkt die Adresse sieht oder aber vielleicht auch eine weitere .xml-URL.
Eine weite Variante sind URLs mit der Endung .m3u8. Sie sind Bestandteil des HTTP Live Streaming Protocols, auch HLS abgekürzt. Die .m3u8 Datei funktioniert als dynamische Playliste bzw. Container Datei, die Links auf weitere .m3u8
Dateien für Streams in verschiedener Bitrate enthält. Die Container für die unterschiedlichen Bandbreiten enthalten einfache Links zu den segmentierten Dateien im .ts Format, die vom Client nacheinander heruntergeladen werden.
Hat man die Adresse herausgefunden, dann sollte der Download funktionieren. Bei normalen HTTP-Adressen kann man die Datei mit einem Download-Manager herunterladen. Videos aus einer Streaming-URL lassen sich in vielen Fällen mit dem MPlayer herunterladen. Das gleiche gilt auch für URLs mit der Endung .asx (siehe dazu auch hier). Videos aus einer Streaming-URL mit rtmp://
lassen sich oft mit den beiden Programmen flvstreamer bzw. rtmpdump (sie haben nahezu die identische Befehls-Syntax, ersteres ist aber weniger leistungsfähig) downloaden. Diese können über die Paketquellen von Ubuntu bezogen werden.
Für flvstreamer muss das folgende Paket installiert werden:[1]
flvstreamer (universe - command-line RTMP client)
mit apturl
Paketliste zum Kopieren:
sudo apt-get install flvstreamer
sudo aptitude install flvstreamer
Für rtmpdump muss das folgende Paket installiert werden:[1]
rtmpdump (universe - A small dumper for media content streamed over the RTMP protocol)
mit apturl
Paketliste zum Kopieren:
sudo apt-get install rtmpdump
sudo aptitude install rtmpdump
In diesem Paket befindet sich ebenfalls das Programm rtmpgw, welches ein HTTP-RTMP Stream Gateway ist. Für Näheres siehe bitte den Artikel Internet-TV/Stationen.
Für rtmpdump siehe beispielsweise #Streaming-Videos-von-der-ARD-Mediathek-laden.
Mit dem VLC Player kann man eine Stream speichern und gleichzeitig in eine Videoformat umwandeln. Über "Medien -> Konvertieren/Speichern" kommt man zum Reiter "Netzwerk", wo man die Stream-Adresse einträgt. Nach dem Klick auf "Konvertieren/Speichern" öffnet sich ein Fenster, in dem man den Speicherort und das gewünschte Videoformat auswählen kann. Da der Stream umgewandelt wird, dauert der Vorgang mitunter recht lange.
Das Speichern von Streaming-Videos, Live-Streams oder mms-Audiostreams wird mit einem Befehl für MPlayer über ein Terminal[3] ausgeführt. Die Befehlszeile lautet
bei direkten mms://
-Dateien
mplayer -dumpstream mms://example.com/Globalplayers/GP_14.wmv -dumpfile ./download/test.wmv
Die Adresse des Streams mms://example.com/Globalplayers/GP_14.wmv
ist frei erfunden und nur ein Beispiel. Diese .wmv-Datei würde nun als test.wmv im Verzeichnis /download innerhalb des Home-Verzeichnisses des aktuell angemeldeten Benutzers gespeichert.
Bei indirekten mms://
-Dateien (URLs mit der Endung .asx) lautet dagegen die Befehlszeile
mplayer -playlist Streaming-Adresse.asx -dumpstream -dumpfile Dateipfad.wmv
Manchmal erhält man während der Speicherung die Meldung:
Stream not seekable!
Dies bedeutet jedoch nicht, dass das Herunterladen nicht funktioniert. Je nach Größe der Datei dauert es eine Weile bis sich wieder etwas tut. Ist das Video komplett gespeichert, dann erhält man die Meldung:
Everything done. Thank you for downloading a media file containing proprietary and patented technology. Core dumped ;) Exiting... (End of file)
Zum Speichern von mms://
-Streams können auch die Kommandozeilen-Programme mimms und mmsrip genutzt werden.
Zum Speichern von rtmp://
-Streams siehe auch z.B. den Abschnitt Den deutschen-ARTE-Live-Stream speichern.
In der ARD-Mediathek liegt ein täglich aktualisiertes Repertoire an Sendungen und Kurzbeiträgen, welches man mit den beiden Programmen flvstreamer bzw. rtmpdump (sie haben nahezu die identische Befehls-Syntax) herunter laden kann. Man ruft einfach den gewünschten Beitrag auf und sieht sich dann den Quelltext der Internetseite an. Darin steht dann z.B. u.a.:
Beispiel-Seite(n):
http://programm.ard-digital.de/Themenschwerpunkte/Film/Klaus-Kinski-zum-20-Todestag
http://www.einsfestival.de/dokumentation_reportage/highlights/2011/kw_42/klaus_kinski.jsp
http://www.ardmediathek.de/ard/servlet/content/3517136?documentId=8474414
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 | <script type="text/javascript"> var player; var mediaCollection; var playerConfiguration; $jPlayer(document).ready(function(){ mediaCollection = new MediaCollection("video", false, 1); mediaCollection.setPreviewImage("/ard/servlet/contentblob/84/74/42/00/8474420/bild/213777"); mediaCollection.addMedia(0) mediaCollection.addMediaStream(0, 1, "rtmp://swr.fcod.llnwd.net/a4332/e6/", "mp4:swr-fernsehen/nachtkultur/2011/10/489308.m"); mediaCollection.addMediaStream(0, 2, "rtmp://swr.fcod.llnwd.net/a4332/e6/", "mp4:swr-fernsehen/nachtkultur/2011/10/489308.l"); mediaCollection.addMedia(2) mediaCollection.addMediaStream(2, 1, "", "mms://wm-ondemand.swr.de/a4332/e6/swr-fernsehen/nachtkultur/2011/10/489308.m.wmv"); playerConfiguration = new PlayerConfiguration(); // playerConfiguration.setRepresentation(quality, width, height, inLayer, scale) // video playerConfiguration.setRepresentation(0, 512, 288, false, true); playerConfiguration.setRepresentation(1, 512, 288, false, true); playerConfiguration.setRepresentation(2, 960, 544, true, true); playerConfiguration.setRepresentation(3, 1280, 720, true, true); playerConfiguration.setShowToobarQualNavButtons(false); player = new Player("player-8474414", playerConfiguration, mediaCollection); player.init(); if($jPlayer(document).getUrlParam("currentTimeCode")!= null){ var vm = new ViteMessage(player, playerConfiguration, mediaCollection, $jPlayer(document).getUrlParam("currentTimeCode")); } }); </script> <div id="player-8474414"></div> </div> <div class="mt-player-content_wrapper"> <div class="mt-player_content"> |
In Zeile 19 steht die Roh-Streamadresse des Large-Streams (da drüber die in Middle-Qualität): "rtmp://swr.fcod.llnwd.net/a4332/e6/", "mp4:swr-fernsehen/nachtkultur/2011/10/489308.l"
.
Aus dieser entfernt man die Zeichenfolge ", "
und hat dann die fertige Streamadresse: "rtmp://swr.fcod.llnwd.net/a4332/e6/mp4:swr-fernsehen/nachtkultur/2011/10/489308.l
.
Nun ruft man ein Terminal[3] auf und gibt die Streaming-Adresse sowie den Dateipfad zum Speichern in folgender Reihenfolge an:
rtmpdump -z -r "rtmp://swr.fcod.llnwd.net/a4332/e6/mp4:swr-fernsehen/nachtkultur/2011/10/489308.l" -o "$HOME/Videos/Kinski.flv" --resume
Die Option -z
bzw. --debug
ist nicht unbedingt nötig. Sie kann aber bei Misslingen des Downloads Hinweise auf die Fehler-Quellen geben.
Die Option -e
bzw. --resume
ist ebenfalls nicht unbedingt nötig. Sie sorgt aber ggf. für den Download in mehreren Teilen.
Beispiel-Seite: http://www.ardmediathek.de/ard/servlet/content/3517136?documentId=8619708
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 | <script type="text/javascript"> var player; var mediaCollection; var playerConfiguration; $jPlayer(document).ready(function(){ mediaCollection = new MediaCollection("video", false, 1); mediaCollection.setSubtitleUrl("http://www.ard.de/static/avportal/untertitel_mediathek/8619708.xml", 0); mediaCollection.setPreviewImage("/ard/servlet/contentblob/86/19/72/20/8619722/bild/231711"); mediaCollection.addMedia(0) mediaCollection.addMediaStream(0, 0, "rtmp://vod.daserste.de/ardfs/", "mp4:videoportal/mediathek/ttt+-+titel+thesen+temperamente/c_200000/205956/format241403.f4v?sen=ttt+-+titel+thesen+temperamente&for=Web-S&clip=Klaus+Kinski+-+Pionier+der+Selbstvermarktung&mediathek=ardmediathek"); mediaCollection.addMediaStream(0, 1, "rtmp://vod.daserste.de/ardfs/", "mp4:videoportal/mediathek/ttt+-+titel+thesen+temperamente/c_200000/205956/format241402.f4v?sen=ttt+-+titel+thesen+temperamente&for=Web-M&clip=Klaus+Kinski+-+Pionier+der+Selbstvermarktung&mediathek=ardmediathek"); mediaCollection.addMediaStream(0, 2, "rtmp://vod.daserste.de/ardfs/", "mp4:videoportal/mediathek/ttt+-+titel+thesen+temperamente/c_200000/205956/format241418.f4v?sen=ttt+-+titel+thesen+temperamente&for=Web-L&clip=Klaus+Kinski+-+Pionier+der+Selbstvermarktung&mediathek=ardmediathek"); playerConfiguration = new PlayerConfiguration(); // playerConfiguration.setRepresentation(quality, width, height, inLayer, scale) // video playerConfiguration.setRepresentation(0, 512, 288, false, true); playerConfiguration.setRepresentation(1, 512, 288, false, true); playerConfiguration.setRepresentation(2, 960, 544, true, true); playerConfiguration.setRepresentation(3, 1280, 720, true, true); playerConfiguration.setShowToobarQualNavButtons(false); player = new Player("player-8619708", playerConfiguration, mediaCollection); player.init(); if($jPlayer(document).getUrlParam("currentTimeCode")!= null){ var vm = new ViteMessage(player, playerConfiguration, mediaCollection, $jPlayer(document).getUrlParam("currentTimeCode")); } }); </script> <div id="player-8619708"></div> </div> <div class="mt-player-content_wrapper"> <div class="mt-player_content"> |
In Zeile 21 steht die Roh-Streamadresse des Large-Streams (da drüber stehen die in Middle- und Small-Qualität): "rtmp://vod.daserste.de/ardfs/", "mp4:videoportal/mediathek/ttt+-+titel+thesen+temperamente/c_200000/205956/format241418.f4v?sen=ttt+-+titel+thesen+temperamente&for=Web-L&clip=Klaus+Kinski+-+Pionier+der+Selbstvermarktung&mediathek=ardmediathek"
.
Aus dieser entfernt man die Zeichenfolge ", "
und verschiebt das mp4:
um eine Ebene nach rechts.
Dann hat man die fertige Streamadresse: "rtmp://vod.daserste.de/ardfs/videoportal/mp4:mediathek/ttt+-+titel+thesen+temperamente/c_200000/205956/format241418.f4v?sen=ttt+-+titel+thesen+temperamente&for=Web-L&clip=Klaus+Kinski+-+Pionier+der+Selbstvermarktung&mediathek=ardmediathek"
.
Nun ruft man ein Terminal [3] auf und gibt die Streaming-Adresse sowie den Dateipfad zum Speichern in folgender Reihenfolge an:
rtmpdump -r "rtmp://vod.daserste.de/ardfs/videoportal/mp4:mediathek/ttt+-+titel+thesen+temperamente/c_200000/205956/format241418.f4v?sen=ttt+-+titel+thesen+temperamente&for=Web-L&clip=Klaus+Kinski+-+Pionier+der+Selbstvermarktung&mediathek=ardmediathek" -o "$HOME/Videos/Klaus+Kinski+-+Pionier+der+Selbstvermarktung.flv" -V
Die Option -V
bzw. --verbose
ist nicht unbedingt nötig. Sie kann aber bei Misslingen des Downloads Hinweise auf die Fehler-Quellen geben.
Die Option -e
bzw. --resume
ist ebenfalls nicht unbedingt nötig. Sie sorgt aber ggf. für den Download in mehreren Teilen. In diesem Beispiel führt sie dazu, dass der Download schon vor dem Starten abgebrochen wird.
Beispiel-Seite: http://mediathek.daserste.de/sendungen_a-z/1858312_satire-gipfel/12863662_nuhr-2012-der-jahresrueckblick?buchstabe=S
curl installieren
curl (universe - transfer a URL)
mit apturl
Paketliste zum Kopieren:
sudo apt-get install curl
sudo aptitude install curl
folgendes Bookmarklet installieren (ein Lesezeichen erstellen mit folgedem JavaScript Code als einzeilige Linkadresse)
javascript:(function(){s=document.getElementsByTagName('script'); t=''; for (i=0;i<s.length;++i){if (s[i].innerHTML.indexOf('mediaCollection.addMediaStream') !== -1) t=s[i].innerHTML; } p=/mediaCollection.addMediaStream.0, 2, "rtmp:..vod.daserste.de\/ardfs\/., .mp4:videoportal.mediathek.([^"]*).mp4/; m=p.exec(t); t=document.getElementsByClassName("boxTopHeadline")[0].innerHTML; r='curl rtmp://vod.daserste.de/ardfs/videoportal/mp4:mediathek/'+m[1]+'.mp4 -o "'+t+'.mp4"'; window.prompt ("Copy to clipboard: Ctrl+C, Enter", r); })();
Text im Popup in die Konsole kopieren und herunterladen.
Die Live-Streams des MDR-Fernsehens findet man in der MDR-Mediathek, mit einer Auflösung von 512x288. Das Speichern der Live-Streams des MDR-Fernsehens wird mit einem Befehl über ein Terminal[3] ausgeführt. Die Befehlszeile lautet
bei MDR Sachsen
rtmpdump -r "rtmp://x4030mdrtvsacc22033.f.l.f.lb.core-cdn.net/22033mdr" -y "live/4030mdrtvsac/live_de_500" -o "$HOME/Videos/MDR-TV-Live-Stream_Sachsen.mp4" --live
bei MDR Sachsen-Anhalt
rtmpdump -r "rtmp://x4031mdrtvsahc22033.f.l.f.lb.core-cdn.net/22033mdr" -y "live/4031mdrtvsah/live_de_500" -o "$HOME/Videos/MDR-TV-Live-Stream_Sachsen-Anhalt.mp4" --live
bei MDR Thüringen
rtmpdump -r "rtmp://x4032mdrtvthuc22033.f.l.f.lb.core-cdn.net/22033mdr" -y "live/4032mdrtvthu/live_de_500" -o "$HOME/Videos/MDR-TV-Live-Stream_Thüringen.mp4" --live
Die Option -o
übergibt dabei den Dateipfad zum Speichern der Live-Streams des MDR-Fernsehens.
Weitere URLs zu den Live-Streams des MDR-Fernsehens sind im Artikel Internet-TV/Stationen.
Als Beispiel soll die Webseite der Sendung Quarks & Co dienen. Obwohl hier ein Video zum Download angeboten wird, so ist die Qualität der mitgeschnittenen Streaming-Datei deutlich besser bzw. macht beim Abspielen deutlich weniger Probleme.
Quelltext der Sendung vom 2012-03-15
Im Quelltext nach rtmp
im Kombination mit mp4
suchen
Die Streaming-Adresse
rtmp://gffstream.fcod.llnwd.net/a792/e2/mediendb/quarks/video/2012/0313/120312_sendung_neu_web-m.mp4
extrahiert man aus der Zeile 388: <a href="?startArchiv=1&tab=archiv&startPicture=/bilder/mediendb/quarks/Bilder/2012/0313/120312_ganze_sendung.jpg&dslSrc=rtmp://gffstream.fcod.llnwd.net/a792/e2/mediendb/quarks/video/2012/0313/120312_sendung_neu_web-m.mp4&overlayPic=/tv/quarks/codebase/img/overlay_video.png&offset=null&red=fsstd-tv%2Fquarks&base=/tv/quarks/codebase/video/&isdnSrc=rtmp://gffstream.fcod.llnwd.net/a792/e2/mediendb/quarks/video/2012/0313/120312_sendung_neu_web-s.mp4">
. Die Adresse für DSL streamt mit höherer Qualität als die Adresse für ISDN.
Einfacher geht es mit einem Rechtsklick über dem Video-Banner und dann Linksklick
auf "Link-Adresse kopieren".
Nun ruft man ein Terminal[3] auf und gibt die Streaming-Adresse sowie den Dateipfad zum Speichern in folgender Reihenfolge an:
rtmpdump -r "rtmp://gffstream.fcod.llnwd.net/a792/e2/mediendb/quarks/video/2012/0313/120312_sendung_neu_web-m.mp4" -o $HOME/Videos/quarks_video_2012_0313_120312_sendung_neu_web-m.mp4 --resume -V
Die Option -V
bzw. --verbose
ist nicht unbedingt nötig. Sie kann aber bei Misslingen des Downloads Hinweise auf die Fehler-Quellen geben.
Die Option -e
bzw. --resume
ist ebenfalls nicht unbedingt nötig. Sie sorgt aber ggf. für den Download in mehreren Teilen. Falls der Download misslingt, so könnte aber genau diese Option daran Schuld sein.
In der ZDF-Mediathek liegt ein täglich aktualisiertes Repertoire an Sendungen und Kurzbeiträgen. Um es herunterzuladen gibt es – je nachdem welche der beiden Versionen der Mediathek man wählt – zwei Möglichkeiten:
HTML-Version : Herunterladen mit MPlayer: Man ruft einfach den gewünschten Beitrag auf und findet dann unten auf der Seite zwei Formate zur Auswahl. Mit einem Rechtsklick über "Windows Media Player / DSL 2000 -> Abspielen" kopiert man die Streaming-Adresse *.asx in die Zwischenablage. Anschließend ruft man ein Terminal[3] auf und gibt die Streaming-Adresse sowie den Dateipfad zum Speichern in folgender Reihenfolge an:
mplayer -playlist Streaming-Adresse.asx -dumpstream -dumpfile Dateipfad.wmv
Flash-Version : Hier sind die Videos qualitativ noch etwas hochwertiger und liegen außerdem u.a. im mp4-Format vor. Man benötigt die Firefox-Erweiterung Adblock Plus, hierbei im FF unter "Ansicht" auf "Adblock Plus: Elemente der geöffneten Seite" klicken.
Beispiel-Seite: Checkliste: Urlaubsrechte und -Pflichten
Die Seite muss soweit geladen sein, dass das Video abgespielt wird
Unten im Adblock Plus-Fenster ist u.a. auch die Objekt-Anfrage-URL http://www.zdf.de/ZDFmediathek/xmlservice/web/beitragsDetails?id=1639964&ak=web
aufgeführt
Durch einen Mittelklick hierauf öffnet man diese URL nun in einem neuen Browser-Tab
Ausschnitt aus dem angezeigten XML-Code, ziemlich unten:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 | − <formitaet basetype="h264_aac_mp4_http_na_na" isDownload="false"> <quality>high</quality> − <url> http://rodl.zdf.de/none/zdf/12/05/120514_tipp2_wis_h.mp4 </url> <ratio>16:9</ratio> <height>240</height> <width>432</width> <videoBitrate>480000</videoBitrate> <audioBitrate>56000</audioBitrate> <filesize>4043432</filesize> − <facets> <facet>restriction_useragent</facet> </facets> </formitaet> − <formitaet basetype="h264_aac_mp4_http_na_na" isDownload="false"> <quality>veryhigh</quality> − <url> http://rodl.zdf.de/none/zdf/12/05/120514_tipp2_wis_vh.mp4 </url> <ratio>16:9</ratio> <height>480</height> <width>852</width> <videoBitrate>1500000</videoBitrate> <audioBitrate>96000</audioBitrate> <filesize>11884937</filesize> − <facets> <facet>restriction_useragent</facet> </facets> </formitaet> − <formitaet basetype="h264_aac_3gp_http_na_na" isDownload="false"> <quality>low</quality> − <url> http://rodl.zdf.de/none/zdf/12/05/120514_tipp2_wis_m4l.3gp </url> <ratio>16:9</ratio> <height>136</height> <width>240</width> <videoBitrate>68000</videoBitrate> <audioBitrate>56000</audioBitrate> <filesize>1086006</filesize> − <facets> <facet>restriction_useragent</facet> </facets> </formitaet> − <formitaet basetype="h264_aac_3gp_http_na_na" isDownload="false"> <quality>med</quality> − <url> http://rodl.zdf.de/none/zdf/12/05/120514_tipp2_wis_m4m.3gp </url> <ratio>16:9</ratio> <height>176</height> <width>320</width> <videoBitrate>133000</videoBitrate> <audioBitrate>56000</audioBitrate> <filesize>1560409</filesize> − <facets> <facet>restriction_useragent</facet> </facets> </formitaet> − <formitaet basetype="h264_aac_3gp_http_na_na" isDownload="false"> <quality>high</quality> − <url> http://rodl.zdf.de/none/zdf/12/05/120514_tipp2_wis_m4h.3gp </url> <ratio>16:9</ratio> <height>176</height> <width>320</width> <videoBitrate>186000</videoBitrate> <audioBitrate>56000</audioBitrate> <filesize>1941371</filesize> − <facets> <facet>restriction_useragent</facet> </facets> </formitaet> − <formitaet basetype="h264_aac_3gp_http_na_na" isDownload="false"> <quality>veryhigh</quality> − <url> http://rodl.zdf.de/none/zdf/12/05/120514_tipp2_wis_m4vh.3gp </url> <ratio>16:9</ratio> <height>272</height> <width>480</width> <videoBitrate>380000</videoBitrate> <audioBitrate>56000</audioBitrate> <filesize>3366903</filesize> − <facets> <facet>restriction_useragent</facet> </facets> </formitaet> − <formitaet basetype="wmv3_wma9_asf_mms_asx_http" isDownload="false"> <quality>veryhigh</quality> − <url> http://wstreaming.zdf.de/zdf/veryhigh/120514_tipp2_wis.asx </url> <ratio>16:9</ratio> <height>384</height> <width>688</width> <videoBitrate>1400000</videoBitrate> <audioBitrate>192000</audioBitrate> <filesize>10268831</filesize> </formitaet> </formitaeten> <embed>false</embed> <socialBookmarks>true</socialBookmarks> <copyright/> </video> </response> |
Dort steht in Zeile 24 unsere gewünschte Download-URL http://rodl.zdf.de/none/zdf/12/05/120514_tipp2_wis_vh.mp4
Diese gibt man nun in einen Download-Manager ein und lädt damit die qualitativ hochwertige mp4-Datei herunter
Haupt-Seite: http://www.3sat.de/mediathek/index.php
Beispiel-Seite: Rätselhafte Mimik - Der menschliche Lügendetektor
Das Video-Format ist Flash, die Qualität: automatisch
Ausschnitt aus dem Quelltext, ziemlich unten:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 | <script type="text/javascript"> var swfVersionStr = "10.1.0"; var xiSwfUrlStr = "/mediaplayer/3/playerProductInstall.swf"; var params = {}; params.quality = "high"; params.bgcolor = "#f2f2f2"; params.allowscriptaccess = "sameDomain"; params.allowfullscreen = "true"; var playerBottomFlashvars = {}; playerBottomFlashvars.showPreloader= true; playerBottomFlashvars.barColor= 0x6E0F25; playerBottomFlashvars.barBorderColor = 0xFFFFFF; playerBottomFlashvars.barWidth= 720; playerBottomFlashvars.barHeight= 15; playerBottomFlashvars.configuration = "/mediaplayer/3/configuration_player3.xml"; <!--assets/--> playerBottomFlashvars.article = "true"; playerBottomFlashvars.tracking = "false"; playerBottomFlashvars.title = ""; playerBottomFlashvars.details = ""; playerBottomFlashvars.channelTitle = "3sat"; playerBottomFlashvars.hasCaption = "false"; playerBottomFlashvars.mediaURL = "http://fstreaming.zdf.de/3sat/veryhigh/120405_raetselhafte_mimik_wido.smil"; playerBottomFlashvars.CaptionURL=""; playerBottomFlashvars.assetID=""; playerBottomFlashvars.channelID=""; playerBottomFlashvars.CaptionOffset=0; playerBottomFlashvars.airTime=""; playerBottomFlashvars.expiryDate=""; playerBottomFlashvars.vcmsURL=""; var playerBottomAttributes = {}; playerBottomAttributes.id = "EmbeddedPlayerBottom"; playerBottomAttributes.name = "EmbeddedPlayerBottom"; playerBottomAttributes.align = "middle"; swfobject.embedSWF( "/mediaplayer/3/EmbeddedPlayer.swf", "flashContentTop", "726", "405", swfVersionStr, xiSwfUrlStr, playerBottomFlashvars, params, playerBottomAttributes, swfCreationCompleteHandler); swfobject.createCSS("#flashContentTop", "display:block;text-align:left;"); </script> |
Dort steht in Zeile 23 die playerBottomFlashvars.mediaURL = "http://fstreaming.zdf.de/3sat/veryhigh/120405_raetselhafte_mimik_wido.smil"
, diese mit einem Download-Manager herunterladen, sie dann mit einem Text-Editor öffnen:
<?xml version="1.1"?> <smil baseProfile="Language" version="3.0" xmlns="http://zdf.de/ns/zdfsmil"> <head> <meta content="SMuBl Core 3.4 Cienfuegos" name="creator"/> <meta content="2012-03-16T14:36:50" name="date"/> <meta content="vod" name="type"/> <meta content="1.0" name="version" /> <paramGroup xml:id="gl-vod-rtmp"> <param name="app" value="ondemand" /> <param name="cdnclass" value="default" /> <param name="cdnlabel" value="akamai" /> <param name="host" value="cp125301.edgefcs.net" /> <param name="protocols" value="rtmp,rtmpt" /> <param name="subscribe" value="false" /> <param name="type" value="stream" /> </paramGroup> </head> <body> <switch> <switch> <excl> <video dur="00:43:04" paramGroup="gl-vod-rtmp" src="mp4:3sat/12/04/120405_raetselhafte_mimik_wido_l.mp4" system-bitrate="62000"> <param name="quality" value="low" /> </video> <video dur="00:43:04" paramGroup="gl-vod-rtmp" src="mp4:3sat/12/04/120405_raetselhafte_mimik_wido_h.mp4" system-bitrate="700000"> <param name="quality" value="high" /> </video> <video dur="00:43:04" paramGroup="gl-vod-rtmp" src="mp4:3sat/12/04/120405_raetselhafte_mimik_wido_vh.mp4" system-bitrate="1700000"> <param name="quality" value="veryhigh" /> </video> </excl> </switch> </switch> </body> </smil>
...und sich dann aus den darin enthaltenen Parametern die rtmp://
-Streaming-Adresse der .mp4-Datei zusammensetzen. Nun ruft man ein Terminal[3] auf und gibt die Streaming-Adresse sowie den Dateipfad zum Speichern in folgender Reihenfolge an:
rtmpdump -r "rtmp://cp125301.edgefcs.net/ondemand/3sat/12/04/120405_raetselhafte_mimik_wido_vh.mp4" -o $HOME/Videos/120405_raetselhafte_mimik_wido_vh.mp4 --resume -V
Die Option -V
bzw. --verbose
ist nicht unbedingt nötig. Sie kann aber bei Misslingen des Downloads Hinweise auf die Fehler-Quellen geben.
Die Option -e
bzw. --resume
ist ebenfalls nicht unbedingt nötig. Sie sorgt aber ggf. für den Download in mehreren Teilen.
Haupt-Seite: videos.arte.tv
Beispiel-Seite: http://videos.arte.tv/de/videos/albert_schweitzer-4225518.html
Ausschnitt aus dem Quelltext, ziemlich unten:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | </dl> </div> </li> </ul> </div> </div> </div> <script type="text/javascript"> /* <![CDATA[ */ videopageSettings = { shareTrackingUrl: "/de/do_tracking/videos/albert_schweitzer-4225520,view,trackingPixel.gif?type=share" }; var url_player = "http://videos.arte.tv/blob/web/i18n/view/player_18-3188338-data-4870353.swf"; var vars_player = {}; vars_player.videoId = "4225518"; vars_player.admin = "false"; vars_player.mode = "prod"; vars_player.embed = "false"; vars_player.autoPlay = "true"; vars_player.configFileUrl = "http://videos.arte.tv/cae/static/flash/player/config.xml"; vars_player.videorefFileUrl = "http://videos.arte.tv/de/do_delegate/videos/albert_schweitzer-4225518,view,asPlayerXml.xml"; vars_player.localizedPathUrl = "http://videos.arte.tv/cae/static/flash/player/"; vars_player.lang = "de"; initPlayer(""); /* ]]> */ </script> |
Dort steht in Zeile 21 die vars_player.videorefFileUrl: http://videos.arte.tv/de/do_delegate/videos/albert_schweitzer-4225518,view,asPlayerXml.xml
, diese im Browser aufrufen:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | − <videoref id="4225518"> − <url> http://videos.arte.tv/de/videos/albert_schweitzer-4225518.html </url> − <videos> <video lang="de" ref="http://videos.arte.tv/de/do_delegate/videos/albert_schweitzer-4225520,view,asPlayerXml.xml"/> <video lang="fr" ref="http://videos.arte.tv/fr/do_delegate/videos/albert_schweitzer-4225568,view,asPlayerXml.xml"/> </videos> <subtitles> </subtitles> − <services> <service name="fullscreen" allow="true" allowEmbedded="true"/> <service name="share" allow="true" allowEmbedded="true"/> <service name="embed" allow="true" allowEmbedded="true"/> <service name="info" allow="false" allowEmbedded="true"/> </services> − <embed> <disallow>defrancisation.com</disallow> </embed> </videoref> |
Dort steht in Zeile 9: <video lang="de" ref="http://videos.arte.tv/de/do_delegate/videos/albert_schweitzer-4225520,view,asPlayerXml.xml"/>
, auch diese URL im Browser aufrufen:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 | − <video id="4225520" lang="de" playerLogo="ON"> <name>Albert Schweitzer</name> − <url> http://videos.arte.tv/de/videos/albert_schweitzer-4225518.html </url> − <firstThumbnailUrl> http://videos.arte.tv/image/web/i18n/view/30_10_11_schweitzer_jpg_1-4230702-imageData-4967649,h,406,w,720.jpg </firstThumbnailUrl> <dateExpiration>Sun, 6 Nov 2011 20:15:24 +0100</dateExpiration> <dateVideo>Sun, 30 Oct 2011 20:15:24 +0100</dateVideo> <numberOfViews>341</numberOfViews> <rating>0.0</rating> − <urls> − <url quality="hd"> rtmp://artestras.fcod.llnwd.net/a3903/o35/mp4:geo/videothek/default/arteprod/A7_SGT_ENC_04_037657-000-A_PG_HQ_DE?h=74bf9901874e33a7e584ce88824427b2 </url> − <url quality="sd"> rtmp://artestras.fcod.llnwd.net/a3903/o35/mp4:geo/videothek/default/arteprod/A7_SGT_ENC_02_037657-000-A_PG_MQ_DE?h=6fc967a9c67623e386cb9db9bf5c0fe7 </url> </urls> − <postrolls> − <video id="4210016"> <name>Albert Schweitzer (Ausschnitt)</name> − <url> http://videos.arte.tv/de/videos/albert_schweitzer_ausschnitt_-4233762.html </url> − <firstThumbnailUrl> http://videos.arte.tv/image/web/i18n/view/1030_schweitzer_07_jpg_2-4194804-imageData-4959922,h,169,w,300.jpg </firstThumbnailUrl> <dateExpiration>Sat, 5 Nov 2011 00:00:00 +0100</dateExpiration> <dateVideo>Sun, 30 Oct 2011 20:15:00 +0100</dateVideo> <numberOfViews>592</numberOfViews> <rating>0.0</rating> </video> − <video id="3795488"> <name>Festival: Anticodes 2011</name> − <url> http://videos.arte.tv/de/videos/festival_anticodes_2011-3795486.html </url> − <firstThumbnailUrl> http://videos.arte.tv/image/web/i18n/view/Anticodes_2011_jpg_2-3791402-imageData-4863821,h,169,w,300.jpg </firstThumbnailUrl> <dateExpiration>Wed, 31 Oct 2012 00:46:33 +0100</dateExpiration> <dateVideo>Fri, 25 Mar 2011 10:43:21 +0100</dateVideo> <numberOfViews>406</numberOfViews> <rating>5.0</rating> </video> − <video id="3061260"> <name>Afrika: 50 Jahre Unabhängigkeit</name> − <url> http://videos.arte.tv/de/videos/afrika_50_jahre_unabhaengigkeit-3207922.html </url> − <firstThumbnailUrl> http://videos.arte.tv/image/web/i18n/view/afrique_senegal_jpg_1-3058974-imageData-4709938,h,169,w,300.jpg </firstThumbnailUrl> <dateExpiration>Wed, 31 Oct 2012 00:46:11 +0100</dateExpiration> <dateVideo>Mon, 1 Feb 2010 00:00:00 +0100</dateVideo> <numberOfViews>1574</numberOfViews> <rating>0.0</rating> </video> − <video id="3225262"> <name>Togo: ein Mann und der Müll</name> − <url> http://videos.arte.tv/de/videos/togo_ein_mann_und_der_muell-3228794.html </url> − <firstThumbnailUrl> http://videos.arte.tv/image/web/i18n/view/1505_togo_01_jpg_1-3213660-imageData-4728385,h,169,w,300.jpg </firstThumbnailUrl> <dateExpiration>Tue, 30 Oct 2012 23:51:03 +0100</dateExpiration> <dateVideo>Sat, 15 May 2010 18:15:00 +0200</dateVideo> <numberOfViews>2459</numberOfViews> <rating>4.2</rating> </video> − <video id="3115732"> <name>Im Gespräch mit Albert Maysles </name> − <url> http://videos.arte.tv/de/videos/im_gespraech_mit_albert_maysles_-3122294.html </url> − <firstThumbnailUrl> http://videos.arte.tv/image/web/i18n/view/albert_itw_jpg_1-3115728-imageData-4718147,h,169,w,300.jpg </firstThumbnailUrl> <dateExpiration>Tue, 30 Oct 2012 22:29:00 +0100</dateExpiration> <dateVideo>Mon, 22 Mar 2010 00:00:00 +0100</dateVideo> <numberOfViews>252</numberOfViews> <rating>0.0</rating> </video> </postrolls> <duration>6550</duration> <tracking url="http://videos.arte.tv/de/do_tracking/videos/albert_schweitzer-4225520,view,trackingPixel.gif?type=views"/> <trackingReferer url="http://videos.arte.tv/de/do_tracking/videos/albert_schweitzer-4225520,view,trackingPixel.gif?referer=REFERER_URL&type=views"/> − <eStats> <video_name>albert_schweitzer_4225520</video_name> <video_section1>de</video_section1> <video_section2>601thema_dimanche</video_section2> <video_section3>ARTE7</video_section3> <video_section4>037657-000</video_section4> <video_section5>30102011</video_section5> <video_genre/> </eStats> − <xitiRichMediaTag> RENDERING_PLACE::601thema_dimanche::4225520albert_schweitzer_DE </xitiRichMediaTag> </video> |
Dort steht in den Zeilen 19 und 20 die <url quality="hd">
. Nun ruft man ein Terminal[3] auf und gibt die Streaming-Adresse sowie den Dateipfad zum Speichern in folgender Reihenfolge an:
rtmpdump -r "rtmp://artestras.fcod.llnwd.net/a3903/o35/mp4:geo/videothek/default/arteprod/A7_SGT_ENC_04_037657-000-A_PG_HQ_DE?h=74bf9901874e33a7e584ce88824427b2" -o "$HOME/Videos/Albert_Schweitzer.flv" --resume -V
Die Option -V
bzw. --verbose
ist nicht unbedingt nötig. Sie kann aber bei Misslingen des Downloads Hinweise auf die Fehler-Quellen geben.
Die Option -e
bzw. --resume
ist ebenfalls nicht unbedingt nötig. Sie sorgt aber ggf. für den Download in mehreren Teilen.
Das Speichern des deutschen ARTE-Live-Streams (mit einer Auflösung von 720x406) wird mit einem Befehl über ein Terminal[3] ausgeführt. Die Befehlszeile lautet
rtmpdump -r "rtmp://artestras.fc.llnwd.net/artestras" -a "artestras" -f "LNX 11,0,1,98" -W "http://www.arte.tv/flash/mediaplayer/mediaplayer.swf" -p "http://videos.arte.tv/de/videos/html/index-4268756.html" -y "s_artestras_scst_geoFRDE_de?s=1320220800&h=878865258ebb8eaa437b99c3c7598998" -o $HOME/Videos/ARTE-Live-Stream.flv --live
Die Option -o
übergibt dabei den Dateipfad zum Speichern des deutschen ARTE-Live-Streams.
Manche Internetseiten wie z. B. YouTube bieten ihre Videos nur eingebettet in Flash zum Anschauen an. Doch auch diese Videos können heruntergeladen werden. Bei der Benutzung von Firefox werden diese Videos, solange sie im Browser geöffnet sind im Verzeichnis ~/.mozilla/firefox/PROFILNAME/Cache gespeichert, von wo sie einfach herauskopiert werden können. Nautilus markiert die Dateien dabei als Flash-Video und zeigt sogar eine Vorschau, vorausgesetzt der Codec ist installiert.
Seit der Adobe-Flashplayer-Version 10.2 ist das aber nicht mehr so leicht möglich. Eine Lösung findet sich im Artikel Versteckte Flashdateien speichern.
Dies sind Internetseiten, die mit Hilfe eines Skriptes die Videodatei herunterladen können. Hierzu kopiert man einfach den Link zu der Videodatei und fügt diesen in das Eingabefeld der Seite ein. Nun muss man nur noch auf den Knopf "Download" klicken und das Video wird auf die Festplatte gespeichert. Bekannte Download-Seiten sind die folgenden:
VideoDownloader (benötigt Java Browser-Plugin, bei einigen Browsern wie Chrome aktuelles IcedTea)
Keepvid (benötigt Java Browser-Plugin)
Das Kommandozeilenwerkzeug clive ist ein in Perl geschriebenes Programm, mit dem man einfach und komfortabel Flashvideos (.flv) von Seiten wie YouTube , Google Video
, Vimeo
, Dailymotion
und vielen anderen auf seinem Computer abspeichern kann.
YAVTD (Yet Another Video Tube Downloader) der inoffiziellen Ubuntu-Variante ZevenOS
ist eine grafische Oberfläche (GUI), die auf clive und gambas2 aufsetzt. Siehe clive.
YouTube-Videos können auch mit dem – in den offiziellen Paketquellen enthaltenen – Programm youtube-dl heruntergeladen werden.
youtube-dl (universe)
mit apturl
Paketliste zum Kopieren:
sudo apt-get install youtube-dl
sudo aptitude install youtube-dl
Nach der Installation kann man Videos im Terminal herunterladen. Beispiel:
youtube-dl "http://de.youtube.com/watch?v=DiRYiyexsGY"
Bei Problemen kann man das Programm manuell aktualisieren:
sudo youtube-dl -U
Es gibt auch Erweiterungen für den Browser Firefox, mit deren Hilfe man eine Videodatei herunterladen kann. Wie man eine Firefox-Erweiterung installiert, wird im Artikel Firefox/Erweiterungen beschrieben. Eine der bekanntesten und gut gepflegt ist Video DownloadHelper .
Bei manchen Seiten wie z.B. Google Video gibt es meist mehrere Möglichkeiten, wenn die Datei in verschiedenen Formaten angeboten wird. Videos auf Flash-Seiten liegen oft im Format .flv (Flash_Video) vor. Diese FLV-Dateien kann man mit dem MPlayer abspielen und z.B. mit FFmpeg in andere Formate umwandeln.
Streaming Audio- und Videostreams mit Browser-Plugins abspielen
Internetradio Übersichtsartikel
Internetradio aufzeichnen – Einschlägiger Artikel
Internet-TV Übersichtsartikel
xVideoServiceThief – weiterer Video-Grabber
MediathekView – Download aus den Mediatheken der öffentlich-rechtlichen Sender
N24 Mediathek Stream/Video speichern/downloaden – Blogbeitrag 08/2012
Videos aus Webseiten speichern – Blogbeitrag 12/2006