flash video标签支持格式 - HTML 5 <video>标记与Flash视频。 优缺点都有什么?




15 Answers

这里有很多优点,就像武术战斗风格一样,每一点都有它的主旨,并且每一个都可以得到捍卫; 但每个人都可以通过适当的举动被击败。

任何站在关于“专制”插件的论点上的人都会很快落下。 微软,苹果和Adobe都承认有罪,但那只是商业。 您不会在一夜之间改变业务,并且通过支持非常技术性的接口的新标签(例如<video>)添加的每一层复杂性都会导致每个浏览器的*稍微*不同的实现。

HTML 5现在起作用,Flash也起作用。 它是如何实施的,它需要的技能 - 它定义了每个资源,无论是员工的表现,网站管理员的权力还是域的影响力。

虽然我只有40岁,但当我选择橙色或绿色单色监视器作为颜色选择时,我开始编程,硬件安装随附祈祷书,而不是说明手册。 也许你可以找出调制解调器的AT指令,当它不能用你的硬件进行配置时,那么64K RAM就是这样的,WOWWWWW!

与垃圾相比,HTML 5 / Flash是个小麻烦。 让我们都学习如何在社区中进行协作以获得更好的资源。 有一个开源Flash项目,它会有错误。 所以将HTML 5 ...

这里的每一个论点都是真实的,但不一定富有成效 将这种能量用于解决方案。

video兼容 html5播放器

似乎新的<video>标签是最近的所有炒作,特别是在Firefox现在支持它的情况下。 这个消息在各地的博客中爆发出来,每个人似乎都很兴奋。 但是关于?

就像我搜索的那样,我找不到任何能比好的旧Flash视频更好的东西。 事实上,我只看到它的问题:

  • 在所有浏览器开始支持它之前还有一段时间,大多数人升级之前还有更多的时间。
  • Flash已经可用,每个人都有它;
  • 您可以将Flash与任何想要控制播放的奇特UI相结合。 我收集到的标签也可以控制(可能通过JavaScript),但它能够全屏显示吗?

我看到的<video>标签的唯一两个优点是:

  • 它更“语义” - 可能对包括我在内的所有人都不重要;
  • 它不依赖于单一的商业第三方实体(Adobe) - 我也不认为这是一个令人信服的理由,因为免费播放器和视频转换器已经可用,并且Adobe不会以任何方式阻碍整个流程(这甚至不符合他们的利益)。

那么......有什么大不了的?

添加:

好的,所以还有一个Pro ...也许。 支持移动设备。 很难说。 一些想法在我的脑海中围绕着这个问题展开:

  • 无论如何,有多少移动设备实际上能够以合适的速度对视频进行解码?
  • 主流移动设备获得<video>支持需要多长时间? 即使通过更新可以获得,但实际上有多少人这样做?
  • 有多少人在他们的手机上观看网页上的视频?

至于语义部分 - 我知道搜索引擎现在可以更好地检测视频,但是...他们将如何处理它们? 好的,他们知道页面中有一个视频。 和? 他们无法索引视频! 我想在这里有更多的论点。

添加:

只是想到另一个缺点。 这开辟了跨浏览器不兼容的全新领域。 HTML和CSS在这方面已经非常混乱。 闪光至少在每个地方都一样。 但至少有一家主要的浏览器厂商可以根据<video>标签决定是否足够(任何人都可以说“Internet Explorer”?),我们还有一个不错的新领域需要探索。

添加:

Pro刚刚进入。更多的竞争=更多的创新。 确实如此。 给予Adobe更多的竞争可能会迫使他们改进目前缺乏的Flash领域。 许多人认为Linux似乎是一个弱点。




<video>的最大好处是什么? 这很容易。 疯狂容易。 可笑容易。 你的奶奶可以编码一个视频标签很容易。 <video src =“myfile.ogv”> </ video>然后就完成了。

<video>对您的用户也有明显的好处。 他们获得了一个浏览器原生的视频播放器,这可能非常有效。 他们得到一个一致的用户界面,不会因为网站而改变。 可能无法实现Flash的移动浏览器仍然可以实现<video>。

唯一的con是临时的,这是兼容性。 IE8不支持<video>,并且在IE9广泛安装之前还需要一段时间。 此外,还有一些关于支持视频的编解码器的争论--Firefox,Chrome和Opera都支持Ogg Theora和WebM,而Safari和IE则支持H.264(尽管可以使用正确的编解码器支持Theora / WebM) 。 目前,这意味着您必须以两种格式发布视频,并为它们提供源元素,即:


<video>
  <source src='video.webm' type='video/webm'>
  <source src='video.mp4' type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"'>
</video>

为了添加对IE 8和更早版本以及其他低级客户端(比如旧版FF / Safari / Opera /等)的支持,只需将标准视频嵌入代码放在<video>标记内<元素之下。 如果浏览器支持<video>,它将忽略嵌入。 如果没有,它会忽略<video>并运行嵌入。




