Youtube ohne Flash: myfilm - HowTo

Fusselbär

Makefile Voyeur
Hallo,

wer kennt es nicht, da bekommt man einen Link
mit der Bemerkung "tolles Video mußt Du unbedingt sehen"
und was passiert wenn man dem Link folgt?

Man landet oft auf www.youtube.com
und vom "Video" ist weit und breit nichts zu sehen.
Stattdessen solche Meldungen in der Art:
Hello, you either have JavaScript turned off or an old version of Macromedia's Flash Player.
Click hereClick here to get the latest flash player.
Folgt man dem Link gibts für gewöhnlich bei Adobe sowas zu sehen:
Wir können keinen Web Player finden, der Ihrer Plattform und Ihrem Browser entspricht.
Der Adobe/Macromedia Flashplayer ist auch mal wieder wegen Sicherheitsmängeln gesperrt
und ist auch oft zu alt auf vielen Webseiten die neuere Versionen verlangen die nicht erhältlich sind.
(oder nur für Windows)


Aber für Youtube gibt es da was ganz Feines dagegen! :D

So geht es:
myfilm ein Perl Script, das es hier gibt:
http://marginalhacks.com/bin/myfilm

Es steht unter dieser Lizenz:
http://marginalhacks.com/License/

Auch eine myfilm Seite auf Freshmeat gibt es:
http://freshmeat.net/projects/filmdownloader/

Was wird noch gebraucht?
- perl
- lynx
- ffmpeg (Zum umwandeln in Quicktime *.mov Datei)

Eventuell ist noch die shebang vom Perl Script auf den richigen Pfad
anzupassen, unverändert sieht sie so aus:
Code:
#!/usr/bin/perl

Das packt man dann (als root) dorthin, wo die ausführbaren Dateien sind
also z.B. als myfilm nach
Code:
/usr/local/bin
macht es ausführbar
Code:
chmod 755 myfilm



Und schon kann es losgehen! :cool:

So wird myfilm bedient:
Es ist bloß darauf zu achten Hochkommas für die Youtube URL zu benutzen.
Beispielsweise:
Code:
myfilm -d 'http://www.youtube.com/watch?v=cFHK848SBr4'
Dann sollte folgendes in der Konsole zu sehen sein:
Code:
Fetching youtube ID: cFHK848SBr4
[myfilm] URL: http://www.youtube.com/watch?v=cFHK848SBr4
[myfilm] GET: lynx -source http://www.youtube.com/watch?v=cFHK848SBr4
Found film 'bsd baby'
[myfilm] Video: http://youtube.com/get_video.php?l=165&video_id=cFHK848SBr4&t=OEgsToPDskLVjv4HW82FzOcwixLk5PpL
Saving to: bsd_baby.flv
Convert to: bsd_baby.mov
ffmpeg version 0.4.9-pre1, build 4718, Copyright (c) 2000-2004 Fabrice Bellard
  built on Sep 27 2006 06:13:56, gcc: 3.4.6 [FreeBSD] 20060305
Input #0, flv, from 'bsd_baby.flv':
  Duration: N/A, bitrate: N/A
  Stream #0.0: Audio: mp3, 22050 Hz, mono
  Stream #0.1: Video: flv, 240x320, 25.00 fps
Output #0, mov, to 'bsd_baby.mov':
  Stream #0.0: Video: mpeg4, 240x320, 25.00 fps, q=2-31, 200 kb/s
  Stream #0.1: Audio: aac, 22050 Hz, mono, 64 kb/s
Stream mapping:
  Stream #0.1 -> #0.0
  Stream #0.0 -> #0.1
Press [q] to stop encoding
frame=  365 q=9.7 Lsize=     654kB time=14.6 bitrate= 366.9kbits/s
video:555kB audio:92kB global headers:0kB muxing overhead 1.040934%

ls sollte dann folgendes sagen:
Code:
ls | grep bsd_baby
bsd_baby.flv
bsd_baby.mov
Und das Video der Wahl ist zum anschauen da.

KMPlayer kann z.B. beide Formate abspielen. :)
Und schon kommt man um dieses Flash herum
und kann trotzdem das Video angucken! :cool:


Gruß, Fusselbär
 
Zuletzt bearbeitet:
Wow, gar nicht mal schlecht. Vielen Dank für das Howto.

Eine Alternative, die ich immer benutzt habe war: http://keepvid.com/
Da kann man sich das dann einfach so runterladen und man bekommt auch google videos und viele mehr. Mit VLC kann man das z.B. auch angucken. ;)
 
Ich verwende dazu ein kleines Shellscript. Angesteuert wird es ueber 'wmcliphist'. Es erkennt (regex) eine youtube oder video.google.com mail und erlaubt mir dann mit einem Klick den Download anzustossen. (wmcliphist! nicht das Script ...)

Hier das Script. Achtung, braucht wget-1.11 alpha, damit der Dateiname richtig rum rauskommt, hat aber den Vorteil, dass bei video.google.com der Timestamp korrekt gesetzt wird.

Code:
#!/bin/sh

