Slashdot videos: Now with more Slashdot!

View

Discuss

Share

We've improved Slashdot's video section; now you can view our video interviews, product close-ups and site visits with all the usual Slashdot options to comment, share, etc. No more walled garden! It's a work in progress -- we hope you'll check it out (Learn more about the recent updates).

gollum123 writes "Think we'd all be better off if HTML5 could somehow instantly replace Flash overnight? Not necessarily, according to a set of comparisons from Jan Ozer of the Streaming Learning Center website, which found that while HTML5 did come out ahead in many respects, it wasn't exactly a clear winner. They did find that HTML5 clearly performed better than Flash 10 or 10.1 in Safari on a Mac, although the differences were less clear cut in Google Chrome or Firefox. On the other hand, Flash more than held its own on Windows, and Flash Player 10.1 was actually 58% more efficient than HTML5 in Google Chrome on the Windows system tested. As you may have deduced, one of the big factors accounting for that discrepancy is that Flash is able to take advantage of GPU hardware acceleration in Windows, while Adobe is effectively cut out of the loop on Mac."
gollum123 also links to additional tests indicating that Flash "does not perform consistently worse on Mac than on Windows."

And where's Opera in this test? They added HTML5 support in 10.5 final too and their whole drawing engine will be hardware accelerated, with websites also. Their canvas implementation is also faster than with any other browser.

It's just odd to compare two different tech stacks (which can do just about anything) by measuring their video playback performance.

As long as hardware acceleration works, the language (or whatever you want to call it) is not a big factor. It's like comparing an apple (which may have a gorilla supporting it), in a cage match with an orange (which may have a gorilla supporting it).

Flash uses the GPU (except on OSX - boo Apple). HTML5 will use the GPU on every platform sometime in the future. I know which on

If NVIDIA would put the effort into making an open codec (such as Dirac) directly in the GPU firmware, and keep their Linux driver updated properly (or just open source it... all the magic is in the GPU so the driver should just be a means to pass data between CPU and GPU), then an HTML5 based video would display well, too.

This is NOT a showing of whether Flash is better than raw video, or not. It's a showing of what secret backroom deals can do to lock out safer, more secure, more open, ways of doing thi

If NVIDIA would put the effort into making an open codec (such as Dirac) directly in the GPU firmware, and keep their Linux driver updated properly (or just open source it... all the magic is in the GPU so the driver should just be a means to pass data between CPU and GPU), then an HTML5 based video would display well, too.

And... what would be in it for them? They're not going to spend all that money to get Slashdot bragging rights.

Unless a biggie like Google/MS/Apple back on HTML5 i don't see why it would replace incumbent standard

Both Google and Apple are heavy HTML5 backers. Not only they're on the W3C working group for it, but their respective browsers already implement large parts of it (including, specifically, HTML5 video).

Your choices are still 1) create content once for a ubiquitous platform available absolutely everywhere except Apple embedded devices (where Apple chooses for you that you don't have access to it), or 2) create content multiple times in multiple formats, falling back on browser sniffing and other skulduggery, plus having to test on a variety of different platforms, then going ahead and creating the #1 version anyway since there are still people you can't reach without this no matter how hard you try.

HTML5 is the right direction. But it is a long, long way from mature. There isn't a single ubiquitous codec even when your users support the fledgling standard otherwise. Until then, Flash is still the right choice for all but technical purists, both for video, and for absolutely everything else Flash offers (including feature domain HTML5 doesn't cover even in draft).

n the mean time, Mozilla has stated that they're unable to ship H.264 as part of Firefox

I wouldn't want them to. Why in the hell would any browser include a codec. What Mozilla and every other browser is supposed to do is not care about codecs and use what's installed on the user's computer. Place an option in the preferences menu, so you can choose between multiple installed options.

I don't want to choose my browser based on who has the most efficient codec. I want to choose it based on which browser gives me a better browsing experience. If I find a better codec that can do GPU accelera

Well if you look at web browsers on the Amiga platform, they typically had no built in support for any image formats whatsoever. The OS provided a facility called "datatypes" which allowed any application supporting datatypes, to load any format for which a valid datatype was available. Amiga browsers were among the first able to display PNG images on the web simply because a PNG datatype already existed.

