<video>-Tag in Firefox 3.5 aus Entwickler/innen-Sicht

Inhaltsverzeichnis

Ich hab mich schon lange nicht mehr über ein Browser-Release so gefreut, wie auf Firefox 3.5 – obwohl ich ein bisschen das Gefühl habe, dass es der bisher medial unspektakulärste Firefox-Launch war. Das liegt vermutlich daran, dass die sichtbaren Neuigkeiten minimal sind.

Aber für mich als Programmierer sind die Neuerungen unter der Haube ziemlich spannend. Mozilla hat nämlich einige neue HTML5-Features eingebaut (die aus den Empfehlungen der WHATWG entstanden ist, die sich aus allen Browser-Herstellern außer Microsoft zusammen setzt), die, wenn sie einmal genug verbreitet sind, spannende neue Anwendungen ermöglichen werden. Allem voran ist da der Video-Tag, der demnächst zu einer großen Sache werden könnte.

Es gibt noch weitere Entwickler-Features im Firefox 3.5, über die ich bei Interesse auch schreiben werde.

HTML5

HTML5 ist eine Weiterentwicklung des HTML-Standards, die unabhängig vom W3C, der offiziellen Web-Standard-Institution, durch die WHATWG von den alternativen Browser-Herstellern entwickelt wurde. Mittlerweile ist die Arbeit der WHATWG wieder Teil des W3C und wurde als HTML5 als Standard vorgeschlagen. Obwohl HTML5 noch kein fertiger Standard ist, versuchen die Mozilla, Opera, Google und Apple das zu ändern, indem sie durch die Implementierung der bisherigen HTML5-Entwürfe einen de facto Standard schaffen. (Etwas, das wir vor allem aus dem ersten Browserkrieg (Microsoft vs. Netscape) kennen.)

Microsoft hat eine Unterstützung von HTML5 angekündigt, aber gleichzeitig gewarnt, dass die Spezifikation noch nicht fertig ist. Es ist zu erwarten, dass Microsoft auf den HTML5-Zug aufspringt – aber wohl erst, wenn HTML5 ein offizieller Standard ist.

<video> und <audio>

Eine echt spannende, potentiell sehr weitreichende Neuerung sind der Video- und Audio-Tag – <img>-ähnliche Tags, um eben Videos und Audiodateien in eine Website einzubinden, ohne dafür Flash oder Silverlight zu brauchen. Der Browser implementiert dann selbst einen Player, stellt auf Wunsch die Controls (Play, Pause, etc.) zur Verfügung, etc.

Die Schwierigkeit dabei sind die zu verwendenden Codecs – die Browser-Hersteller haben sich hier noch nicht geeinigt, weder beim Audio-Codec noch beim Video-Codec. Die Standard-Empfehlung ermöglicht zwar die Unterstützung verschiedener Standards, wenn sich die Browser aber nicht auf einen Standard einigen, sehe ich wenige Erfolgschancen für den Video-Tag.
Die Codec-Unterstützung schaut im Moment wie folgt aus: Der Open Source-Codec Theora wird von Mozilla, Chrome und Opera unterstützt. Apple hat für Safari dagegen den mpeg4-Codec lizenziert, Chrome unterstützt neben Theora den H.264-Codec. (Opera hat den Video-Tag für die Version 10.1 angekündigt, Chrome hat den Video-Tag nur in der Test-Version eingebaut.)

Ebenfalls wichtig für die Verbreitung des Video-Tags ist, dass ihn die wichtigen Video-Portale unterstützen. Oder mit anderen Worte: Dass YouTube ihn unterstützt. Ich hätte damit nicht gerechnet (der Video-Player von YouTube wird ja zusätzlich zum Beispiel zum Sammeln von Statistiken und zum Anzeigen von Werbung und Video-Empfehlungen verwendet), aber es schaut gut aus: YouTube hat aber bereits eine HTML5-Demo-Seite erstellt (die aber im Moment nur in Google Chrome funktioniert)!
Wenn YouTube auf den Video-Tag aufspringt, wird er weit genug verbreitet werden, dass auch andere Video-Portale überlegen werden, ihn einzusetzen!

