Firefox 46 macht aus alten YouTube-Flash-Videos automatisch HTML5-Videos
Eingebettete YouTube-Videos findet man auf unzähligen Webseiten. Wird hierfür noch der alte Embedding-Code aus der Zeit vor dem HTML5-Player verwendet, können die Videos nicht ohne Flash Player abgespielt werden. Ab Firefox 46 schreibt Firefox solchen Embedding-Code intern automatisch um, um den HTML5-Player nutzen zu können.
Wenn heute YouTube-Videos auf Webseiten eingebettet werden, ist der dazugehörige Embedding-Code grundsätzlich kompatibel sowohl für die Flash- als auch für die HTML5-Wiedergabe. Embedding-Code von YouTube aus früheren Zeiten war allerdings noch nicht HTML5-tauglich. Dies bedeutet, dass diese Videos nicht abgespielt werden können, wenn kein Flash Player vorhanden ist. Und bekanntlich wird nur der wenigste Code im Web aktualisiert, wenn er veraltet ist.
Firefox 46 übernimmt diese Aufgabe für YouTube-Videos. Entdeckt Firefox einen alten, nicht HTML5-tauglichen Embedding-Code und der Flash-Player ist außerdem nicht installiert, dann schreibt Firefox diesen Code intern so um, dass Firefox das Video per HTML5 statt gar nicht wiedergeben kann. Der korrespondierende Schalter in about:config heißt plugins.rewrite_youtube_embeds.
Diese Funktion betrifft ausdrücklich nur den alten Embedding-Code, welcher ausschließlich Flash-kompatibel ist. Moderner Embedding-Code ist hiervon nicht betroffen. Hier verwendet Firefox nach wie vor HTML5 oder Flash, je nachdem, was der Nutzer von YouTube ausgeliefert bekommt, Firefox erzwingt also kein HTML5, sondern greift lediglich auf HTML5 zurück, wo ansonsten gar keine Wiedergabe möglich wäre, weil der Flash Player nicht vorhanden ist.
Mir fehlt irgendwie die umgekehrte Priorisierung . Ich würde gerne HTML5 als Standard im Netz haben und nur wenn der Nutzer explizit kein HTML5 möchte oder sein Browser zu alt ist, soll auf Flash zurückgegangen werden.
Ist die Unterstützung für HTML5 Videos noch so rudimentär dass man mit FLASH bessere Ergebnisse hat und die Bevorzugung von Flash rechtfertigen kann?
Es ist wirklikch nicht Mozillas Aufgabe, irgendetwas zu erzwingen, wenn Flash funktioniert. Firefox unterstützt nach wie vor Flash und das mindestens noch das gesamnte Jahr 2016. Ich habe auch schon von Nutzern gelesen, die bewusst Flash statt HTML5 nutzen, weil bei denen der Ressourcenverbrauch dann besser ist. Das ist nicht grundsätzlich so, kann aber wohl zutreffend sein. Und auf das, was Webseiten machen, hat niemand Einfluss. Da ist so eine Umstellung mit Arbeit verbunden, und das kann richtig viel Arbeit sein. 😉
@Drixel: Die youtube-weite Priorisierung kennst du aber oder?
Ansonsten echt ein geniales Feature!
Wie wird es technisch gelöst wird es einfach anders gerendert oder wird der HTML Code modifiziert?
Ich halte das vorgehen für fragwürdig, da ein Browser den HTML Code den er erhält so gut es geht zu rendern und nicht einfach durch etwas anderes auszutauschen.
Wenn jetzt der Browser den Inhalt anfängt zu modifizieren wo fängt man auf wo hört man auf. (Bei Addons die dies machen ist es ja durch den User erwünscht aber der Browser sollte dies nie von sich aus machen)
Wenn ein veralteter HTML Tag eingesetzt wird soll dieser auch so interpretiert werden und nicht einfach durch einen neuen Tag ersetzt werden.
Dann werden Webprogrammierer den falschen Code nicht korrigieren, da der Browser es ja dennoch richtig anzeigt.
Zudem wenn ich aus Absicht den Plugin Tag aus guten Grund verwende darf mMn. der Browser den nicht einfach modifizieren.
Das vorgehen ist vll. gut für die User aber aus der technischen Sicht halte ich es für falsch.
Technische Lösung: https://hg.mozilla.org/mozilla-central/rev/df9aaad130a3
Und genau deswegen macht Firefox das. Die Alternative dazu ist, dass Firefox diese Videos überhaupt nicht (!) abspielen kann.
Wir sprechen von YouTube, einer der meistgenutzten Webseiten auf diesem Planeten. Und wenn man mal überlegt, wo überall Videos eingebettet werden, dann sprechen wir hier mit Sicherheit von Millionen Wiedergaben (alte Einbettcodes * Nutzer ohne Flash Player * jeder Versuch, ein solches Video abzuspielen), welche möglich sind und vorher nicht möglich waren.
Der Mehrwert für den Nutzer ist hierbei so deutlich, dass es gute Gründe gibt, es zu tun.
So oder so nicht. Was glaubst du bitte, wie die Realität aussieht? Dass überall Code ausgetauscht wird, wenn YouTube seinen Einbettcode ändert? Vor allem geht es hier doch nicht einmal wirklich um Entwickler. YouTube-Videos werden vor allem von Nutzern (!) eingebettet, zum Beispiel in Foren. Und alter Code bleibt alter Code. Vor allem muss auch eine andere YouTube-URL verwendet werden, da sich die Struktur geändert hat. Wenn du in einem Forum oder sonst wo ein Video postest, wird das so für immer stehen, das wird nie wieder geändert werden, auch wenn YouTube wieder was grundlegend ändert. Es ist auch überhaupt nicht die Aufgabe von Entwicklern, Content (!) (es geht hier nicht um Programmierung!) mehrere Jahre nach der Erstellung zu überarbeitet. Content veraltet, das war immer so und wird immer so sein.
Der Browser ist für die korrekte Wiedergabe verantwortlich. Und in diesem Fall besteht nicht der geringste Zweifel (!) daran, was die Absicht des Codes ist. Und damit gibt es auch nichts, was dagegen spricht, der Mehrwert für den Nutzer ist definitiv gegeben.
Inwiefern das aus einer technischen Sicht falsch sein soll, erschließt sich mir beim allerbesten Willen nicht. Es wird "repariert", was "kaputt" ist und von alleine nicht die geringste Chance auf Reparatur hat. Und wenn du sagst, dass das vielleicht gut für die Nutzer ist, worüber reden wir hier dann? Nur um die Nutzer geht es, das ist der einzige Grund, wieso das gemacht wird.
Ein Browser sollte html w3c konform darstellen und genau das ist dann nicht der Fall, daher halte ich es aus der technischen Sicht für falsch.
Falschverhalten von Websites sollte nicht vom Browser korrigiert werden, sondern es sollte der Code von dem Betreiber korrigiert werden.
"YouTube-Videos werden vor allem von Nutzern (!) eingebettet, zum Beispiel in Foren."
Daher haben Foren oft eine Abstraktionsschicht BBCode oder ähnliches, da kann der Betreiber einfach umstellen wie der YT BBCode beim Anzeigen in HTML umgewandelt werden soll.
Bei Foren die HTML erlauben kann der Betreiber auch einfach alle alt eingebundenen Youtube Tags austauschen.
Wenn alle Browser den Support für Flash fallen lassen, müssen die Betreiber die veralteten Einbindungen ja so wie so korrigieren. Oder sollen dann alle Browser den Workaround einbauen?
Mit W3C-Konfirmität hat dieses Thema ja nun gar nichts zu tun.
Ebenso falsch. Es geht hier um kein Falschverhalten von Webseiten, die Webseite verhält sich in diesen Fällen absolut korrekt. Die Änderung geht darum, die Einbettung wieder funktionierend zu machen, weil die Einbettung heute anders funktioniert, um HTML5-kompatibel zu sein, und es ist vollkomen klar ist, dass die Fähigkeit, das Medium abzuspielen, gewollt ist, daran gibt es null Zweifel.
Das ist wirklich vollkommen realitätsfern. Dir ist schon klar, dass Forensoftwares als fertige Produkte verkauft werden und Betreiber in den meisten Fällen gar nicht die technischen Fähigkeiten für so ein Unterfangen besitzen? Und dir ist auch klar, dass man sehr häufig bei einer bestimmten Forenversion bleibt und nicht unbedingt jedes Major-Update mitgeht? Ich habe schon so viele Foren betrieben und betreibe immer noch mehrere Foren, ich weiß ziemlich gut, wie das läuft. Die Erneuerung einer Forensoftware ist nicht mal ansatzweise so üblich und auch überhaupt nicht notwendig wie die Erneuerung beispielsweise des Browsers. In vielen Fällen kommen solche "BBCodes" übrigens von Drittanbietern, da ist eine jahrelange Unterstützung sowieso unüblich. Und nochmal: hier geht es um keine Fehler, es wäre reine Content-Pflege und Jahre alten Content zu pflegen ist auf jeder Art von Seite im Netz unüblich.
Ja genau, weil auch jeder Forenbetreiber Regex beherrscht. Was für eine abenteuerliche Aussage.
Vollkommen falsch. Niemand muss Jahre alten Content pflegen und du brauchst nicht davon auszugehen, dass das irgendjemand machen wird. Wenn, dann ist das die ganz große Ausnahme und nicht die Regel. Und im Übrigen ist Mozilla nicht der erste Browserhersteller, der das macht, Apple ist da schon lange voraus. Die Browser anderer Hersteller habe ich nicht überprüft, es interessiert mich nämlich auch gar nicht, was andere machen, ich weiß aber, dass Firefox damit nicht der erste Browser ist.
Als ich die Überschrift gelesen habe, dachte ich erst an "Shumway" (https://github.com/mozilla/shumway) und dem scheint wohl auch so zu sein, oder?
Sofern ich nichts falsch verstanden habe, soll Shumway letztlich doch nichts anderes machen, als Flash-Inhalte nach HTML5 zu konvertieren?!
Wird Mozilla jetzt etwa anfangen, Shumway sukzessive in Firefox zu integrieren und fängt als aller erstes mit der Unterstützung von YouTube an?
PS.:
Ich selber habe auf meinem ArchLinux seit über einem Jahr kein Flash mehr installiert und sehe selbst beim surfen nur noch sehr selten Inhalte, die Flash benötigen (ansonsten habe ich auch noch Chrome für solche Zwecke installiert, wenn es mal nicht anders geht). HTML5 setzt sich immer mehr durch, zur Freude der Nutzer.
Shumway ist ein richtiger Flash-Player, das heißt, Shumway spielt Flash-Inhalte ab. Mozilla ändert hier aber intern nur die Art der Einbettung, so dass YouTube die HTML5-Version an die Nutzer ausliefern kann. Es wird also nicht das Video selbst umgewandelt, sondern YouTube dazu gebracht, eine Version auszuliefern, die kein Flash benötigt. Und damit würde es auch für Shumway nichts zu tun geben.
Nein, und das wird auch nicht absehbare Zeit passieren. Das Shumway-Projekt wurde depriorisiert, die Entwickler widmen sich derzeit verstärkt anderen Projekten. Nachdem Chrome mittlerweile Flash-Werbung standardmäßig auf Click-to-Play setzt, hat damit auch die Relevanz eines Flash-Player-Ersatzes abgenommen. Werbedienstleister können es sich nun weniger leisten, für Werbung auf Flash zu setzen, und den Flash Player in Werbung zu ersetzen, wäre der nächste große Meilenstein von Shumway gewesen, darauf hatte man zuletzt hingearbeitet.
Bin jetzt schon seit einiger Zeit mit Firefox ohne Flash (überhaupt ohne NPAPI-Plugins) unterwegs und mir ist noch kein altes Nur-Flash-Video von Youtube untergekommen. Trotzdem gut, dass man in dieser Hinsicht zukunftstauglich ist, das Ende von Flash ist ja absehbar.
Wenn jetzt noch Video-Live-Streaming von Flash & Silverlight befreit werden könnte 😮
Den Satz find ich so cool.
Wer sich mit HTML auskennt weiß, dass alle Browser so fast jeden Fehler den man macht korrigieren. Man kann Tags offen lassen, uralt HTML in HTML5 Dokumenten verwenden, und vieles mehr, der Browser richtets schon.
Wenn Browser keine Fehler korrigieren würden, würde so ziemlich keine Webseite richtig dargestellt werden, einfach aus dem Grund weil fast niemand sich 100% an den W3C Standard hält.
validator.w3c.org < ich behaupte jetzt einfach mal, dass von den Top 15 eurer Lieblingseiten höchstens eine einige keine Fehler enthält. Das sind alles Fehler die vom Browser entweder ignoriert oder korrigiert werden
Was passiert aber wenn der Embedding-Code aktuell ist der Server Flash ausliefert, jedoch der Benutzer Flash aus was für einem Grund auch immer Flash erst gar nicht installiert hat bzw. eine unsichere veraltete Flashversion hat- in diesem Fall ist das Video dann wohl nicht abspielbar- es wäre toll wenn Mozilla auch hierfür eine Lösung anbieten könnte(als konstruktiver Beitrag gemeint). Möglich wär wohl den Server quasi über die vorhandenen Abspielmöglichkeiten zu informieren, was aber unter Umständen grad auch bei Mozilla auf Bedenken hinsichtlich des Datenschutzes stossen könnte. Eine Herausforderung rein technischer Natur wärs wohl auf jeden Fall.
Wenn ein nicht veralteter Embedding-Code verwendet wird und der Nutzer keinen Flash Player installiert hat, liefert YouTube sowieso HTML5 aus, das ist also kein Problem. Es ist aber definitiv nicht Mozillas Aufgabe, sich darüber im Namen des Nutzers hinwegzusetzen, ob nun Flash oder HTML5 Anwendung findet, insbesondere da HTML5 nicht für jeden Nutzer die bessere Wahl ist. Und Google denkt sich auch etwas dabei, wenn sie Flash statt HTML5 ausliefern. Das Ziel ist naheliegenderweise die beste User Experience und das kann je nach Systemvoraussetzungen des Nutzers etwas anderes bedeuten. Und seitenspezifische Manipulationen sollte man in einem Browser nach Möglichkeit sowieso auf ein Minimum reduzieren. Die hier vorgestellte Änderung ergibt Sinn, weil YouTube so extrem wichtig für die Nutzer ist (durch die Nutzerzahlen) und entsprechende Videos sonst gar nicht abgespielt werden können. Aber wenn es kein Abspielproblem gibt, ist das nicht Mozillas Sache.
Ich finde dieses Feature gut! Ich bin schon seit längerer Zeit ohne Flash unterwegs und mich nervt dieser alte Embedding-Code ganz gewaltig.
@7ero: Wenn du mit W3C-Kompatibilität argumentierst, musst du aber bedenken, dass Flash ein propritärer Fremdkörper im Web ist. Eine in den 90ern standardkonform (=> ohne propritäre Techniken wie Flash) erstellte Webseite wird heute nicht grundsätzlich anders dagestellt als damals (mal davon abgesehen, dass keine Webseite in jedem Browser exakt gleich aussieht).
Hallo @Sören
Seit immer mehr Webseiten per https ausgeliefert werden habe ich immer mehr Probleme mit Webseiten die eine Suche anbieten. Ich kann mit der Zurück taste auf diese Ergebnisse nicht mehr zurück. Beispiel ist z.B. Startpage. Wenn ich Suchergebnisse da nicht in ein neues Tab öffnen habe ich verloren ich muss nach einem Zurück die Suche wiederholen. Ganz schlimm ist es auf der Arbeit. da nutze ich den ganzen tag nur solche Suchmaschinen. aber ich kann wegen Javascript die Ergebnisse nicht in einem neuen Fenster öffnen.
Kann ich die Zurück Funktion in Firefox unter https wieder aktivieren. Ich wechsle sonst zu Chromium.
Ich weiß jetzt ehrlich gesagt nicht, was die Frage mit Firefox 46, YouTube oder Flash zu tun hat. Die Zurück-Funktion hat in jedem Fall überhaupt nichts mit HTTP oder HTTPS zu tun.
Hallo Sören
Eine kurze Frage zu diesem Feature: sehe ich das richtig, dass ab Firefox 46 zum Beispiel dieses Video https://www.youtube.com/watch?v=RGHDjf8osfM im Firefox funktionieren sollte oder habe ich da etwas missverstanden? Ich habe den Flash Player nicht mehr installiert und erhalte beim normalen Zugriff über die Youtube-Seite diese Fehlermeldung:
"Für die Videowiedergabe ist Adobe Flash Player erforderlich."
Im Voraus vielen Dank und beste Grüsse
Hallo,
nein, Firefox kann nicht ändern, was YouTube ausliefert. Und wenn YouTube ein Video ausschließlich über Flash bereitstellt, lässt sich da nichts machen. Es geht um alten Code, der für die Einbettung auf Webseiten früher genutzt worden ist. Videos direkt auf YouTube sind also so oder so nicht betroffen, sondern nur auf anderen Webseiten.