In the mean time, Mozilla has stated that they're unable to ship H.264 as part of Firefox [mozillazine.org]. H.264 has patent and licensing issues associated with it.

Why not just kick H264 over to a media player (VLC/Quicktime/WMP) instead of trying to include codecs in browsers? That's an option, at least, since most media players will decode h264.

Here's the main problem I have with this complaint: Ultimately, Flash is just being used as a 3rd party H264 media player anyway. By saying people should stay on Flash, you're basically saying, "Mozilla can't distribute H264 decoders and we can't ask people to install any 3rd party H264 decoders, so instead we're going to force everyone to install a particular 3rd party H264 decoder which is included in a sprawling 3rd-party plugin that only works well in Windows."

When you stop and think about it, it doesn't really make a ton of sense. Flash has worked as a stop-gap measure, but it really has never been a good way to handle things.

*sigh* If only it were that simple. Flash isn't on absolutely everything except Apple devices. It works pretty well in Windows. You can get it on Linux/BSD/etc, but some distros don't have it installed by default. Even on OSX, Flash is a buggy resource hog that crashes constantly, which is at least part of the reason why Jobs doesn't want it on his low-power devices. Non-Apple phones and embedded devices may or may not have Flash support.

Adobe tried to blame Apple for the poor performance of Flash on OSX, but if you read their description of the situation, it basically comes down to, "We chose to stick with Carbon (an old framework which Apple has basically been trying to obsolete, but keeping around for compatibility's sake) instead of switching to Cocoa (the new framework), and Carbon doesn't have as direct access to the GPU."

There isn't a single ubiquitous codec even when your users support the fledgling standard otherwise.

H264 is getting to be pretty darned ubiquitous, close to how MP3 was for audio back in the heyday of Napster. Sure, you still had Real Media files and Windows Media files, but mostly people used MP3. Also, technically you're supposed to pay a patent licensing fee for distributing MP3 encoders, MP3 decoders, and even MP3 files, so it really isn't that different.

So who doesn't use H264 to encode their movies? In my experience, it's mostly (a) people who use Ogg for ideological reasons rather than practical reasons; and (b) pirates who are under the mistaken impression that the old DivX encoder provides better compression than H264, or believe that H264 is a proprietary Apple format. Yes, I know there are other reasons to use other formats, but I think the two I mentioned probably take care of most of the normal consumer uses (ignoring legacy devices).

Well, I can't speak for Google, but Apple was one of three companies (two others being Mozilla and Opera) which founded WHATWG, thus putting a start to HTML5 development.

Also, it doesn't make sense for them to "comply with the standard" when there's no standard yet. As it is, both Google and Apple (and others) are writing the standard, and implementing the current drafts. Google also provides HTML5 beta of YouTube. If, as you say, there is no real business case for them to promote HTML5, they wouldn't do either thing.

The reason why Google touts Flash support in Android at the same time is because Flash is still relevant today, and because this is a major competitive advantage that Android has over iPhone. It would be foolish of them not to raise that point.

I wasn't particularly impressed with the Youtube HTML5 beta (using Chrome) and ended up opting out. Playback wasn't very smooth, the video controls are slightly buggy, and HD videos seemed to take more time buffering. As of right now, the Flash player provides a far better experience.