Flash在非Windows平台上非常令人头痛。 它不仅速度慢,而且效率低(正如其他人指出的那样),但它也不是很稳定。 正如我们在最近的Apple WWDC上所了解到的,“浏览器插件”(读取:Flash)解释了所有 Mac OS X中所有应用程序崩溃的大部分(以“多数”为例,我的意思是80%的荒谬数字或一些东西,不记得准确的数字)。 在Mac OS X上,这是一个问题,对于Snow Leopard,Apple重新设计了Safari,以便Flash运行,不仅仅是沙盒,而且实际上是一个完全独立的进程 ,所以当Flash崩溃时(不是)整体保持不变。

OS X上Flash的不稳定性,再加上其糟糕的表现,为什么......

  • Flash现在不是很快就不可能用于iPhone。 我不同意人们不想在他们的移动设备上观看视频这一前提 - 这就是为什么苹果为了允许其在iPhone上播放而在YouTube上为其内容提供服务的特别安排。 举个例子,我很高兴为MLB 2009支付了10美元,这完全是因为我可以在我的iPhone上观看视频,并且如果他们让每场比赛都可用于实时观看,我会付出更多。
  • ......许多Mac OS X用户(如我)正在为其浏览器安装Flash拦截器。 根据我的选择,如果没有我的明确许可,Flash内容甚至不会再加载到浏览器中。 由于安装它,我的CPU使用率大幅下降,我的浏览器崩溃已基本消失。 这对我来说当然是个好消息,但对于希望为我提供基于Flash的广告的广告客户来说,这是个坏消息。

就用户必须了解编解码器而言,可以避免此问题,并通过使用简单的非Javascript html代码为其提供适当的编解码器(包括Flash,如果浏览器不支持OGG或h.264)在这篇文章中找到。




这也是一个优点,视频标签是原生的HTML,所以它很好地集成。 这听起来像是一个非问题,但事实并非如此。 例如,您可以用一些HTML标题覆盖视频。 HTML标题可以使用与同一页面上的其他标题相同的样式。

您还可以将一些(未来)CSS转换应用于视频元素: 查看本演示




对我而言,将内置计算机或其他第三方播放器播放视频比Flash更有效率,这将是非常好的。 并非所有的平台都有Flash:iPhone和Android(至少现在是这样),标签可能会更快地工作,而不是晚些时候。 也不谈论Linux,Flash的工作非常糟糕。

关于互联网更多的语义,它可能对你很重要。 我不确定搜索引擎如何喜欢Google和Bing找到视频,但他们可能只知道一堆Flash视频实现,所以第三方小玩家没有机会。 如果我们都使用相同的标准标签,那么每个人都在公平的竞争环境中。




