最近做了部分关于HTML5视频播放的项目,主要是调部分bug,在这个过程中对HTML5视频播放的整个
流程也是大概看了下,现对前一段时间的东西做一个总结,把自己了解的东西都分享出来,如果有说的
不对的地方,请大家不吝指点指点。
关于HTML5视频播放,这个要追溯到关于HTML和webkit的相关内容了,至于具体的关于两者的内容,
我想只需要google一下应该有大量的相关资料,所以在这里就不赘述了。
HTML5是新的web标准,而webkit是解析网页的主要部分,即浏览器的引擎,(引擎是什么?这个自己
google).它的主要工作就是将网页源码进行解析,渲染,布局,然后将该网页显示给我们。
当然看网页现在都离不了浏览器,其实浏览器就是个app,主要工作还是webkit在做,相当于汽车在路上走,
启动,停止,开的快或者慢,或者刹车等等操作都是在骑车上操作的,但是真正起作用的是汽车里的发动机
在工作。(比喻不是很恰当,不过能懂就可以了)(阿哈,汽车发动机不也是叫engine么,引擎,对,就是
这个意思)。
我们通过在浏览器里面输入URL然后点击确定,将该URL发送到URL所在的所在服务器上索取我们想要的
页面,服务器会在经过一定的判断(后面会用到)之后会返回给我们一个页面源码(这个就是用HTML语言写的,
做网页的人都知道的),然后浏览器内部默默工作的webkit就开始工作了,对页面进行解析。。。。。。
巴拉巴拉,然后显示页面。至于关HTML5 什么鸟事?这个灰常重要,HTML5格式的页面源码现在相当的流行,
当你看过关于它的文章和介绍了之后你肯定会认为它的流行在将来是大势所趋(英雄所见略同,
我也这么认为)。前面讲到服务器会判断后返回页面源码给我们,这个判断我暂且不知道它还会判断什么,
大概就是什么安全阿,什么东东的,不过我们关心的是它给不给我们HTML5格式的源码。它通过什么判断
给不给我们HTML5 源码呢?为什么我们要HTML5的源码不要HTML4或者什么的呢?(问的好,请看下文)
至于我们为什么要HTML5 源码,是因为我们要的是webkit解析网页源码之后,直接将页面中带有的视频
内容播放,而不通过插件(flash)来播放,而一半的HTML源码中带有的视频都需要插件才能播放,HTML5
源码中有个新的功能就是将视频内容放到了一个新的tag中,即<video>标签,webkit能直接解析它将它作为
页面的一部分进行播放。其播放的过程以后再讲。
浏览器如何判断是否给我们HTML5源码呢,这个它要通过判断我们发送URL的时候的有个useragent来判断,
因为对于ipad,iphone,它会返回HTML5的源码,而其他的就会返回一半的源码,这个是服务器的工作了,它有
两套源码(或者说更多),
if(ipad/iphone)
HTML5;
else
.....