We’re on the verge of a serious evolution on the web. Right now, the common way to include video on the web is by use of Flash, a closed-source technology that is a massive resource hog. The answer is the HTML5 video tag, which allows you to embed video into HTML pages without the use of Flash or any other non-HTML technology; combined with open video codecs, this could provide the perfect opportunity to further open up and standardise the web. Sadly, not even Mozilla itself really seems to understand what it is supposed to do with the video tag, and actually advocates the use of JavaScript to implement it. Kroc Camen, OSAlert editor, is very involved in making/keeping the web open, and has written an open letter to Mozilla in which he urges them to not use JavaScript for HTML video. Note that Kroc’s website may not work properly in Internet Explorer. (Update The letter has been mirrored in the article, Read More for the full text)
The blog post by Mozilla is supposed to provide a method for website owners to use open video, but still allow browsers that do not support it to fall back to using Flash video. While this in and of itself is a good idea, the implementation is bad, as it uses JavaScript. Since the <video>
tag is supposed to work like a glorified <img>
, this doesn’t seem to make an awful lot of sense. “Just as you would never expect JavaScript to be required just to view an image (and bad code be responsible if so), the same should be true of video,” Kroc writes in the open letter. <video>
Is an element, not a JavaScript object.
The use of JavaScript conjures up a number of problems. Accessibility is one of them, as screen readers may not be able to play nice with JavaScript code; it may also hinder the use of WAI-ARIA. Lesser-known browsers may struggle with JavaScript implementation as well, since web developers may use JS features rarer browsers do not support. On top of that, the use of JavaScript may lead to security problems, for instance via XSS attacks.
A more philosophical – but no less valid – argument deals with the actual purpose of HTML. HTML is not restricted to just browsers, and may be parsed by other applications as well, applications which may not support JavaScript at all (RSS readers, for instance). Robots and spiders could also be hindered by the use of JavaScript.
Merely pointing out an error in ways is easy; it’s much harder to come up with a valid alternative. Kroc has done just that, and what makes it easier is that his “Video for everybody” is a far superior implementation than whatever the Mozilla boys and girls came up with. It degrades peacefully across all platforms and browsers, and makes no use of JavaScript to do so.
Simply put, “Video for everybody” uses the <video>
tag if your browser supports it, using OGG video. If your browser does not support it, it falls back to Flash. Is Flash not supported either? QuickTime will be used (which allows playback on the iPhone). Don’t have QuickTime either? Internet Explorer in Windows Vista and up will switch to Windows Media Player.
But don’t despair, if none of the above methods allow you to playback the video, a simple notice will appear, which will allow you to download the video in question and play it back from your hard drive. All this quiet degrading is done with just HTML – no JavaScript required. As a result, even OWB in AmigaOS4 works with Video for Everybody, showing me a nice download link.
What Mozilla should do
Kroc asks the following of Mozilla:
Remove the content of that blog post and replace it with new content that covers two main factors:
- How to insert HTML5 video using HTML and providing levels of fallback for legacy systems
- Why providing good fallback options / text is so important to a range of users and devices, and therefore why JavaScript should only be used to enhance a solution rather than be a requirement
Adopt HTML5 video (with fallbacks) across all Mozilla branded blogs, sites and web properties, unilaterally
- I personally don’t have Flash installed, it is – after all – an optional install, and I don’t like what it does to my computer. It seems counter to the work you are doing providing HTML5 video in your browser that I cannot see your own announcements.
- I believe Mozilla need to make a company-wide (and community-wide) commitment to using HTML5 video in all of their ventures – past, present and future.
Personally, I support Kroc’s open letter, and he hopes that more of you will do so. If you agree with Kroc that the <video>
should be used properly, and that it is important to move towards a web that is more open and more standardised than it is now, you can contact Kroc (Twitter | e-mail) to have your name added to the list of undersigned. In addition, you can spread the word, and propagate Kroc’s open letter to Mozilla, Video for Everybody, or this OSAlert item across the web.
The Letter (Mirror): An Open Letter to Mozilla Regarding Their Use and Promotion of HTML5 Video
Dear Mozilla,
The content of this letter is based upon
this blog post at the
hacks.mozilla.org initiative.
HTML5 video is coming, and a million web developers up and down the web will be soon looking for advice
and sample code to make use of HTML5 video. Web developers vary massively in skill and understanding of
the open principles of web development, promoted by yourselves via the
Mozilla Manifesto.
We cannot expect all developers to understand the knock-on effect of code snippets that they are copy-pasting from
people’s sites. It is one thing to educate people with a piece of code, it is another to communicate effectively
the principles behind a piece of code. Some developers do not care, and never will^aEUR”that is a fact of life.
In presenting a JavaScript-only method for using HTML5 video, you are promoting to
developers a number of major drawbacks, counter-intuitive to the points outlined in the Mozilla Manifesto.
- Accessibility
-
Screen-readers may be presented with a hurdle by a JavaScript solution. Users may also be using
browsers that developers are very unlikely testing in, who may inadvertedly break support by using
JavaScript features that are either not present, or not compatible with JavaScriptimplementations in these browsers. Requiring JavaScript may also hinder use of
WAI-ARIA. <video>
is an element, not a JavaScript object-
In other blog posts you have promoted the
<video>
element as a glorified
<img>
element^aEUR”being fundamentally a part of the document with all the same
capabilities CSS-wise. Some
incredible examples have been
demonstrated that go well beyond what is possible with plugins.Just as you would never expect JavaScript to be required just to view an image (and
bad code be responsible if so), the same should be true of video. - JavaScript still has no solid security model
-
By requiring JavaScript, you are also requiring people to switch on JavaScript for
sites that they may otherwise not trust. Viruses and malware have travelled far by hiding behind videos, and
XSS attacks could be done by forcing people to enable JavaScript for a site so
they can see a video. - Non-aggregatable, mashable
-
The use of JavaScript promotes a traditional browser-centric model. As a document
format, HTML goes beyond just the traditional ^aEUR~web-browser’ and may be parsed in
many ways and environments outside of the traditional browser.RSS aggregators (particularly web-based ones) may not execute JavaScript
as a safety measure, thus preventing the user from seeing the content.
Robots and spiders also would not be able to spider HTML5 video content if it is only
present with JavaScript. That alone could prevent all kinds of innovation that we
cannot yet conceive. What if a TV station could be created using nothing but
<video>
tags found on the web? Requiring JavaScript to see
<video>
largely puts a stop to mash-ups wanting to pull video from the web.
A Solution Has Been Presented
A solution for using HTML5 video with fallbacks for Adobe Flash, QuickTime and
Windows Media Player that works on a wide range of browsers without the need for JavaScript
has been developed, it’s called ^aEURoeVideo for Everybody^aEUR.
The market is made up of more OSes, browsers and processor architectures than it was five years
ago. More people (especially geeks) are browsing with AdBlock / NoScript /
FlashBlock than ever before. We can no longer just assume people are going to have
Flash and are allowing you to use it.The same rules apply to video. If my platform / device / browser of choice cannot see your video, or you do
not offer me the means to download the video to view offline, then I don’t see whatever it is you’ve got
to show me.
It helps web developers promote HTML5 video as an equal citizen alongside Flash and
QuickTime. The necessary playback is chosen automatically based on browser / operating system
capabilities, all without JavaScript. If the video is not able to play within the browser helpful
fallback text is displayed to offer the users a means of downloading the video file, or how to get the video to play
in the webpage by installing an HTML5-capable browser, Flash or QuickTime.
This means that it is almost impossible for the user to not be able to view the video^aEUR”one way or another^aEUR”and they
are not hindered from viewing the content by bad design decisions such as requiring JavaScript to use a
native HTML tag.
What You Can Do
I ask you to please do the following:
- Remove the content of that blog post and replace it with new content that covers two main factors:
-
-
How to insert HTML5 video using HTML and providing
levels of fallback for legacy systems -
Why providing good fallback options / text is so important to a range of users
and devices, and therefore why JavaScript should only be used to
enhance a solution rather than be a requirement
-
- Adopt HTML5 video (with fallbacks) across all Mozilla branded blogs, sites and web properties, unilaterally
-
I personally don’t have Flash installed, it is^aEUR”after all^aEUR”an optional install,
and I don’t like what it does to my computer. It seems counter to the work you are doing
providing HTML5 video in your browser that I cannot see your
own
announcements.I believe Mozilla need to make a company-wide (and community-wide) commitment to using
HTML5 video in all of their ventures^aEUR”past, present and future.
I understand the reason behind the JavaScript complaint, but I wish their was a better way the crazy hacked up browser conditionals. Javascript is certainly easier on the eyes and brain. I’m pretty sure I could find a browser that would throw chunks with it as well.
In anycase, I wouldn’t beat up Mozilla for posting a suggestion that tries to reduce the reliance on flash by including a bit of javascript. Javascript is pretty universal these days. I think there may yet be an even better solution than Kroc’s.
Edit: Does *not* work on amaya 11 for windows.
2nd Edit: No it does go to the download message, sorry my bad didn’t read that well enough.
Edited 2009-06-19 16:23 UTC
1. How many pages do you read the source code of in a day? Pretty honestly doesn^aEURTMt matter one iota to 99% of websites. It^aEURTMs all churned out by messy blog engine anyway. My website^aEURTMs code is specifically designed to be read (and people do) and even then I tried to make Video for Everybody fit in reasonably well.
2. Using JavaScript to enhance a solution is just fine. Video for Everbody can be enhanced by adding JavaScript controls. It^aEURTMs _requiring_ JavaScript just to access a plain HTML tag that^aEURTMs plain wrong. Does it annoy you when you can^aEURTMt view an image on a site because of someone^aEURTMs broken JavaScript?
JavaScript may be universal in _web browsers_, but it^aEURTMs not universal in RSS readers, spiders and robots, screen readers and who knows what systems in the future.
edit: Smiley added because I wish to educate, not interrogate.
Edited 2009-06-19 16:26 UTC
Good points. The screen reader that my visually impaired friend uses does work with Javascript. With all of the sites that already require javascript for stupid reasons, its almost a requirement for them.
Code that isn’t easy to understand is more likely to be broken ( accidentally or maliciously) with out noticing.
Great points you have raised; it actually brings me to tears when I see such crappy code being written out on the internet. It might not be so bad if it were solely amateurs doing it but I see people who were actually educated at polytech or university making the worlds worse code – if I was their tutor I would be ashamed for not instilling some good habits.
I remember when I was learning some basic web design – even in the earliest classes you could fail an assignment simply by failing to make your website accessible, cleanly coded, non-verbose and descriptive comments for maintenance (if for a large organisation with a high staff turn over).
Kroc, I have been working (independently) on another solution that still uses Javascript to gradually enhance, but uses plain HTML5 video markup on the page, which makes it very easy to deploy.
I have written in my blog about it: http://gettingsoftware.posterous.com/html5flash-using-html5-video-a…
The main reason why I went down the Javascript path, is because I wanted to use the HTML5 video API to create interactive media players, so I needed a fallback that could do a bit more than just playing a video. Probably these two approaches should be combined to provide a fallback for those without Javascript or without Flash (but with Quicktime or Windows Media Player)
This is a very good concept and I^aEURTMve seen other people asking about this problem. Give me a few days for me to write to you properly with my thoughts.
This is a ridiculous complaint. JavaScript is as much a foundation of today’s web as html. Why not use JS to generate all the verbose static stuff in the video for everybody proposal, if it can do so more cleanly? This will make adoption of fallbacks more widespread, which is I think what we all want.
The point of a fallback is that it works when something is missing; requiring JS entirely defeats that purpose.
With Video for Everbody if you are using IE on Vista or up then even if you have Flash uninstalled, QuickTime uninstalled and JavaScript disabled – the video will *still* play
Another point is, every site is going to end up using JavaScript controls for embedded HTML5 video anyway, so an all-JavaScript solution would make the most sense.
A lot of sites use Javascript for file uploads. That does not mean fileuploads should only be possible using Javascript.
The basic html file upload works just fine without Javascript. In the same way, the basic “video” element should work without Javascript, having basic controls for stop, start, and the timeline should be included in the basic video html controls.
The implementation should also allow the controls to be hidden or formatted using CSS and controlled using JS.
Right, which is _perfectly fine_, as long as the Video tag is in the document itself and not added by JavaScript. It^aEURTMs okay to enhance a video with JavaScript, those of us with JS switched off when we enter a site can still play the video using its native controls or by right-clicking on it. Added safety, but at the same time no loss in functionality.
Am I the only one for which the links towards the open letter and the “Video for all” give back a 403 response (In both firefox and midori) ? I’d be really interested in reading both articles
I think the osnews effect crashes his website
I^aEURTMm working on that now
Edit: Should be back in 30 mins, it was just the DDoS protection on the server kicking in.
Edited 2009-06-19 17:38 UTC
I use the web with disabled Flash, Java, JavaScript, and usually Cookies.
If a site offers a video as an .ogv download link, or as an HTML 5 video, I will be able to watch it. If not, I will just skip that site.
Why should I care what Mozilla does or says? I do not even use their browser.
Because as the letter outlines, a million crappy dreamweaver developers are going to be copy/pasting code from somewhere, and if that^aEURTMs JS-only video insertion then you^aEURTMre not going to see a lot of videos, ever, even though your browser is perfectly capable if only the website^aEURTMs programmers had a clue.
This matters to everybody using the web either publishing, or viewing video in the near future.
If you don^aEURTMt care, that^aEURTMs fine^aEUR”but I^aEURTMm fighting so that you don^aEURTMt have to care and video ^aEURoejust works^aEUR for you.
Please refer Dreamweaver developers to this post on using audio and video in Firefox:
https://developer.mozilla.org/en/Using_audio_and_video_in_Firefox
It’s well written and doesn’t require JavaScript. It even specifically mentions how to use Flash as a fallback without using JavaScript.
Did you RTFA? No? Go back, and you^aEURTMll see the link pointing to hacks.mozilla.org
Is it just me, or did someone forget a closing italics tag?
Edited 2009-06-19 19:58 UTC
The linked article looks like it was perfectly justified to me – did YOU even look at the article he linked to? NO? Go look.
If you read the HTML5 spec you’ll see that the JavaScript is an intended part of the <video> tag.
http://www.whatwg.org/specs/web-apps/current-work/multipage/video.h…
Beware: It’s long
What you need to understand is that this isn’t an issue with Mozilla, it’s an issue with the spec – well… in your view anyway. Personally I can’t see anything wrong with requiring JavaScript. The links and buttons that will be linked to the media.play() method will likely be part of the HTML document, and therefore clickable using a screen reader or some other sort of accessibility technology. Having JavScript will not stop people clicking these links.
The only problem comes is when you don’t have Javascript enabled, and almost everyone has it enabled. The only people that don’t are people who know what it is; and if they know what it is they are likely to know the consequences of turning it off. Most people who browse the web have no idea what JavaScript is, so they just leave everything as the default (which is on).
Personally I see this as a non-issue. As the web evolves the technology around it has to as well. If this means one web technology (HTML) becoming strongly linked to another (JavaScript) so be it. We’ve had far too long where the web stood still because of lack of innovation, and we’re paying the price now. The only way to innovate is to evolve, and that does mean making some changes that might not seem like a brilliant idea at the time; but as the web moves on the changes that are made will become accepted and become the new standard.
PS. sorry for the long and rambling rant
You misinterpret the spec (yes, I have read it).
<video> has a JavaScript interface (so that you can roll your own controls and interact with it) — but JavaScript is not required for the video element to exist and to play video. The video element works without any JavaScript.
That is no different than changing an images size or src attributes using JavaScript. Completely optional and layered on top.
What Mozilla have published is a method of using JavaScript to detect capabilities and then write elements into the page using JavaScript. This is universally bad, regardless of the output being Video / Audio or Img.
I got ya. It’s about a code snippet, not the implementation itself.
I did understand that the spec meant that but from the way I read your letter the first time it looked like you were objecting to that.
In that case I agree with you, as browser sniffing is never a good thing.
Well, the problem is there are no released browsers at all that even support HTML 5. I do agree with your letter, however according to the Mozilla site you do not need JavaScript to run the video tag with the beta. It is not a requirement. https://developer.mozilla.org/en/Using_audio_and_video_in_Firefox
Ignore the hacks blog, as that is not from the actual developers of Firefox. What you have been reading is the thoughts of others, not how the standard will actually be implemented, nor is implemented (please try the RC’s)
The point isn’t so much using JavaScript at all, or using it to control the playing of embeded media, but using JavaScript to dynamically insert the Video element in the first place. On a site where JavaScript is being used to selectively embed the video tag when the page is rendered, browsers with JavaScript turned off (or other apps that may not be full browsers and won’t implement JavaScript at all) will not see the Video element at all. I think that was his point: coding a page that will not actually have any content at all without JavaScript being enabled is a bad idea.
Edited 2009-06-19 20:05 UTC
Downgrading to QT before WM will cause a lot of grief for Windows users. Many PCs have Quicktime installed as part of an iTunes install but rarely is it the main/default media player for video and web content. Downgrade to Windows Media first then Quicktime.
Mac and iPhone users won’t be affected at all because those platforms don’t have WMP.
Actually, it’s better to put Flash behind both WM and QT. Flash is only the standard for web video because of its ubiquity and as such it should be treated as the lowest common denominator while other less resource intensive and higher quality formats should be pushed forward.
Downgrading to QT before WM will cause a lot of grief for Windows users.
Yeah, really – when it comes to CPU-hogging, Flash looks downright svelte compared to the Windows version of Quicktime.
I think it is about being practical. MP4 through Flash is omnipresent. QuickTime can play it. Windows Media Player, out of the box until Windows Vista, cannot (correct me if I am wrong).
I agree wholeheartedly. I also browse the net with JavaScript, cookies, ads disabled, and it would be such a relief if I didn’t have to allow them just to watch a video on a random site. I know it is wishful thinking, but it would really be about time (actually it’s already late by at least five years) to come up with a security model for JS. As it is now, JavaScript is just a PITA from both (user & developer) sides.
But thinking about it, it’s not just JS: CSS, Flash, Java applets, the ActiveX hell 5 years ago… seems like the web is kind of the garbage dump of incompetent technologies.
This was a very interesting article.
As the article says, it’s one thing to point out a problem, but it’s much harder to come up with a solution. It’s *great* that Kroc has done so, and I fully support his efforts. He’s taken a very constructive approach to things.
Hopefully, Kroc’s approach will be adopted by Mozilla (and not stymied by any “Not Invented Here” stuff), as good solutions are good no matter where they come from.
Edited 2009-06-20 00:00 UTC
when it specifically states in the spec that video is not meant to:
It’s not intended to address special needs accessibility markets.
If I understand correctly, the quote you reference is talking about the area inside the <video></video> tags, saying the contents you put there *should* be used as a fallback for older browsers, *but not as a fallback for accessibility purposes*….
I don’t think Kroc was ever making an argument for using the fallback content for accessibility, though. He was saying that in the future, the <video> tag itself will be good for accessibility…. But this can only be possible if it is directly embedded into the HTML, and not inserted via JavaScript.
Edited 2009-06-20 09:42 UTC
The ‘hacks’ article is one video users approach to doing fallback. There are plenty of others and just because one Mozilla person uses JavaScript does not mean that Mozilla is pushing a JavaScript only solution. I’m a Mozilla developer and I’ve given non-JavaScript fallback examples in the past. For example:
http://www.bluishcoder.co.nz/2009/02/fallback-options-for-html5-vid…
Mandating that people *must* not use JavaScript is silly as is mandating that people *must* use it.
But in what world is a JavaScript-only solution simply *better* than an HTML-solution, or an HTML-solution that optionally uses JavaScript on top?
As the article says — what of robots and spiders wanting to index <video> and do mashups?
I never said it was better or worse. As I mentioned I advocate the non-JavaScript mechanism myself. You should be directing your comments at the website that is using the JavaScript based fallback and not at Mozilla as a whole.
Kroc (and myself, for I have signed it) are trying to encourage Mozilla to have best-practice guidelines. This letter shouldn^aEURTMt exist, but it does, because it seems while some at Mozilla completely agree, there are article writers that do not (or rather, have not thought about it, choose not to, we dont know).
Want to have a javascript-injecting video post? Fine, just prefix it with dont-do-this-unless-you-must in 24em red Comic Sans.
Recent faux pas on Planet Mozilla: video demo that useragent sniffed, SlideShare widgets, Vimeo, Youtube & flash-only air.mozilla.com. Not a very good advert for Open Web, is it?
Basically: If it can be done better, it should.
How about the Open Video Conference, whose live streams required… Flash.
Just saying.
Whole-heartedly agree, myself and kroc were ranting about it on twitter (+identi.ca)
Planet Mozilla is an aggregation of weblogs of people that contribute to Mozilla. Mozilla has no control over the content of the weblogs and cannot tell them what to do. Mozilla does not even mandate what employees of Mozilla can blog about. For actual mozilla.com resources I agree that using the video element is good.
You mention air.mozilla.com. It has for a while now used Ogg Theora and the video element for streaming.
Certainly true, but as a mother to it^aEURTMs engineers and community Mozilla can set the standards that people *should* follow. Sometimes you can^aEURTMt leave everybody to their own devices because that^aEURTMs not enough.
If Mozilla were to put out an official announcement that they will be using HTML5 video on their own sites, and provide code samples, instruction and encouragement to their bloggers — uptake would be swift.
Quite simply not enough people are thinking about HTML5 video, it^aEURTMs a complete afterthought and they use Flash instead out of habit and a lack of sample code / encouragement.
1) Not sure I’d take web design advice or even criticism on things like accessibility from someone who’s website does not work cross browser, uses absurdly undersized fixed metric fonts on a fixed width layout in colors that do not meet the accessibility norms laid out in the WCAG, cannot even be checked for errors because no character encoding is declared, and is actively attempting to deploy technologies we won’t be able to actually use on REAL websites until sometime around 2016 if ever – at least if how long it took for HTML4/CSS2 to reach deployable is any indication… Hell Gecko STILL hasn’t even got HTML 4/CSS2 complete correctly! How’s that bugzilla #915 coming along? What’s that, you’re working on a specification not even out of draft yet FIRST?!? (Oh yeah, that open source fixes documented bugs at a lightning pace)
But then I’m one of the few people APPLAUDING Microsoft for concentrating on getting HTML 4 and CSS2 working right BEFORE tackling specifications not even out of draft.
2) His complaint about javascript and accessibility – It’s called NOSCRIPT, try it some time.
3) The reason for the use of script is for GRACEFUL DEGRADATION since not all browsers support it, or are going to support it properly any time soon. Even with the in-roads Firefox has made, 60-70% of the world is still on IE and they have no plans to include support – pages running that technology run the risk of joe sixpack telling you where to shove it when existing flash sites work just fine.
4) Javascript security issues – given that the majority of users aren’t smart enough (no offense folks) to even know you can turn javascript off (as evidenced by the people still using IE in the first place, again, no offense) so this is really a non-issue… besides, if people stopped using AJAX for stupid pointless crap in situations where it opens the door to XSS exploits (newest hotmail iteration much?), you wouldn’t have this problem.
Of course that argument is a hoot since almost all video websites use javascript already to display their flash so they can try and prevent users from downloading the videos – which means right now NOBODY actually putting videos on websites is going to actually SUPPORT the VIDEO element.
5) “Video for Everybody” – because those STUPID MALFING IE comment conditionals, 38 lines of code without the comments, needing to make sure you have your video encoded in no less than four different video formats, for something that defaults back to flash in the first damned place for IE and Opera… Just exactly what’s in that kool aid that makes you think this is a solution ANY developer would actually want to deploy?
As a web developer who’s increasing disgust with the industry has me on the ropes and considering hanging up my shingle for good since nobody seems to actually care about cross browser compatibility, accessibility, clean well formatted well documented easy to maintain code, and instead just want to sleaze out a website any old way filling it to the gills with get rich quick advertising nonsense – It is my informed opinion that BOTH sides of this particular argument are sterling examples of everything wrong with web development today.
Edited 2009-06-20 09:11 UTC
Video for Everybody only requires two encodes. I don’t know where you get the idea of 4 from — the FAQ even answers that question. Video for Everybody uses just one OGG encode and one MP4 encode. Perfectly reasonable.
AND a .mov encode and a .swf encode for the fallbacks for IE…
Gah, I’d pull it up now and point out the exact code, but his site is returning 403 right now.
Ok, got it from my cache… alright, my bad there, the .swf is a generic flash player.
At which point why the **** use that 38 lines of code to do what that file you would already need to provide for fallbacks can handle in all browsers using six lines of code?
Edited 2009-06-20 09:24 UTC
NO.
The MP4 file is used in Safari, Quicktime and in the Flash as well (Flash 10 can play H.264)
The OGG file is used in Chrome 3 and Firefox 3.
Stop spouting FUD when you haven’t read the article and the actual author is right here, correcting you.
I don’t know where you get 38 lines from. In the article, I provide a more compact example that’s 22 lines, and even then, that’s well spaced; because technically only one single line break is required by the code.
And even then, what does that matter? Most websites output badly indented code all over the place that nobody reads. VFE is a *solution* to an end-user problem.
Video for Everybody works perfectly with IE. It’s just HTML, there’s no voodoo. I’ve just made some code that means website owners can embed video and ensure it plays in more places than just Flash alone can reach. What the crap is so evil about that??
Edited 2009-06-20 09:45 UTC
Ah yes, the wild claim of FUD when you cannot argue the actual points… Though is the site being actively edited right now? It seems to alternate between 404 and 403 and then pulling it up.
I READ the article (after zooming in 60% in opera to make it legible on my system since I’m on a 1920×1200, run large fonts/120dpi and don’t plaster my nose a foot from the screen) though I only glanced through the code, but lemme ask you this:
Are you saying the website in question will pass any code validator? Are you saying it meets WCAG guidelines for accessability? Are you saying it does not use fixed metric fonts? Are you saying HTML 5 is actually real world deployable or even will be within the next five years? Are you saying that most existing major successful video websites do not in fact use flash to make direct downloads impossible? Are you saying you can’t use Javascript without graceful degredation? Are you saying that the ‘video for everyone’ doesn’t link in at LEAST three different media files to do the job of one .flv? Are you saying it is not 38 lines of code once comments are stripped to do the job of a 6 to 12 line validating HTML 4 OBJECT tag without any of that IE conditional nonsense and bloated code?
The best you can come up with is to argue that I miscounted the number of video files used – an easy mistake since you state the SAME MP4 file seven times, and the same .ogv file twice, and STILL have to load flash to give it backwards compatability?
You’ll excuse me when I say the whole thing reads like ranting about some oddly percieved butthurt from using FLASH or Javascript, both proven and reasonably reliable technologies (when not abused for things they weren’t meant for) But then I’m one of the people that open/closed means jack **** to me, I just want it to work and if that means closed and even PAYING to use it, big deal. Again the whole obsession with ogg over flash means bupkis to me and likely means bupkis to anyone apart from the handful of people raging against the ‘evil corporations’.
Fight the power man… The man is keeping you down.
— edit —
Alright, are you actively changing the page every two minutes or something? I saw no compact version, now the code isn’t even showing up on the page at all (had to go all the way to the live demo page)
Which with the 400, 404 and 403 errors is getting entertaining at best, laughable at worst.
— edit edit —
Oh, and like 22 lines with IE conditionals is somehow better than 38 for a lousy little video embed? (to come up with the 38 I took the only code sample I saw and stripped unneeded comment lines) Gah and we wonder why we see the average website blowing 60-120k of markup to deliver 1 to 5k of content.
Edited 2009-06-20 09:58 UTC
This is not about insulting his personal website nor about whether HTML5 will be implementable. It’s about one f–king tag that is quite useful and without question implementable within the year.
And by the way, “I don’t know if I should trust the opinion” of someone who brings up Microsoft as the prime example of “correctly implementing standards”.
When using that one tag neccessitates some ten to fifteen extra lines of code and STILL including the old way of handling it, that’s not an improvement or a great way to sell people on using it.
I didn’t say they did. They most certainly did not even come close, even with IE8. What I said was they held off on even TRYING to add HTML5 and/or CSS3 until they made an attempt at getting HTML4/CSS2 correct.
Key word being attempt, as they fell a bit short of that goal since they have to maintain backwards compatibility in trident, or risk breaking all those applications that used Trident the same way many programs use XULRunner.
Were that Mozilla showed that type of battleplan, but instead they have people coding **** not even out of draft when they’ve not even polished off specifications that have been in ‘final’ for OVER A DECADE… as evidenced by bugzilla entries about rendering bugs that have been around since before Firefox was a twinkle in a FLOSS fanboy’s eye that have repeatedly been marked as ‘assigned’ for the next major iteration then unmarked when the code to fix it never materializes in time.
Edited 2009-06-20 10:06 UTC
That’s the way web development has always been. Code in the fallbacks until the transition period is over. That’s the way it’s always been and there’s unfortunately nothing that can be done about it.
That doesn’t automatically make the <video> tag useless, it just means that things are a little more complicated in the interim, until all browsers have implemented it.
You can use just the video tag on it’s own and that’s it.
My code specifically uses the built in facilities to fall back to Flash and QuickTime so that the same code can be be used to transition a site over to the video element without dumping old browsers like IE6.
You say yourself you don’t care as long as it works, so why are you ranting against the code, when you are implying you only care about the final solution, which works far better than Flash alone. When native HTML5 video is used, it uses far less browser resources.
The compact version has always been there. I can now, since I helped testing the page.
These are references to files, they only need one file for all the same references. Do you understand URLs?
You also don^aEURTMt seem to understand fallback. Only one file is loaded once it has found a playable-option.
Let^aEURTMs walk through references with mother^aEUR|
Native Ogg – Chrome, Firefox 3.5, Safari (if you have XiphQT)
Native h264 – Chrome, Safari
Flash 10-based h264 – any browser with Flash 10
Flash 10-based h264 – hack for IE
Quicktime h264 – iPhone
Quicktime h264 – IE
Quicktime h264 – Safari/Chrome
You forgot to add:
(Windows Media Player loads if QuickTime is not installed for IE/Vista and up)
QuickTime – iPhone
Windows Media Player – IE/Vista,7
Final Fallback Text with Donwload Links – VLC / Pam Pre / Anything else
I can’t see why people are so vehemently against something that makes sure that videos just play in their browser and they don’t have to care about the code at all.
Edited 2009-06-20 10:14 UTC
Englisc, mAdor wyrter! GedAn "A“ow cwe~A 3/4 an hit!?!
I didn’t say load, I said STATE. I get twitchy about declaring the same file twice in a standard flash embed to get a validating cross browser implementation, 7 times for one video format and twice for another? Bloat Bloat Bloat Bloat Bloat in the markup for no good reason apart from implementing something that apparently isn’t ready for prime-time.
You mean dropthrough, and yes I realized only ONE of them is actually loaded. It would be pretty ***** stupid otherwise. Hence my dislike for it – since we’re talking about stating the SAME basic file/embed over and over nine different ways with two encodings. **** that on a deployment website.
Though I have equal wrath for the Mozilla page on the exact same grounds in terms of technique.
Seems like one hell of a lot of effort to avoid using a FLV. I could MAYBE see the MP4 playback fallback for ‘less capable’ devices like the iPhone, but there has to be a point where you tell them “get to a real computer you’re not playing the HD version of this movie”
But then I’m more in favor of letting the user CHOOSE their video format before playback instead of just shoving the choice down their throat using browser sniffing and other chicanery. That’s the path that leads to mistakes like Opera 10 being detected as Opera 1.0
Edited 2009-06-20 10:19 UTC
OMG, noo, a few bytes duplicated that mod_gzip can vanish away^aEUR|
Might wanna blame shitty browser implementations for that
You^aEURTMve missed the point of it entirely.
We are at a point of moving from one crappy method of doing things, to a simple clean single-tag that will cover everything.
As we migrate to the new, we still have to bring along the old, or else, the new alienates people, and we^aEURTMre stuck with the old.
Everything inside the <video> you see should have been used previously for video, the fact it didn^aEURTMt is besides the point.
I don^aEURTMt know how the future will go, but it is very likely in a year or two, the code can be trimmed to have fewer fallbacks- even so, the previous verbose code will still work.
It^aEURTMs still only two media files, one mini flash flv, and some basic HTML. wtf is your problem?
And for the people that didn^aEURTMt have Flash? What did they see? An empty box? Seems nothing to me to get that advantage^aEUR|
I’m not going to bother quoting any of the crap you have posted so far in this thread – there isn’t a shred of it that is worthy of a reasoned response.
If you don’t like the video tag and think using flash video is the way to go, well have fun. To each their own – I couldn’t care less. But don’t pretend your reasons are rational – they aren’t.
The purpose of the web having a standards body are not to tell the browser implementers what to do – that is YOUR JOB. Web developers are the ones who decide what standards get supported, not implementers. Remember the blink tag? The point is if everyone uses the video tag and gives it preferential treatment, guess what happens???
I’m a professional web developer and I definitely want video tag support. Therefore I am going to implement it. The browsers will come around eventually…
Hehe, using Microsoft as a sterling example of “sticking to the standards” — what a laugh!!!!
The <video> tag is something so basic that it should have been in HTML since version 3.2. That is the reason Mozilla (and every other browser maker other than Microsoft, btw) is pushing for it, “official” standardization process be damned.
I think the article is right on.
However, I’ve visited the Video For Everyone site with the latest version of Safari (Version 4.0 (5530.17)) and on the iPhone with OS 3.0.
I’m under the impression that that site has a video on it.
However it is not playable on the iPhone or in Safari 4.
In Safari 4, I can’t even move the slider or anything. There is no video frame. There is just a big empty space where the video frame should be with the unusable controls under it.
In Safari on the IPhone, I see a video frame with a quick time logo in the lower right hand corner. In the middle of the frame I see a triangle with a circle around it with a slash thru it. Kind of like a “No Smoking” sign only I think this is trying to say “No Video Playback”.
Perhaps I missed something. I was under the impression that the article was stating specifically that it would work on these two platforms.
I believe Kroc’s hosting provider removed the actual video. Not sure though.
Yes, sorry to say that the videos are down at this moment, but I should have it solved before the day is out. Apologies for the inconvenience!
Only wanted to say: Very good article
A good article about real problems, real arguments written with real knowledge.
That’s why I like OSAlert!
I have an objection to Kroc’s open letter preventing me from signing it. The objection is not to the technical approach or the details; rather it is the call to remove the current blog post. The post should remain, and a second post made, should the original author be persuaded. An update to the post, pointing to the update would also be quite reasonable.
Without this, the history and discussion will be lost; further, it shows disrespect for the original author, who did in fact expend useful effort that should be recognized and encouraged.
I would be happy to sign a letter modified in this way.
You^aEURTMve got your wish!
Sorry if a bit offtopic, but I just wanted to remark that video should already be far more compatible with all sorts of devices (such as the iPhone) without the need to wait for HTML5 to come (although it sure is welcome) if everyone used [SWFObject] to embed video and sound files.
[SWFObject]: http://code.google.com/p/swfobject
For some reason, it never became widespread.
SWFObject is another JavaScript solution and so isn^aEURTMt as comprehensive as Video for Everybody, but also as we will bring out in the podcast soon to be published — <video> goes well beyond what Flash can do, and should be favoured.
Most of the features HTML5 suppose to deliver are already present in HTML4.2! The battle over the video tag is pointless, nobody needs that tag! There is already object tag which allows to embed whatever is needed including audio and video. It’s up to the browser/plugin whether is supports a given data type or not.
It would be much better if one (W3C) could standardize the data types instead, saying that such and such video or audio streams should be covered by the browser, as it is for images or fonts right now.
The whole buzz seems to me like pushing the web in pointless direction.