Gerade hatte ich gestern etwas mit dem Entwickler-Modus von Safari herumgespielt und schon habe ich heute einen (Support-)Anwendungsfall dafür.
Beim Betrachten von Youtube Videos ist mir seit einigen Tagen eine ungewöhnlich hohe CPU-Last aufgefallen.
Zunächst dachte ich natürlich an das Flash-Plugin, da hier vor Kurzem ein Update eingespielt wurde. Es gab auch schon ein weiters Update in der Zwischenzeit – was immer ein Zeichen dafür ist, dass vorher etwas faul war. Aber das half nichts.
Gut dachte ich; eigentlich sollte es mit Flash ja auch nicht viel zu tun haben; werden bei mir Youtube-Videos dank ClickToFlash von Mark Hoyois doch über HTML5 abgespielt.
Stutzig machte mich schließlich der Sachverhalt, dass die hohe CPU-Last auch schon auftrat, wenn Youtube besucht wurde und noch gar kein Video gestartet war.
Hier kommt nun der eingebaute Profiler zur Webentwicklung von Safari ins Spiel.
Hat man unter Safari->Einstellungen->Erweitert das Entwicklermenü eingeschaltet, kann man mit Menü->Entwickler->Webinformationen ( bzw. ⌘+⌥+i ) einen Profiler starten.
Um ein CPU-Profil zu erstellen, wechselt man ins Register Profiler klickt unten rechts in der Statusleiste auf den Aufnahme-Button ◉. Man lässt einige Sekunden aufnehmen und stoppt dann wieder.
In der Profiler-Ausgabe sortiert man die Spalten nun nach Gesamt-CPU (▾) und erweitert ▸ die (oberen) Zeilen mit hoher Prozessorlast.
Schon bald fand sich eine Safari-Extension, die scheinbar nicht mit meiner Safari-Version, anderen Extensions, Flash/HTML5, oder weiß-der-Geier-was… kompatibel ist.
Nach dem die betreffende Extension, die Youtube einen Button zum Herunterladen von Videos hinzufügt, deaktiviert / deinstalliert war, ging die CPU-Last sofort zurück.
Mit dem beschriebenen Vorgehen fand sich der Übeltäter schnell.
Hilfreich kann es auch sein, im Benutzerverzeichnis unter ~/Library/Safari/Extensions/ im Findern die Dateien nach Änderungsdatum zu sortieren. So erfährt man leicht, welche Plugins zuletzt mit einem Update – das vielleicht in die Hose ging – versehen wurden.
Da das Ganze doch etwas kompliziert ist, habe ich hier ein kleines Video präpariert.
Noch ein kurzes Wort zur betroffenen Extension: Schuldig war in meinem Fall der sog. Fastest Youtube Downloader (vor dem ich nun ausdrücklich warne).
Diese Extension ist nicht auf Apples Safari Extension-Gallerie erhältlich. Wohl aus gutem Grund, wie sich nun zeigt: FastestTube ist mindestens Adware (installiert, wie auch eingeräumt wird, AdLesse), wohl auch Spyware (sammelt Namen, Emails, Kreditkartennummern!), also ein Risiko (lädt beliebigen Code nach, telefoniert nach Hause) -> nicht installieren!
Es gibt neben der Extension-Gallerie von Apple auch inoffizielle Seiten, die Safari Erweiterungen anbieten.
Meiner Erfahrung nach sind gerade professionell aufgemachte Erweiterungen (die nicht von Einmann/frau Opensource-Programmierern stammen) gerne mit Werbung, Toolbars und sonstigen Dreingaben versehen.
Hier ist also Vorsicht geboten. Im Zweifelsfall verzichtet man also lieber auf eine Erweiterung verzichten, v.a. wenn man auch anders an sein Ziel kommt.
Für den Fall, Videos bei Youtube herunterladen, gibt es durchaus zahlreiche Alternativen. Hier eine (nicht ganz aktuelle) Liste.
Für Safari wird die Erweiterung YouTube5 zum Laden von Videos empfohlen (finde ich allerdings nicht so toll.)
Von den Online-Diensten ist m.M. SaveFrom & KeepVid via Bookmarklet zu empfehlen (verlangt allerdings aktives Java).
Als Mac Desktop-App kann ich das kostenlose MacTubes empfehlen. Wer lieber ein Programm mit Support haben will, greift zu Airy.
Weiter kann JDownloader (über Linkgrabber aus der Zwischenablage) von Youtube und anderen Quellen Videos laden (in verschiedenen Foramten, nicht gewünschte vorher entfernen).
Wer ganze Chanels oder Playlists laden will, der kann gegen Bezahlung zum 4KVideodownloader oder iTube Studio greifen.
Update: Mittlerweile ist mir noch Browser-Erweiterung YouTube Central untergekommen. Damit lassen sich nicht nur zuverlässig und komfortabel YT-Videos laden, sondern zugleich zahlreiche andere Schönheitsfehler und Problem abstellen und anpassen. Empfehlung!
Das sollte erstmal reichen.