(And Youtube's player controls are probably far better than anything the average developer could come up with.)

Internet nerds are predicting that HTML5 will be the death of Flash Video, but IMO it still looks like it has a long way to go.

From the submission: "On the other hand, Flash more than held its own on Windows,"

"When was the last time Performance and better quality became critical in deciding which tech will be widely deployed?"

Personally - I wish that SECURITY were the primary criteria in deciding which tech will be widely deployed. I'll sacrifice a bit of "performance", if HTML5 proves to be immune to all the exploits that Adobe products are open to. Yes, of course, HTML5 will have exploits, but Adobe seems to be wide open today.

Security, security, security. If a new technology opens an entire new class of exploits, then it's not worth having, even if it increases "efficiency" by orders of magnitude.

That said - I favor HTML5, because it is "open", and people can manage their own risk. With Adobe being closed, the open source crowd isn't free to search for the exploits that the black had people keep finding.

Or, you can just google "html5 persistent cookies" for more, and better hits. It's the "persistent" part that I'm concerned about, and the ability to find them, sort them, and manage them. Normal cookies aren't a problem for anyone with even minimal computer competence. These new Super Cookies are a problem for even moderately computer savvy people.

It's always possible to use GPLed code to write software that implements DRM. However, if someone does that with code protected by GPLv3, section 3 says that the system will not count as an effective technological "protection" measure. This means that if you break the DRM, you'll be free to distribute your own software that does that, and you won't be threatened by the DMCA or similar laws.

Of course someone could try to fork the code in a way that can output non-DRM'd version of the file, but it's perfectly possible that GPL'd application can implement DRM. The earlier versions of Voddler [wikipedia.org] did this too (though now they've changed to website based system with Flash)

Not necessarily. I could pipe content which I have decrypted and validated from a DRM'd container to a GPLv3 application for decoding. Alternatively I might modify the GPL app to call out to my proprietary process to decode the content for much the same effect. Nothing to stop me doing that at all. I could even supply the source of my modifications and it wouldn't necessarily help someone crack the DRM. If it was an LGPL v3 library (as most codecs are likely to be), I wouldn't even have to bother separating

100% performance hit... In 18 months double of nothing is still nothing. Assuming you meant sucky software only vs hardware accelerated playback, I expect the vast majority number of people would go for the latter because their principle concern is doing stuff like playing video, and not worrying if their codec or graphics driver are open source.

