Video for Everybody - HTML 5 video fallback
Kroc Camen has made available Video for Everybody, an HTML snippet that uses HTML 5 video if it's available in the browser, otherwise falling back to different video playback options.
What's interesting about 'Video for Everybody' is it doesn't use scripting at all. It uses the fallback mechanism built into HTML. The video playback mechanism used, in order of availability in the browser, is:
Categories: video, firefox
What's interesting about 'Video for Everybody' is it doesn't use scripting at all. It uses the fallback mechanism built into HTML. The video playback mechanism used, in order of availability in the browser, is:
- HTML 5 <video>
- Adobe Flash
- Quicktime
- Windows Media Player
- Text explaining how to get video support if none of the above is available
Categories: video, firefox
Labels: mozilla

13 Comments:
That list is missing the best fallback mechanism: Cortado.
Cortado is the best fallback for HTML5 video because it doesn't require you to support (and license) other formats. It's also widely supported (compared to most other fallback options other than flash).
The lack of scripting is quite nice, however.
Yes, that's true. I imagine it shouldn't be hard to add.
Hello. Thanks for the mention!
The reason I haven’t used Cortado yet is two fold: (It can be added, certainly, but was not a goal for the initial release)
1. The Java experience is bad on Windows. Tray applet pops up, bubble, big fat logo. Tries to install the Yahoo toolbar. It’s lacking the transparency that you get with Flash
2. *Many* Mac users have Java switched off on their Macs because of the security threat. I’ve never had Java switched on in any of my browsers since 2006.
3. Applet is not valid HTML5
Very cool.
However it appears to break for me when I combine XiphQT codecs with Safari Beta 4 on XP. Uninstalling fixed it, re-installing broke it again.
Looking forward to "Audio For Everybody" and Cortado support.
@dave thank you for that report. Not sure what I can do about that other than test with Safari 3 and report a bug to Xiph / Apple as appropriate.
I won’t be implementing Cortado myself because of user-experience reasons, but I would be happy to link to (from my site) anybody who does produce such a version of the code.
The reasons I won’t is that Video For Everybody does not (and shouldn’t) auto-prompt you to install anything. With Java, you have to "trust" the applet, and it takes a long time for the Java runtime to load. Throwing a Java applet at a user and asking them to trust it, when they may not be even able to see the video if it’s right at the bottom of a long page, is just not good enough a user experience -- the video should just play with no questions asked.
Hi Kroc. Happy to mention it - I like to see non-scripting based fallback alternatives for HTML 5 video.
Cortado doesn't prompt the user if it's not a signed applet and the jar is from the same domain as the video. This is what I've been using on tinyvid.tv for fallback.
@chris Thank you for clarifying! I’ve never used Java for my own work before so I don’t know much and was going by other experiences I’ve had using other people’s computers. My second concern though is the size of the code. I’ve already had complaints that the snippet is “tag soup” and adding more layers may put people off.
I understand that it’s preferable to play the OGG file, but Java isn’t the preferable technology IMO.
How does Cortado handle localisation? HTML5 video, Flash and QuickTime don’t need to be localised, but Cortado is wordy (tried it in Camino)
Adding Cortado also adds questions to the order of fallback. Internet Explorer hijacks the QuickTime embed with Windows Media Player if QuickTime is not installed, would Cortado come before, or after that? On low spec machines, I’ve seen the Java runtime cripple a machine trying to load it, freezing the web page for a good 10 seconds. That’s not acceptable when the other methods are much faster. Even on my high end Mac Camino froze and the hard disk thrashed as soon as the page opened providing an unpleasant experience I wouldn’t want to push on anybody.
Now if there was a Flash player than played OGG, I’d be all over that.
At the end of the day, Video For Everybody is an open source HTML5 snippet - do with it as you please! If [you] want to add Cortado go right ahead, I’d even help test on my browsers/computers.
Hi Kroc, I don't disagree with what you say - sometimes the user experience can be bad depending on the version of Java, speed of the machine, etc. I just wanted to point out what causes the prompting for install of the applet issue.
A Theora player written in Flash would be an interesting project for fallback usage.
Very cool and works great for the case where the player provides the controls.
On a related note: I've been wondering if there exists a Cortado/VLC-backed JS shim for emulating the HTML5 video API for Theora playback in IE while using native video element in the HTML source for other browsers (with scripted whining about lack of XiphQT to Safari users who don't have it). Does this exist yet?
The user experience of anything Java-windows-web has historically been dreadful and that's not just because Microsoft butchered their Java runtime implementation.
Java is evil. Firefox is still a memory hog despite the massive efforts that went into improving this aspect of the software. The last thing we need is adding Java on top.
@pd With respect, I think you need to update your information: http://dotnetperls.com/Content/Browser-Memory.aspx
Firefox 3 uses by far the least amount of memory out of all current browsers.
Why is there an emphasis on not using JavaScript with the html5 video tag? ActionScript is used on all of the popular video sites for the controls and navigation of the videos. How is the html video tag going to compete with Flash video without using JavaScript? Flash runs everywhere, except the iPhone. But I have read that you can get Gnash installed on Android, so it's likely only a temporary issue with Flash on embedded devices.
Also the user experience for the controls of a video is going to be inconsistent between different browsers and OSes. While basic functionality, play, pause, stop, etc. will be there. What about adding an "embed" button? You loose an opportunity to work with the 'behavior', controls, of the video.
For me VFE works very well, I've added an "Audio for Everybody" here as well: http://dev.restruct.org/AFE/
Post a Comment
<< Home