发布日期 » 2017年9月18日 星期一

作者署名 » 陈帅华

原创声明 » 署名-非商业性使用-相同方式共享

WebM及其他视频格式异同

源提问链接:ELI5: The difference between HTML5 video, WebM and WebP; and why we don’t just pick one and make it standard

问题描述:我已经看了两篇相似的文章,但是他们都没有提到WebM和WebP,我得到非常大GIF文件而且这种方式已经不时兴了,时至今日我只知道HTML5 Video是作为一个取代品而存在,近来我也听说了关于WebM/P,想他们是怎么回事?

来自blablahblah的回答

HTML5 Video 简单的理解就是我可以在不借助类似Flash这种插件的情况下将一个视频文件实体嵌入到网页中。该标准并没有规定视频文件应该使用什么格式。有两种格式正在被HTML5 Video 所推崇,第一种是H.264编码,使用Mpeg-4格式作为载体,这种格式支持都非常的高,这是一种蓝光使用的格式并且YouTube已经使用了很多年了。智能手机和其他的小型设备中也配备有专门用来解码H.264编码的硬件,硬件的支持使得其解码速度非常快,播放更流畅(即使是很廉价的设备上运行他也很少会出现卡顿的情况),并且对电池寿命的消耗也非常的低。他唯一的缺憾是这种编码格式并不是免费的。该编码的一整套算法有版权保护。如今浏览器厂商也不得不为了时其可是使用该编码算法而付费。(支付H.264编码算法的版税,顺便一提,这也是为什么Windows8.1存在单独发行的Media-Pack,通过将一整套音频和视频格式从Windows中拿出,微软这才能做到让用户免费升级到8.1版)。

进入到以WebM为包装器的VP8编码,这是谷歌提出的新的视频格式替代方案。改格式继承自一种叫 Vorbis 的开源编码格式,这种编码以Ogg格式作为包装器,这种格式并没有被广泛的支持,只针对移动设备,但是这种编码格式确实免费的。WebP是一种基于WebM视频格式的图片格式,你不会想到要使用它在作为视频的格式,而他有很多的理由可以作为GIFs来使用。

至于哪一种格式才能作为HTML5 Video的规范化格式,这一辩论是非常有争议的,连制定规范的组织也放弃了规范格式的想法,最后说:浏览器厂商可以使用任何他们想使用的格式。




来自匿名用户的回答

有几件事情先要搞清楚:“HTML5 Video”实际上是Javascript API,该API可以使用< video >元素及其子代元素(例如< source >元素)调用。因此当HTML5的概念被提出后,HTML5更多的是指Javascript而不是HTML。我知道也许你有异议,但是我想要让这件事变得更清晰一些。

Webm

Webm是谷歌推出的格式,他们希望在现有的技术内提升压缩比。他们将其作为一种开源免费的源编码格式,这样以来就解决了其他所有格式的版税的问题。谷歌使用他的V8视频解码编码器处理视频,然后使用Vorbis处理音频的编码与解码。

Webm

Webm 不是视频编码格式,而是图像格式。Webp的开发是为了更好的压缩JPEG图像文件,其目的是为了让Webp成为一种默认的图像格式,因为这种编码格式产生的图像文件大小非常棒。这种图像编码格式也是由谷歌推出。

MP4

MP4,或者叫做H.264,是另一个视频格式,尽管将其在应用中使用存在版权的问题。这中编码格式也是Quicktime和AAC音频编解码器的通用格式,而且这种格式也是苹果推崇的。

OGV

OGV,是另一种视频格式,并且是免版税的,该编码格式仅得到了少数的支持,我不确定为什么会这样,也许是因为一些公司不喜欢授权或者该编码格式产生的文件比MP4/Webm要略微大一些。该格式由Xiph Org推出,并且使用一个叫做Theora的视频解码编码器,如此一来就可以和任意一盒免费的音频解码编码器搭配起来,通常的搭配有Vorbis和FLAC或者Opus。

最后要说的是:我们在多种格式的取舍之间变得不知所措,因为每一种编码格式都有其在某一方面的优势。MP4能保证最好的视频质量和文件大小,也是支持度最高的一种编码格式,而Webm则趋向于成为更轻便和更灵活的一种编码格式。

这些问题对你来由有何意义,除非你非常在意较高的视频清晰度,否则这些编码格式之间看不出什么太大的区别。因此你想要无论如何想要更小的文件大小。更小的文件大小意味着更快的加载速度和加载时间,尤其是在移动端使用时更能看出来这一细微差别。你也不必去担心版税或者权限的问题,因为浏览器厂商已经实现了这些格式的解码与编码。

webm这一编码格式不被IE,Safari或者mini版的Opera,我想他们可以以插件的形式存在于浏览器之中。