YouTube Explains Where HTML5 Video Fails
awjr writes "YouTube have pretty much come down on the side of Flash having major issues with the lack of features that the HTML5 <video> tag has and may never have."
← Back to Stories (view on slashdot.org)
Is the video tag in HTML5 a kludge? Yes. Is it more an ideal than a practical implementation? Sure. Can it compete with a commercial product that has been an accepted part of the web for over 10 years now? Perhaps not. Is it poorly implemented in most modern browsers, with no agreed upon video codec common to any two of them? Yep. Would it be getting any attention at all if Steve Jobs hadn't used it as part of his cheap excuse to block free flash apps from his iControlU line of products? Not likely.
But all that's missing the point. The point is that it's *OPEN* and not under the control of any nasty for-profit corporation. And that makes it superior. Who *cares* if it doesn't work worth a damn in actual practice?
SJW: Someone who has run out of real oppression, and has to fake it.
It's funny that a lot of these points end with something like "HTML 5 is working on it" or "HTML 5 is just begun" or "Hopefully they all merge to one." And that's the idea of an unfinished specification. With one big exception: DRM (or as the article calls it "Content Protection"). While I don't think it's impossible, I think it's a pretty big effort to produce DRM that content owners (like the MPAA or RIAA) are satisfied with as an open standard. I think they perceive open standards to be inherently insecure (despite several cases of the opposite like OpenSSL).
Right now, YouTube might be forced to stick with Flash in regards to some videos but in the future I think we will see YouTube move as much as it can to HTML 5 and offer Flash as a premium service to content owners who want to deliver their content through Flash's DRM. And I'm fine with that. I don't care that you can redistribute videos of a snapping turtle laying eggs in my parent's garden.
Remember, YouTube is Google and Google has supported HTML 5 at least vocally and with their Chrome browser to the best of their ability.
My work here is dung.
But all that's missing the point. The point is that it's *OPEN* and not under the control of any nasty for-profit corporation. And that makes it superior. Who *cares* if it doesn't work worth a damn in actual practice?
That. MP3 became the de facto standard despite the existence of far better quality formats for the exact same reason. We currently have to choose between two kludges, badly implemented possibilities, one of them being open. The choice is easy to make.
The Wise adapts himself to the world. The Fool adapts the world to himself. Therefore, all progress depends on the Fool.
"In theory there is no difference between theory and practice, but in practice, there is.
I don't care about things that are "open" but dont work in practice.
"His name was James Damore."
A real site knows what the real work there is behind a major feature like video. What a surprise.
Without content protection, we would not be able to offer videos like this.
This rental is currently unavailable in your country.
Surprise, you aren't offering those videos.
Flash kills battery life and stability. After 10 years, it still doesn't work well on modern computers or mobile devices and is likely to never be a good solution. The video tag is young, not quite there yet, and will probably be a better bet in the long run.
Without any content protection whatsoever, they wouldn't be able to offer videos which say only "This rental is currently unavailable in your country", they'd have to actually provide the video to everyone.
The "we need DRM, otherwise we can't provide all the content we want to!" argument is horrible, stupid, and insulting.
DRM does not allow businesses to provide content in new markets. DRM allows businesses to provide old markets in places where they make no sense. Every company which complains they can't do X without DRM really means they don't want to do X without magic fairy dust. Meanwhile, everyone and their grandmother is busy providing X without DRM, and the only difference is the companies which want magic fairy dust aren't getting paid.
Monopolies do not exist. People will always acquire the product they want, and if you aren't willing to sell it, all that means is that people will always acquire the product they want without paying you.
-- 'The' Lord and Master Bitman On High, Master Of All
yes. the "choice is easy to make" because *you* arent creating content. only consuming it.
Without any content protection whatsoever, they wouldn't be able to offer videos which say only "This rental is currently unavailable in your country", they'd have to actually provide the video to everyone.
But that is done entirely server-side and is completely independent of flash vs HTML5 vs animated GIF vs ascii-art. You just make the server look the client IP address up in a location database, and then decide whether to send was was requested or an error message.
Can we please have a permanent ban on asking and answering your on questions? I say yes.
This is my sig. There are many like it, but this one is mine.
Also worth mentioning, is that Google acquired YouTube in 2006, and Google is a supporter of Open Source with an open source operating system. If they did look at this from an outside, objective perspective, I trust Google will do anything they can to speed up HTML5 video support.
Not trying to be confrontational but I don't understand your comment and hoped you could explain further.
I took your comment to mean that even though there were better formats available, MP3 became standard because it was open.
My confusion is thus-
1-when MP3 first started being widely used (I started using it extensively in 1997) it was competing with WAV files. There were no better formats.
2- MP3s are only 'open' in the sense that they don't have embedded DRM. It is still a proprietary format with license fees attached.
" ... Who *cares* if it doesn't work worth a damn in actual practice? ... "
I do! I like the fact that I can jump to any part of the video and even direct people to that part of the video with a single url. the video tag doesn't really do steaming in that sense.
"The point is that it's *OPEN* and not under the control of any nasty for-profit corporation. And that makes it superior"
ORLY? name a major media format that is used widely that IS open format! Your idea that open format is superior is an opinion with very little to back that up.
America, Home of the Brave.
" After 10 years, it still doesn't work well on modern computers or mobile devices"
[citation needed]
Flash allows proper streamnig, video tag does not. Proper streaming needs a server side solution. If HTML5 isn't going to be ready till 2022 for a browser standard, how long will it take for a server-side standard?
America, Home of the Brave.
If YouTube truly thinks this is best long-term for its success, I'm afraid we'll watch a slow death as competitors nibble away market-share, one obscure platform at a time that lacks a flash player but was created to use open standards out of the box.
I don't think they do... Witness the various points in the article (Which I'm sure you read, right?) where they said "And we're helping to fix xyz problem"
But, what they point out is that HTML 5 video is untenable for even their short term success. If they went to purely HTML 5, they would lose market share rapidly to people who weren't pure OSS. What does that say, from a business standpoint?
Text, the most widely used and open of all.
"National Security is the chief cause of national insecurity." - Celine's First Law
I think you miss the point. Flash is a poorly performing closed POS that makes video on the Internet beholden to a single vendor. That is a problem any way you slice it. It's unlikely that adobe will actually fix the situation unless they're absolutely backed into a corner.
Yes, the new unfinished standard doesn't have complete support in browsers yet. Whoop-dee-doo. The "no agreed upon video codec" thing is a bit of red herring. Safari, IE, and Chrome are all supporting H264 already, and unless WebM takes off, H264 is the de facto video codec standard of the decade. Whining about how much you love DivX isn't going to change that. Even Flash is supporting H264 (That's right! If you're arguing in favor of Flash, you're arguing in favor of H264 being the de facto standard). Blaming Apple for this is also silly. They made a choice based on what they believed would provide their customers with the best product. Going by their rate of sales, I don't think their customers disagree with Apple's views all that much.
"YouTube have pretty much come down on the side of Flash having major issues with the lack of features that the HTML5 tag has and may never have."
I guess my point is that this sentence is terrible. How did you possibly allow this, /. mod?
Without content protection, we would not be able to offer videos like this.
"This rental is currently unavailable in your country. "
I miss the WORLD-wide web :(
You can't take the sky from me...
Monopolies do not exist.
MS, Intel, Apple, and Google would all like you to convince the FTC of that.
"There is no real right or wrong, just what the majority accepts at the time."
Without content protection, we would not be able to offer videos like this.
*click*
This video is currently unavailable for rent in your country.
Yes, I see how with content protection you are not able to offer me videos like this.
Segmentation Fault in "Life, Universe and Everything" at line 42. Don't Panic.
Specious argument, really.
Content "creation" with Flash is really a poor substitute for the real tools that are completely available on all the mainstream OSes- to the point of some of the better answers being available for free or next to it on all of the aforementioned.
If you're doing "content creation" on something like Haiku, I might understand slightly, but you should already understand that you might be on your own on things like this if you choose to run things like Haiku and other up-and-coming OSes.
"Creating content" is a straw man.
I am not merely a "consumer" or a "taxpayer". I am a Citizen of the State of Texas
I like the fact that I can jump to any part of the video and even direct people to that part of the video with a single url.
HTML5's <video> element supports JavaScript seeking to a new playback position. Your video page can read the fragment identifier from the URI, parse it, and then set the video element's currentTime attribute to make the player seek. The back end uses an HTTP/1.1 range retrieval, the same thing that resumable downloads use.
the video tag doesn't really do steaming in that sense.
Steaming as in a "steaming pile"?
Er... Are you implying that making a video available through a tag is somehow harder than through a flash app ? Care to elaborate what you mean by that ? Because using html5 with youtube is actually a few clicks operation : http://www.youtube.com/html5
The Wise adapts himself to the world. The Fool adapts the world to himself. Therefore, all progress depends on the Fool.
Firefox has - what? - 28% of the overall market, and it doesn't support H264. Hardly 'de facto' when the second most-popular browser doesn't support it, eh?
Only because it's been around long enough to be public domain. ;)
The problem is that something that's open might eventually work, whereas something that isn't probably won't unless it's on a blessed platform. Which is the point, if it's a site devoted to Windows or OSX, having content that's not particularly well available beyond those platforms is possibly acceptable. If it's general interest like Youtube is having it be restricted artificially to a couple platforms is clearly not acceptable. Admittedly there's only so much they can do or really should do, but this sort of artificial narrowing of the market is absurd.
At least with VP8 it's available to any platform at present, whether it's been ported is a moot point as the necessary bits to port it are available.
Everyone seems to forget one thing about this blog: it doesn't say that Flash is the holy grail for video streaming and that we should all flock to using Flash and put a ban on the HTML5 codec. No, the author of the blog applauds the efforts being put into HTML5 but warns that the video tag simply isn't finished yet. The moral of the story is that while HTML5's video codec is a great start, it's way too soon to put a ban on Flash because it still offers a lot of functionality that HTML5 does not. There still is valid use for Flash over HTML5.
Also do we want HTML to have all the features of Flash?
Things like camera and microphone control?
Yes. Camera and mic would require a click to activate, just like Flashblock does today.
Or even the ability to go full screen?
Currently, HTML5 user agents support full screen operation: press F11 to activate it in Firefox.
And DRM?
For digital restrictions management, I'd recommend sticking to plug-ins in a PC web browser or custom apps in a mobile setting.
He's generalizing, but there were no other formats that could do 12:1 compression like MP3 did when it came out. Few people remember that if you wanted to rip a CD it was a 50 megabyte file. I still remember playing back a small little file with a .MP2 extension on a Dell 486 running Windows 3.1 and going WOW - thats amazing! (gives you kind of a timeline on how long ago this really was). It was some tune from Kimagure Orange Road.
ATRAC btw was only used internally at Sony for DAT and Minidisc (and later AT3 cd's) - there was never any way then to make or play back an ATRAC file on a home PC until somewhat recent history (and only then to try to lock people into using ATRAC over MP3).
I have pretty much come down on the side of the summary having major issues with the lack of grammar that a good summary has and may never have.
intellectual property law is philosophically incoherent. it is your moral duty to ignore it or sabotage it
All of these boil down to Youtube simply not liking how the browser they downloaded today, happens to play video. The thing is, nothing about today's implementation are damning of HTML5; they're just damning of today's implementations of it. A user-initiated request to the browser or player is what should initiate full-screen video (or any other "zooming" of content), not javascript. A user-initiated request to the browser or player is what should handle seeking. The browser or its lower-level networking library should be doing the buffering. And so on.
They are really praising HTML5's strengths here. Website creators shouldn't be burdened with micromanaging how the details of how a video plays, just like they don't worry about how to incrementally display an image, how to view an image full screen, or how to implement selecting and copying text. And yet, these guys are arguing that for video, they want their javascript programmers to have to work on that shit. The sane thing to do is to push it onto the browser guys (who can then push it onto the player guys, who may end up pushing some things onto the OS guys, whatever).
I won't even touch the DRM point, because I'm not in the DRM market so I can't imagine what kinds of DRM viewers are asking for.
The only points they have which has any real legitimacy, are the camera/microphone one and concerns about serving live content, rather that content sitting in some finished and indexed file. Yes, HTML5 video isn't really intended for that, so if youtube want to deal in those areas, they've got a point that using mere web tech isn't going to do they job; they need users to download applications (i.e. Flash code) instead. Fair enough; Youtube wants to get into new markets where they'll make some money. But for most of their video and pretty much everything Youtube is known for, HTML5 is the right answer.
As copyright owner of this comment, I authorize everyone to defeat any technological measure which limits access to it.
The Sony format never counts unless they're trying to buy out the market with cash.
iPod didn't get full HTML5 player support until iOS 4. I tried it out with Audio, and the player controls don't work quite right. Haven't tried video.
Free browsers don't support Flash either. You need a proprietary plugin.
I agree it's a horrible sentence - I only understood it after having read the article, and even then I had to read it about 3 times. People love to hate "grammar Nazis", but this sentence could have been so much easier to understand with a comma, and a couple small changes:
"YouTube have pretty much come down on the side of Flash, having major issues with features that the HTML5 tag does not, and may never, have."
I think that's what the person who wrote the summary was trying to say, but I can't be 100% certain.
HTTP Streaming vs. RTMP. Yes, you can stream with HTTP on Flash, but for long-format video or live streaming, HTTP doesn't really have what it takes.
"Er... Are you implying that making a video available through a tag is somehow harder than through a flash app ?"
It is. It's more effort because you need to sniff for user agents and then decide either which browsers to support or not, or create different content for different clients depending on which codec they support. On the other hand we have Flash which is basically guaranteed to work as-is in over 90% of clients. I'd call that the easier choice.
I don't have any studies to cite. Safari, Chrome, and Firefox have all started running plugins in a separate process. This is primarily due to Flash taking down the browser repeatedly.
Safari even added a special error message to keep people from hating the browser:
http://fukamachi.org/wp/wp-content/photo/misc/flash_crash.png
Before this was supported, I personally checked out the stack traces on most Safari and Firefox crashes. It was almost always executing a flash function.
When it's not crashing, it's draining a lot of battery. I suspect this is because it simply loops instead of sleeping for events.
Free browsers will never be able to support H264
That is entirely incorrect. Most OSes provide APIs for playing h.264 video, which free browsers can easily use.
Mozilla is just choosing to not take advantage of this offer.
Youtube says that while Flash may suck, it sucks in a variety of different ways in which HTML5 can't yet suck.
When Fascism comes to America, it will call itself Anti-Fascism, and tell you to give up your guns.
No, flash implemented poorly kills battery life and stability, just as anything else implemented poorly. Until HTML5's video tag can implement things like RTMP, it's going to be playing second-fiddle to Flash, and that's just in terms of video playback. Flash's animations are already fantastically faster than anything HTML5's canvas can kick out.
Free browsers can support H.264 through system-wide codecs. Mozilla isn't going to do it and they give you an excuse when you ask them why not: they say Windows Vista/XP users don't have the codec preinstalled (and neither do they have Flash preinstalled, but that's apparently not a problem). Then they have a Stallmanistic desire for a completely free environment, and say they won't use support already present in your system, and for which you already paid (either directly or through your OS license). Other free projects, like Chromium, have no such problems.
Mozilla is positioning itself as the only loser in this. They say they won't sacrifice freedom for anything, but they already sacrificed lots of Firefox's principles now (lightness and speed come to mind). Refusing to use the support that is already in the system would be as stupid as blocking sites or plugins because they don't convey the exact same mentality as the project. Imagine if Firefox blocked ubuntu.com because Ubuntu isn't a 100% free OS and, therefore, people should stay out of it.
For your last point, anyone is free to make an implementation of a browser supporting H.264. You may call gstreamer/QT/DShow or you can license it directly and write your own codec. I see the point in putting the freedom of the code above the freedom of the developers, but when you take away the freedom from the user (to use the video support he paid for) because of the freedom of the code, that's a real issue.
No, without DRM, the "This rental is currently unavailable in your country" videos wouldn't be available anywhere. Why don't people understand this? Without protection, content owners will not distribute their content in ways that they think need protection. It's not that hard to understand. They won't say "oh well, we can't do anything to protect our content - lets just upload it all to usenet and go home for the weekend". Your logic is insulting.
actually, you don't need to do any user agent sniffing at all.
Here is what you do. take your video tag in a common format, use it. If it fails, by web standards, the tag is supposed to default to the contents of the tag instead.
Put a video tag inside that in a format supported on other browsers. If it fails, by web standards, the tag is supposed to default to the contents of the tag instead.
Put your flash video object inside of that.
it requires the video to find the first keyframe, and then play from there.
Ever noticed a delay in changing the channel on digital cable or satellite TV, or jumpiness when rewinding or fast-forwarding a DVD? A lot of that is waiting for the next keyframe. There is a tradeoff between bitrate and seek granuarity because more seekable encodes have to use more keyframes. In fact, a few codecs have an option to have a frame incorporate motion relative to multiple keyframes. Such a "B-frame" can use ordinary keyframes (I-frames), semi-keyframes predicted from prior keyframes (P-frames), future frames (the P-frame or I-frame after a B-frame), and even a long-term reference frame (a golden frame). If a scene uses a golden frame across multiple shots, good luck jumping into the middle of that scene.
Using ranges to try to stream is a massive, massive hack.
Or in other words, a "steaming pile of hack". But MKV already has cueing data, and Xiph is working on an Ogg index for more efficient seeking. The <video> element would reference video data URIs at multiple levels of detail, and a player would download each video's index.
It's all down to the decoder. There's a dedicated processor in the iPhone which handles h.264. For the Flash player to be as efficient as any old h.264 you want to play on the iPhone, it would have to use that processor. However Adobe doesn't have the greatest history of using accelerated features (essentially dedicated processors for decoding h.264) of the hardware they target--in fact, they only recently started using accelerated decoding on Windows.
If they don't use the dedicated chip, then they're going to be using the main CPU. It's going to be far less efficient, both in energy usage and in CPU usage. And this applies to all portable devices with acceleration, not just the iPhone. Many laptops have acceleration via the graphics hardware.
Worse, of course, is what happens when you try to move to a platform that Adobe doesn't support? Want to use 64-bit linux? Too bad. Apple wants to change their decoder on the iPhone? They have to convince Adobe to adapt to the new one. That's vendor lock-in, and it's bad for the consumer.
Funny that you conveniently forgot to mention subtitles, translations, captions, and links.
Nono, don't change it. Your argument sounds better when you spin and skew. You report, we decide.
For YouTube, the content creation isn't done on Flash. It's done in a video editor.
Flash is, however, the content delivery system, and that's of interest to the content creators. Or at least, the content deliverers, like YouTube. And both care a lot more about getting the content delivered to the vast majority of potential users than any other concerns.
Funny. YouTube HTML5 streaming seems to work find for me. Also do you really need a citation for Flash's performance? Try the following... Got to any laptop and open a YouTube video. Keep an eye on CPU. Now pause it and note the CPU cycles. Now Switch YouTube to the HTML5 beta and do the same. Big difference. HTML5 video which is paused uses 4% CPU while Flash paused uses 32%. NOTE: all of the videos were complete streamed before starting the playback. Also Pause is better than Playback because nothing is suppose to be running.
With one big exception: DRM (or as the article calls it "Content Protection"). While I don't think it's impossible, I think it's a pretty big effort to produce DRM that content owners (like the MPAA or RIAA) are satisfied with as an open standard. I think they perceive open standards to be inherently insecure (despite several cases of the opposite like OpenSSL).
And in fact it's the exact opposite :
Flash's DRM is a stupid joke - in short the key to decode the encrypted RTPME streams is a a couple of filestats of the ".swf" player application, i.e.: something publicly available. No password or crypto key involved (for a longer description, look for a mirror of RTMPDump). So there's no real encryption happening and as such, Flash' DRM might even not be covered by the DMCA or local clones.
HTTP's Authentication or Session and/or HTTPS provide already enough content protection at the hosting/serving level of the video. No need to add more DRM shit on the player level.
"Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]
Checking... WTF? Damn you HTML5, damn you to hell for doing it wrong. Not only do they use source elements, but they also have a poster attribute for failover to an image.
HTML5 is pissing me off more and more every single day. XTML2 why hast thou forsaken me!</rant>
So instead people watermark the images. I wonder why this is not done for videos.
I suspect you're thinking of MOD files and other tracker formats - which don't actually have anything at all to do with audio compression. :D *Some* people would make MOD files of *some* songs which sounded *something* like the original, but not exactly.
Tracking is still commonly done today in the demoscene, btw.
Also worth mentioning, is that Google acquired YouTube in 2006, and Google is a supporter of Open Source with an open source operating system. If they did look at this from an outside, objective perspective, I trust Google will do anything they can to speed up HTML5 video support.
But Google has sided with Adobe in their spat against Apple, and YouTube has a lot invested in DRM, at the behest of the media cartel. That DRM is included in Adobe products, and not in the html5 spec. That's an internal conflict for Google, and in the "principles VS revenue" conflicts, the principles rarely win.
You can't take the sky from me...
But, what they point out is that HTML 5 video is untenable for even their short term success. If they went to purely HTML 5, they would lose market share rapidly to people who weren't pure OSS. What does that say, from a business standpoint?
It points out something remarkable and often overlooked: The market leader is pushing for open standards like it's business depends on it. That's the exact opposite of the (short) history of high tech: it's normally the marginal players that agree on standards to commoditize the market and gain share, while the leader "innovates" to keep everything incompatible. Google is pushing HTML5 to adopt more features so it can compete in a market of open standards, rather then making a gVideo player with lots of new (closed) features.
tomorrow who's gonna fuss
In the US, typefaces cannot be copyrighted.
"National Security is the chief cause of national insecurity." - Celine's First Law
You dropped a zero.
if you wanted to rip a CD it was a 50 megabyte file.
CDs are up to 700 mb, the CD standard is 640 mb, most CDs are shorter. 50 mb is about average for a CD ripped to MP3 (amount of compression and length of CD makes this vary, of course), CD ripped to wav usually is around 500 mb.
Free Martian Whores!
Would that make you a "bad analogy" for BadAnalogyGuy?
[ponders for a moment] *head explodes*
What do you mean "man hours"? Transcoding can be scripted and automated with ffmpeg. You could probably produce the requisite HTML5 with Perl. No humans are involved in day-to-day operations of such a system, so where are the "man hours" you complain about?
Perl writes itself, does it? Never changes, works as is forever, etc?
HTML5 video which is paused uses 4% CPU while Flash paused uses 32%.
I just did what you said, paused a Youtube vid in Flash, and the browser CPU usage dropped to around 2-4%.
== Jez ==
Do you miss Firefox? Try Pale Moon.
The fact that Apple is trying to impose a proprietary codec it owns partially (h.264) as the de facto standard video codec for the next 10 years is NOT consubstantial to HTML5.
HTML 5 is an open source open standard, and the fact that some companies(and by some I of course mean Apple) are trying to impose their solution as an inherent part of the open solution that is HTML 5 is just BULLSHIT.
HTML 5 is NOT h.264. and HTML 5 is NOT responsible for the codec war that mozilla Google and Apple are waging.
A war that has by the way turned to Apple versus the rest a the world since Google provided an Open-source codec (VP8) that Mozilla has supported.
Don't try to put this on HTML 5 it's Jobs and Jobs alone that is at the origin of this non sense.
I don't think the poor implementation from Adobe is the root issue; I think it's that no-one but Adobe can do anything about it. If we were happy with Flash we wouldn't bitch about it so.
If God forks the Universe every time you roll a die, he'd better have a damned good memory.
YouTube has DRMed content that HTML5 cannot at this time support. RTFA
So why don't we fix HTTP once, rather than kludge a fix into every data format that requires streaming?
I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.