Ach ja: Der Audio-Tag ist wie der Video-Tag, nur eben ohne Video. Alles, was ich oben geschrieben habe, trifft auch auf den Audio-Tag zu (Audio-Codec, Verbreitung).

Beispiel

In diesem Beispiel werden zwei Video-Quellen mit zwei verschiedenen Codecs (zuerst die Theora-Version (.ogg), dann die mpeg4-Version (.mp4)) eingesetzt, als Alternative wird ein kurzer Hinweis angezeigt, dass der Browser veraltet ist. Stattdessen könnte man beispielsweise auch eine Flash-Variante des Videos einbinden.

<video width="500" controls>
<source src="http://videos.mozilla.org/serv/blizzard/35days/html5-fallbacks/zombie.ogg" type="video/ogg"/>
<source src="http://videos.mozilla.org/serv/blizzard/35days/html5-fallbacks/zombie-large.mp4" type="video/mp4"/>
<strong>Sorry, dein Browser ist zu alt für <video> oder du liest diesen Artikel mit einem Feed-Reader! <a href="http://getfirefox.com/">Hier gibts einen modernen Browser.</a></strong>
</video>

Update: Eine weitere Demo-Seite, die einige der Möglichkeiten des Video-Tags zeigt, hat Dailymotion aufgesetzt.

Wozu?

Web-Video war der zweite große Trend der letzten Jahre neben den Social Networks. Bisher mussten Web-Video-Provider zum Anzeigen und Abspielen der Videos immer auf Flash zurückgreifen, das hat aber verschiedene Nachteile:

Einerseits sind die Flash-Video-Player oft einfach schlecht. derStandard.at ist ein gutes Beispiel für einen solchen sagenhaft hässlichen Player, bei dem der Play-Button so klein ist, dass ich ihn manchmal gar nicht treffe.

Andererseits ist es nicht ohne weiteres möglich, den Flash-Player mit JavaScript zu steuern (starten, stoppen), es ist relativ aufwendig, eigene Controls zu entwickeln.

Dann ist da noch die Portierbarkeit, die gerne vergessen wird: Flash gibt es nur dort, wo Adobe einen Flash-Player entwickeln will und darf. Der Linux-Flash-Player wird von Adobe zum Beispiel ziemlich stiefmütterlich behandelt, fürs iPhone gibt es gar keinen, weil Apple das nicht zulässt. Beim Palm Pre wird er kommen, aber halt irgendwann, das Gleiche gilt für Android. Für Windows Mobile gibt es zwar einen Flash-Player, aber nur einen eingeschränkten.
Da die meisten mobilen Browser im Moment auf Webkit basieren (iPhone, Android, Palm Pre) oder Opera sind, die den Video-Tag bereits unterstützen bzw. Unterstützung angekündigt haben, würden die meisten Smartphones bald damit zurecht kommen.

Und ja: Mit den schneller werdenden Mobilnetzen wird Web-Video auch auf Smartphones eine große Sache, also spielt die Portierbarkeit eine Rolle.

Mir ist klar, dass der Video-Tag nicht sofort das Web stürmen wird, vor allem auf Entwickler-Seite. Aber ich hoffe auf Microsoft – das in den letzten Jahren bei den Web-Standards gewaltig aufgeholt hat, und könnte mir vorstellen, dass durch den Internet Explorer 9 und den wachsenden Anteilen der alternativen Browser in wenigen Jahren der Video-Tag von einem Großteil der Browser-Benutzer/innen unterstützt wird.

Falls es ein Interesse an Artikeln zu weiteren Browser-Features gibt, lasst es mich wissen, ich werde gern darüber schreiben.


Themen im Artikel

Verwandte Artikel

7 Kommentare »

Andylee
2. Juli 2009 @ 14:05 Uhr

Opera unterstützt den Video-Tag? Das ist mir neu. So weit ich weis, wurde die Unterstützung für diesen Html5-Tag erst für 10.1 angekündigt!