64位,Linux支持将会很好。 闪光仍然(在两千九个)在这方面缺乏。 只是有一些真正的竞争总是很好。 如果主要的视频网站开始使用这个Flash,或者甚至代替Flash; 这将是我将需要的一个较少的专有程序。 开源意味着更快的创新。 花点时间,人们会创建一种方式来提供受DRM保护的视频。




  1. 许多移动设备支持今天 :iPhone,iPod Touch,Symbian S60,Android等

  2. Mozilla Firefox,Google Chrome,Apple Safari和Opera都支持该标签(当然,您需要将其编码为2种格式:H.264和Ogg Theora。但是,您可以重新使用带有Flash或Silverlight的H.264视频针对旧版浏览器和Internet Explorer进行故障安全保护




赛斯获得了大部分大奖。 其他我可以想到的:

  • 测试矩阵的大小爆炸了(我看到一个错误只发生在IE9和Flash 9.0.48上 - 你想用每个浏览器测试多少个小版本的Flash?)
    • 即使你只选择一个确切的版本来支持,并强制其他人升级/降级,但“Flash在所有地方都是一样的”并非如此:“针对IE的Flash插件”和“针对其他人的Flash插件”aren即使是相同的二进制文件(是的,这很重要:他们以不同的方式访问网络,这是我IE7 / F9错误的原因之一)
  • 每个人都写自己的播放器,所以UI和可靠性不一致
  • 浏览器可以实现HTML5视频的全屏选项,这意味着如果他们还没有(尽管许多Flash视频播放器都有这个功能,但许多不这样)
  • 不,不是每个人都有Flash(当然,这比HTML5视频更普遍,但它并不是所有的开心糖果乐园)
  • 脚本是一个巨大的痛苦(有​​自己的DOM,事件,不完全ECMAscript语言等)
  • 如果您不在Windows上(在Mac OS X下运行Windows虚拟机,使用的CPU比使用本机Mac插件少5-10倍),它的性能会非常糟糕。
  • 它具有糟糕的稳定性(至少3年来我所见过的每一次浏览器崩溃都在Flash页面上;如果您的视频杀死了他们的整个浏览器,即使它真的是Adobe的错,它们也不会回来)
  • 它在很多地方都没有运行,例如,在一个64位的进程中(如果你的用户偶然错误地发送“Internet Explorer(64位)”而不是“Internet Explorer”,poof,没有视频)

简而言之,使用Flash的唯一理由是“大多数人今天都安装了它” - 只要它持续下去,这可能是一个很好的理由。




HTML5 Pros:

  1. It supports whole new DOM API for video objects, you can write script which can interact with new HTML5 tags.
  2. You can detect different video format support play, pause, and track video playback.
  3. Its already well supported. Firefox, opera, chrome already support chrome, video , etc... Even youtube is testing some HTML5 player.

Flash Pros/ HTML5 Cons:

  1. Flash is there everywhere. So HTML5 will take lot and lots of time to catch up.
  2. Flash support extensive features, let it be HW rendering, high definition video supports, Animation features it supports are simply irreplaceable(?)
  3. DOM API would never replace AS2/AS3 feature already supported by flash.
  4. Just count the number of professional flash developers out there... they will never switch unless HTML5 answers all their questions. There are number of flash developers who haven't switched from AS2 to AS3 yet :-)



My belief for pros:

  • It's catching the HTML standard up to the current practical uses of the web.
  • It seems like it would be easier/better to get mobile devices to support the video/audio tag rather than porting Flash to the devices.
  • Ogg is an open standard, while Adobe controls Flash.
  • I've already seen in some places people putting up solutions to have a fall through, meaning if your browser doesn't support video/audio tags, it will use flash.
  • Easier interaction with standard HTML elements and javascript.

My biggest con would be that Ogg is a bit behind in terms of compression and quality. But I would imagine it's being worked on. More importantly, if more people start adopting it, more people will likely join the the work on Ogg to make it better.

Competition is key as well, as there is no major player forcing Adobe to really do anything with Flash. So Adobe can control the market in terms of video content on the web.




One Con is the fact that the current html 5 spec has not been able to agree on a single codec due to browser vendor dissagreement.

From the article below:

"After an inordinate amount of discussions, both in public and privately, on the situation regarding codecs for and in HTML 5, I have reluctantly come to the conclusion that there is no suitable codec that all vendors are willing to implement and ship"

Browser vendor squabble

Ultimately, even if you do use the video tag, your video codec may not be supported in all browsers, even if they do support the tag.

As others have mentioned, this may not pose any real issue, but I believe having to make multiple versions of the same file available certainly negative.




Regarding this point:

"As for the semantics part - I understand that search engines might be able to detect videos better now, but... what will they do with them anyway? OK, so they know that there is a video in the page. And? They can't index a video! I'd like some more arguments here."

if optimized properly, a video will include a transcript, which a search engine can read, and correspondingly divulge all of the information about the video. I guess they can index the video's page? as for the value of it...i guess i won't have to watch crap I don't need, to find something I need, bcz I will know exactly what's in the video




My understanding is that the big deal about the tag is that it is an open standard. When only one vendor can implement Flash, you are at their mercy for implementations/ports to new platforms, browsers, or even browser versions.

The excitement is all at that level, not down in the implementation details. Worrying about which is technically superior is sort of beside the point in the same way as concerning yourself about a fascist government's ability to make the trains run on time would be.




I think the large majority of these answers condense to this: Flash is engineered mostly for the mass market, so it provides the easiest way to cover the bulk of the market, but it is deficient in covering less common and emerging platforms (ie shaky Linux and no iPhone). This has been the story with Flash pretty much from day one. It's practically a case study of how proprietary and OS software differ (and complement each other).

On the other hand, I think most answers are seriously underplaying the codec angle. There is one primary reason why Flash video dominates the web today: it's the only way to publish a single version of a video and expect it to be viewable by more than about half your audience. Even though the video tag looks to be designed well, as far as matching up multiple source files to the user's installed codecs, it's still difficult to know how many codecs are needed to cover what percentage of an audience, and impossible to know whether people will upgrade as new codecs emerge. Flash video has more known quantities, and a reasonably good expectation of upgrades for the large bulk of the audience.

I also kind of think that the performance angle is overstated in most answers, as well. It's true that Flash uses more CPU than any other player I have, but it also starts up more quickly - by orders of magnitude. When I come across a web page with an embedded MPG, my browser is frozen for 15+ seconds while QuickTime boots, or perhaps only 5 seconds if it was already running. (Almost as bad as PDF ;) ) Obviously Flash is less efficient in some ways, but from where I stand it's more efficient in others; like any software solution tradeoffs are involved.




Flash is controlled by a single company. That company can decide exactly what to do with the future of Flash and nobody else can affect it. Let's say, for example, that they (Adobe) suddenly decide charging a license fee for using Flash. What would happen to all the millions of web sites depending on it?

We need taking action, and that is now. We must use open standards, and we do need it badly. That's the only thing that makes the tag bleeding important to the world.

(Licensing fee for Flash might or might not seem like a realistic move from Adobe, but that does not matter. My point is that they are in control. Another thing that could happen is that Adobe decide to cancel Flash. Imagine what would happen then, if there were no tag.)




Related