# youtube/video.google.com download script 
# pass it the URL to the page with the video embedded in it 
#
# ATTENTION!
# Requires wget-1.11 alpha 1 for the content-disposition to work correctly

STORE=$HOME/download/clips

case "$1" in
  *www.youtube.*)
  cd $STORE && wget -qO - "$1" | sed -e '/player2.swf?video_id=/!d' \
    -e 's,^.*\(video_id=[^&]*\).*\(t=[^&"]*\).*$,http://www.youtube.com/get_video?\1\&\2,' | \
    wget -q -c -i -
  ;;
  *video.google.*)
  cd $STORE && wget -qO - "$1" | \
    sed -En 's/.*googleplayer.swf.*videoUrl.*(http.*)&messagesUrl.*/\1/p' | \
    sed 's/%3A/:/g; s/%2F/\//g; s/%3F/\?/g; s/%3D/=/g; s/%26/\&/g; ' |
    wget -q -c -i -
  ;;
esac

Und die FLV kann man ja mit mplayer ansehen. (Gibts nen Player mit dem man darin Spulen kann?)
 
Alternativ sei an dieser Stelle noch kurz das Python Skript youtube-dl erwaehnt, welches -wie der Name schon andeutet- es auch ermoeglicht Videos von YouTube runterzuladen.
youtube-dl ist in den FreeBSD Ports (www/youtube-dl) oder bei [1] verfuegbar.

Um eine evtl. gewuenschte Umwandlung von .flv in ein anderes Zielformat muss man sich allerdings noch selber kuemmern.


[1]http://www.arrakis.es/~rggi3/youtube-dl/
 
Zuletzt bearbeitet:
On-topic:
Ah, klingt nach interessanten Scripten. Muss man noch das Python-Script mit ffmpeg verheiraten, dann klappts wohl ohne lynx.

Off-topic:
Was ist an den youtube-Videos eigentlich so toll? Sind die so witzig? Kommt man da billig an Kinofilme? :confused: Ich wüsste nicht, mal eines bewusst angeschaut zu haben.
Würde ich durch diverse News-Artikel und die c't nicht wissen, um was es sich im Groben handelt, würde ich unter der URL eher einen weiteren Klon dieser "Verlege-Rohre-auf-einem-Schachbrett-bevor-das-Wasser-kommt"-Spiele vermuten (a la Pipemania). :(

Ich muss dazu sagen, ich bin 30 (=> Foren-Opa?) und wohl in der Web 1.0-Welt hängengeblieben.

Danke für die Aufklärung,
juergen
 
Off-topic:
Was ist an den youtube-Videos eigentlich so toll? Sind die so witzig? Kommt man da billig an Kinofilme? :confused: Ich wüsste nicht, mal eines bewusst angeschaut zu haben.

hmm, es gibt halt eben, je nach dem was man mag, ein paar gute sachen dadrunter.

Ich mag z.B. einige "Musikvideos" recht gerne ...

Soweit ich das verstanden, kann da halt jeder der will sein Video hochladen, damit es sich andere anschauen können oO
 
Off-topic:
Was ist an den youtube-Videos eigentlich so toll? Sind die so witzig?
Kommt man da billig an Kinofilme? :confused:
Ich wüsste nicht, mal eines bewusst angeschaut zu haben.

Nein,

wirklich toll ist das nicht,
die Video Qualität ist miserabel.

Das einzige was das interessant macht,
ist das Community Ding.
Eben dieses "guck mal das »Video«".

Da habe ich mich irgendwann ausgeschlossen gefühlt
und gestern Nachmitag ist mir dann der Faden gerissen
und ich habe mich mal hingesetzt und geguckt was geht
ohne Flash Player.
Nur um mitreden zu können. :ugly:

Oder im Freundeskreis den gleichen Blödsinn
sehen zu können, das ist alles. ;)

Ich glaube auch, da ist gerade ein Hype wegen diesem Youtube.
Und der Google Kauf von Youtube hat es nicht besser gemacht.

Ihr dürft mich jetzt "Trendopfer" nennen. :ugly:


Gruß, Fusselbär
 
Danke, diese Scripte sind genau das, was ich immer gewünscht hatte,
wenn mir jemand per IM eine Nachricht à la "Hey schau unbedingt mal' das Video.." geschickt hat und ich zu dessen erstaunen antworten musste, das das technisch bei mir gerade nicht möglich ist.
 
flv videos können nicht nur von vlc sondern auch von gstreamer und mplayer gespielt werden.
man könnte also einfach ein plugin für den konqueror schreiben, dass wenn man auf youtube oder ähnlliches geht den komischen flash-wrapper mit dem kmplayer ersetzt der die datei selbstabspielt.

bei kde-apps.de gibts relativ viele sachen die per script oder kde-script so ein download+transcode machen, angbelich wir auch an einem solchen konqueror plugin gearbeitet.
 
Als ich mal versucht hab mit mplayer FLV abzuspielen waren Bild und Ton merkwuerdig unsynchron :D

Nach dem Konvertieren nach MPEG gings dann...
 
Zurück
Oben