Kannst du etwas über andere Tags schreiben? Ich finde nämlich die neuen Formular-Tags mit Datum, color etc viel interessanter! Video brauchen viele “Normalsurfer” nicht (meine Eltern zB.), aber Formulare bequem ausfüllen, in die Situation kommen alle einmal (oder ziemlich häufig).

mfg

Sebastian Moser
2. Juli 2009 @ 15:09 Uhr

Stimmt, Opera hat diese Sachen erst angekündigt. Ich hab den Artikel entsprechend geändert.

Die neuen Formular-Tags sind meines Wissens bisher nur von Opera implementiert worden, daher noch uninteressant. (Nicht nur interessiert mich Opera nicht, Opera interessiert auch sonst nur einen Bruchteil der Web-Bevölkerung. Opera hat so wenig vertrauen in sich selbst, dass es die Formular-Felder nicht einmal auf der eigenen Seite einsetzt. Um eine ernsthafte Chance auf Verwendung zu haben, muss ein neuer Standard muss WENGISTENS von Safari oder Firefox implementiert werden.)

Andylee
2. Juli 2009 @ 15:17 Uhr

ok, ich verkneif mir den kommentar zu dieser Antwort ;)

nur kurz: es ist erstaunlich, wie man immer wieder einen Browser technisch korrekt aber in der schlussfolgerung völlig verblendet beschreiben kann :-P

Sebastian Moser
2. Juli 2009 @ 15:30 Uhr

Als Entwickler hab ich verschiedene Gründe, warum ich neue Technologien lerne und einsetze, mir die Test-Arbeit “antue”:

1. Persönliches Interesse (In die Funktion, in den Browser, in die perfekte Usability für *meinen* Browser – welcher das auch ist.)

2. Anforderung durch Auftraggeber (Ich entwickle nicht mehr speziell für den IE6 und drehe komplexe Features einfach ab, wenn sie dort nicht gehen. Bei bezahlten Projekten kann ich mir das nicht leisten.)

3. Gutes Aufwand/Nutzen-Verhältnis (Wenn eine Funktion für genügend User/innen einen Nutzen bringt, der in Relation zum Aufwand steht, werde ich mir den Aufwand antun.)

Die Formular-Sachen sind mir im Moment einfach den Aufwand nicht wert. Opera hat bei diesem Blog (mit Web-affinem Publikum) knapp 5%, bei http://www.presentify.at (jugendlicher Bevölkerungsquerschnitt) knapp 2%, bei http://www.lokales.at (allgemeiner Bevölkerungsquerschnitt) ca. 1,5%. Das rechtfertigt nicht den Aufwand, mir diese Formularfelder anzusehen, ihr Verhalten in den verschiedenen Browsern zu testen – vor allem, weil ich ohnehin weiterhin mit Datums-Widgets und server-seitiger Format-Überprüfung (bei Urls, Daten, E-Mails) arbeiten muss.
Die Idee ist eine echt gute, aber es gibt fast immer wichtigere Dinge als für 2% der Bevölkerung das Design minimal zu optimieren.

Ich sehe das im Fall von Opera aus dem dritten (pragmatischen) Gesichtspunkt, weil ich kein besonderer Opera-Fan bin (ich nutze immer wenn möglich Open Source-Software; außerdem mag ich die Usability nicht, aber das ist reine Geschmacksache) und bisher kein Auftraggeber danach gefragt hat.
Deshalb: Ja, Opera-spezifische Features umzusetzen macht rational meistens keinen Sinn.

Alexander Marktl
2. Juli 2009 @ 16:04 Uhr

Dailymotion steht voll auf diesen neuen tag: http://www.dailymotion.com/openvideodemo

Wenn das anzieht ist Flash auf dem iPhone quasi eh obsulet ;-)

Sebastian Moser
2. Juli 2009 @ 16:23 Uhr

Boa, genial! Ich hab den Link in den Artikel eingebaut – vielen Dank!

[...] TransformsFirefox 3.5 ist vor allem ein aufregendes Release für Web-Entwickler/innen. Über den <video>-Tag hab ich schon geschrieben, heute kommt etwas leichter testbares und ähnlich aufregendes: Die neuen [...]

Kommentar schreiben

© Copyright 2007 - 2009 | powered by WordPress