Besides which you confuse and conflate free, open standards and DRM all into one. For example h264 is an open standard but its not free (although the majority of

The performance of an implementation should have no baring on a standard at all. You can implement the video tag on IE 6 with Flash and a tiny bit of JavaScript or XSLT. This entire test makes about as much sense as deciding whether.mkv or.mov is a better container format by measuring H.264 playback performance with VLC and QuickTime.

Since flash is not fully supported in 64-bit. 64-bit OS:es will not be able to be widely spread.

There are a couple different problems with this statement... I'll just say that I'm posting this from a 64-bit OS and a browser that runs Flash just fine. (Well, as fine as a Flash can be run anyway, which is "not very", but that's sort of beside the point.)

You've just described the tailspin that we're in. To get out of it, somebody must loose face because their device/system is incapable of supporting open and free standards. It's sad that the end users will be collateral damage to this, but the sooner it happens, the better off we'll be.

Maybe not on a PC, but in a handheld device you really can't let the CPU do the decoding. You simply can't get the 10 hours (or so) of video playback on a phone that way with today's chips and batteries. A dedicated video decoding chip is the only option for such devices and right now, a chip for decoding MP4/H264 is already present in most systems.

Many system on chips such as the omap3530 have a dsp. These are general purpose and for example the omap3530 can do 720p h264 and mpeg4 decoding.
However adding theora or vp8/6 decoding is a matter of writing a codec for the dsp as opposed to having to create a whole new decoder chip.
Devices that use something similar could add this functionality through patching even after either vp6/8 or theora get some support.

I have to respectfully disagree, even based on your clip. In particular, I notice a lot of artifacts around the edges of objects, especially when moving. Some times I wrote down as being particularly noticeable were 3:47, 4:13, and 4:31. The branch at 4:11 was a bit artifacty, and IMO the opening "The Peach Open Movie Project Presents" lettering wasn't even a contest between the two.

I was watching both in VLC in full-screen mode on a 22" screen. I'm not convinced VLC actually has great quality, but I don't

The hardware acceleration that Flash is benefitting from on Windows isn't h264 decoding from what I understand. It's actually colorspace conversion. Flash allows authors to overlay arbitrary graphics on top of video, which means mixing data from RGB and video colorspace. That in turn meant hitting non-accelerated codepaths. Adobe, Microsoft and the driver devs worked on fixing that and now Flash is super smooth on Windows. Apple meanwhile have either not created or not exposed the necessary APIs, so Flash s

Apple have put a tremendous effort into developing a closed platform where they vet every application that their users run. It is not in their interest to allow this to be bypassed by making Flash available on the iPhone and the iPad; therefore they discourage its use on their desktop platform by ensuring that the resulting user experience is unpleasant (that is, buggy and slow).

The public comments from Jobs about Flash is another prong of this stragegy:

In Flash Player 10.1, H.264 hardware acceleration is not supported under Linux and Mac OS. Linux currently lacks a developed standard API that supports H.264 hardware video decoding, and Mac OS X does not expose access to the required APIs. We will continue to evaluate adding the feature to Linux and Mac OS in future releases.

How Apple react to this will be a good litmus test of how fair Steve J is prepared to be with Adobe. Will he make the APIs available to benefit his customers but risk making HTML5 less attractive, or will he just ignore them and play hard ball.

As for Linux, the historical lack of a unified approach to solving this (that includes all interested parties) is going to leave us out in the cold for some time yet. Let's hope that Gallium3D sticks, gains enough traction and doesn't get dropped for something else a few years down the road. That will make a nice change!

The hardware that is doing the accelerated video decoding is the GPU itself. All that is needed is for NVIDIA to program its video driver properly so the video application that is displaying content on some part of the screen has a means to designate a portion (or all) of that to be the video display, and send the video stream in to be decoded into that space.

This is NOT an issue of Linux. It is an issue of NVIDIA not putting an equal effort into other platforms, or not opening up the interface specs (thi

It's not quite true on OS X. There is a standard way of playing back H.264 using hardware acceleration: use QuickTime. Adobe can't use this because they ship their own H.264 implementation (which is slower than the QuickTime one and ffmpeg), rather than using the supplied one. There aren't hooks for adding GPU acceleration to arbitrary CODECs, unless you use OpenCL, but there are APIs for playing back H.264.

From what I can tell by reading the article that says that 'Flash "does not perform consistently worse on Mac', what they really mean is that not only does Flash run slower on Mac, but Safari is also coded really poorly for Windows.

Sure it gets bashed on Slashdot for not being open source but so what? Slashdotters would love to see Ogg audio take over the world and MP3 die a painful death too, and I don't see that happening either.

Well, for those of us interested in the development of Linux as a viable alternative to other operating systems, closed source software that comes to be considered "necessary" for general computer use means more time and resources spent on developing software against the de facto closed standards. Imagine if all those people trying to make Flash work on Linux could do something else with code that they can actually see. I dunno about you, but when I code for something, I like to know what the heck I'm work

Horrible ads? Adblock/Flashblock. Flash cookies? Delete them. What people care about is, erm, having a Linux version of Flash that isn't a horrible smoking pile of excrement, performance- and stability-wise.

Sure it gets bashed on Slashdot for not being open source but so what?

The practical results range from extra trouble (doesn't come prepackaged with my OS)
to showstoppers (have a 64-bit CPU? Sorry, we don't support that.)
The only application good enough to make up for that kind of trouble is Opera.

HTML5 in itself won't be a proprietary standard, but the underlying codecs required to actually play the video tag will be the same mess it's always been, with kludges and fallbacks to flash and / or other plugins when the video format isn't supported.

If w3c had wanted to do something useful, they should have insisted on ONE video codec format and ONE audio codec, to work with the video and audio tag respectively. Now that WOULD have been a common standard.

Agreed. I pretty much lost interest in it as a flash video replacement the second it became clear there wasn't going to be a set standard for codecs. I remember what it was like pre flash video on linux. A crappy situation of piggybacking on windows codecs and just hoping the site didn't have measures in place to prevent video from working at all in linux. I don't think it'll be that bad, but I can see a shadow of that in html5.

If w3c had wanted to do something useful, they should have insisted on ONE video codec format and ONE audio codec

Since HTML 1, W3C hasn't specified ONE image codec. Nor is there any video codec that comes with a large U.S. company's guarantee of being free of little-known patents owned by nonpracticing entities. H.264 is patented; Theora might be submarine patented.

Could someone please tell me what the point of Flash video(or html 5 video) is? I can watch mpeg2 films on clonky old hardware (remember multimedia PCs?) that won't play Flash, so is it just that flv is a smaller filesize? If so, how much smaller? Is it that flv renderers scale better than mpeg2?

So, assuming that Flash video is H.264 AVC, we are trading the huge pain in the ass of Flash players for 75% less 'buffering' time that could be spent looking at another tab?Neat!Personally, I would prefer software that downloaded the film clip, checked it was all there and then let me play it backwards, forwards and pause as I please without hanging the browser or rebuffering the whole thing again. But this is probably just crazy talk.

Obviously this is anecdotal, but the fans on my Macbook pro often spin up playing full screen flash video, but never while playing video in Quicktime. But even if HTML5 performs no better than Flash currently, HTML5 still wins because it doesn't rely on Adobe to issue security and performance updates.

When I turn on HTML5 video support at YouTube, the exact same clip in the exact same browser on the exact same OS on the exact same session runs at a third of the CPU power. Sure, it's an anecdote - and one that's been observed by hundreds if not thousands of others, consistently over the years. But according to Adobe, nope, no problems at all. Emperor's clothes look really chic.

Fuck off, Adobe. You had years to improve your damn plugin, and we'll all be better off when it and its horrid performance and security record are no more.

Let's compare an established de facto standard which is a monstrosity beaten into submission over several years, to an experimental implementations of an unfinished standard. Oh, and lets leave out the fact that the new one is perfectly cross-platform and open while the old one isn't.

It's not really fair to compare a technology that is still being developed to others that are very well established. The big benefit of HTML5 is it's non-proprietary nature. Once the standard is adopted and applications are built around it these comparisons will look very different.

I don't think openness of the standard is a benefit in this specific instance. Flash has to be optimized once per platform (so, 3 times). HTML5 video has to be optimized once per browser per platform, which is considerably more work. If only one popular browser doesn't do a good job, HTML5 video will be an unsuitable solution (because that browser will still need to use flash, and at that point you might as well deploy flash for everyone).

I think you're dead wrong. This test clearly shows the problem with the current proprietary solution: Flash video has low CPU usage on Windows because Adobe has optimized for that platform, but high CPU usage on Macs because they haven't bothered for that platform. And because it's a proprietary plugin, if Adobe doesn't want to fix this problem, neither Apple nor anyone else can do anything about it.

Having a standards-based solution, with multiple open source implementations means that anyone can add the

Except that Adobe have said they do want to fix it, but can't, because Apple refuses the provide the APIs they need.

Which is clearly bullshit. Adobe is claiming that Apple won't give anyone access to hardware acceleration APIs, and yet I have a number of games and video players that seem to work just fine. The problem is that Adobe refuses to use the available APIs for video acceleration. Why do you think Flash runs at 100% CPU on every platform (I guess not on Windows now that they have figured out some k

I don't think openness of the standard is a benefit in this specific instance. Flash has to be optimized once per platform (so, 3 times).

But Flash has been optimized zero times per platform. It is under the sole control of Adobe, so unless you have some mystical way of improving their legendarily shitty code, Flash is simply not going to get any better ever. Adobe has exactly zero reason to make Flash work any better, because they have zero competition in the market (Silverlight? Don't make me laugh, at thi

By saying "PC and MAC", TFA disregards handheld and small devices. These may be dominant players in the medium term(till they are as powerful as PC's and Macs). HTML5 may have an edge, especially with the iPad attitude of limited Flash support

Performance is rather secondary. This is about standards and cross-platform compatibility. Flash is an atrocity in this regard, and the earlier it gets tossed out on the trash heap of computing history, the better.

With Safari on the Mac, Flash did show a significantly higher CPU utilization, but Ozer attributes that to Apple's use of GPU hardware acceleration with HTML5....
Adobe has added hardware acceleration with Flash Player 10.1, and Ozer argues that if Jobs were to embrace such a setup, CPU hogging would no longer be a problem. Of course, that still leaves the buggy bit. And the security bit.

So the answer is to let some bug-ridden security-mess proprietary plug-in have direct access to the hardware. Brilli

So the answer is to let some bug-ridden security-mess proprietary plug-in have direct access to the hardware.

No, let the plug-in have access to the hardware through a hardware abstraction layer. Several steps of block-transform video decoding aren't too different from pixel shading, yet video games using pixel shaders don't have destructive access to the hardware.

Agreed! And I don't care how much faster Flash is on Windows. I don't use Windows and Flash is the _only_ video playing app that can't play full-screen video smoothly. VLC can do it, mplayer can do it. So I don't buy the GPU argument, even if using the GPU helps. Even if Firefox or Chrome can't do it yet at least it is in our hands to do something about it instead of waiting forever in vain for Adobe to take other platforms seriously.

So of course Flash will do some things better. HTML5 will come along very quickly, however, because of the number of people (consumers and companies) that hate Flash. Adobe dug this hole for themselves with their arrogant attitudes and sky-high pricing. Now that the rest of the industry has an alternative to rally around, it will soon be a new world. It won't be flash-free, but Adobe will have to clean up it's act to compete.

Having a platform based/built on open standards is way more important than having some monetarily driven format underpinning everything we develop for. I don't care about efficiency; I care about being able to use the internet without having it dictated to me that I need to use a Mac, or Vista, or a special browser feature some asshat wrote that I need for my banking. The world doesn't need another microsoft. The world doesn't need another swiss-cheese plugin controlling the web so shaddap about it alrea

It didn't happen for HTML image formats, even though that wasn't standardized either. In cases like these, de facto standards tend to arise. In this case, it is already pretty clear that the winner will be H.264.

Unlike on Windows 7 and Mac OS X, licensed H.264 decoders are not "available on the system" for users of Windows XP or Linux. Besides, just because a home desktop operating system comes with a licensed decoder doesn't mean a server operating system comes with a licensed encoder.

They aren't goint to settle on it. It will be unspecified, just as image formats were in past HTML specs.

how can there even be a real comparison here?

You compare both platforms with the same codec, of course.

Of course HTML5 can't take advantage of GPU acceleration yet, they don't even know what they'll be accelerating yet!

If they don't know, how do they play it today?

In fact, they do know. A de facto standard is already in place (Flash played a part in that as well), and it's called H.264.

HTML5 hasn't had the chance to implement GPU acceleration and that maybe they should consider it as part of their criteria in their codec selection process.

HTML5 doesn't implement acceleration, browser vendors do. It's not any harder for them to do so than it is for Adobe, so presumably, if Flash can hardware-accelerate, so can the browser. It's just that they didn't get to that point yet.

I don't think the first two will be too much of a problem. To make download harder, and to show ads, sites will fiddle the source URL with javascript most likely. As I understand HTML5 a site can implement it's own controls, using the video tag's DOM. DRM is the unknown. Some creative coder may pull a smoke and mirrors trick that's convincing enough. Higher ups may even come to the opinion that it just doesn't matter. Or (lack of) DRM could mean HTML5 video isn't adopted by most.

The browser and not the website owner controls how the video displays, the interface shown to the user

I doubt that, a lot of Flash players out there have quite advanced features compared to a standard video player. Youtube will for example allow captions, links and comments being added on-top of the video stream, it also allows changing the soundtrack of a video, other players have allowed adding comments directly to a time stamp or split the video into sections instead of a single linear bar and there is of course all that showing of related videos going on. Not quite sure how flexible HTML5 is, but I'd gu

I don't know about him but I tried your link on my netbox, a 1.8GHz Sempron running XP Home, and it kept the CPU redlined while the video was a slideshow, even though the video was just a tiny slice on the screen, while only having two tabs open (this page and the video). Meanwhile Youtube H.264 in SD plays just fine full screen and plays nicely even with multiple tabs open.

Was that the point you were trying to make? Or was it that the link you provided was to a "better" HTML5 player? Because if I'm gonna have to fire up my quad just to watch a video in HTML5 I'll stick with Flash, thanks anyway. I can always slap a cheap 4650 into the AGP slot if I want to get HD on this single core PC, thanks to hardware acceleration. Can I do that with HTML5?