84669 人學習
152542 人學習
20005 人學習
5487 人學習
7821 人學習
359900 人學習
3350 人學習
180660 人學習
48569 人學習
18603 人學習
40936 人學習
1549 人學習
1183 人學習
32909 人學習
B站最近新出的HTML5播放器 是怎么做到播放flv视频的?我在审查元素里看到加载的是flv格式的视频video标签的src属性 是这样的:blob:http%3A//http://www.bilibili.com/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
blob:http%3A//http://www.bilibili.com/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
------JS新手
拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...
http://tieba.baidu.com/p/4778...
难道这里的用户质量还没贴吧高嘛 = =
html5是否可以播放视频文件,是需要看视频文件的编码。把B站上视频下载下来,可以看到视频编码是AVC,这是大部分支持html5的浏览器支持的编码。所以即使文件的后缀是.flv也可以播放,如果一个视频文件是mp4格式,但编码不是avc,html5也播放不了
HTML5的视频播放是基于 视频自身编码和封装的(其实任何播放器也是这样)支持性。决定一个视频文件如何被解析来播放需要知道其数据封装格式(从而正确的分离 数据格式描述/视频数据包/音频数据包/其他数据包),这一过程在视频播放器处理中称为解复用(dmux),然后根据数据格式描述(查找各种数据包对应的解码器),各种解码器把数据恢复为基于同一时间基线的数据流(视频的帧数据,音频的音频流数据等等),然后用渲染程序向显卡输出各个帧(同时向声卡输出各个音频数据流,以及其他需要同步数据的输出,例如字幕)从而完成播放.
在这个过程中,扩展名其实不是必须的,因为视频本身的数据头才是标识数据封装、编码器等等数据信息的实体,所以仅仅看支持.flv的扩展名其实完全可能是一种处理中的个例,如前 数据编码实可能为H.264 AVC,封装也是mp4的。
其实一般扩展名在web服务中仅仅是为了方便http服务端程序在不解析数据的情况下处理数据,一般在MIME中标识,而对于.flv 和 .mp4,一般仅仅需要标识为其数据需要流式传输即够了,即服务器端其处理需求是一致的。
播放视频那是浏览器的事,浏览器支持啥格式就能播放啥格式,这和HTML5 JS 有啥关系,HTML5=UI,JS=逻辑处理。
这个跟video的属性没关系吧?b站视频格式好像就只有MP4和flv的,应该是在你上传的时候就限制格式了或者转码了
事实并非如楼上诸位所言去了解下 b 站已开源的 flv.js 就明白了纯 js demux 再通过 HTML5 MSE 汇入 video
http://tieba.baidu.com/p/4778...
难道这里的用户质量还没贴吧高嘛 = =
html5是否可以播放视频文件,是需要看视频文件的编码。
把B站上视频下载下来,可以看到视频编码是AVC,这是大部分支持html5的浏览器支持的编码。
所以即使文件的后缀是.flv也可以播放,如果一个视频文件是mp4格式,但编码不是avc,html5也播放不了
HTML5的视频播放是基于 视频自身编码和封装的(其实任何播放器也是这样)支持性。
决定一个视频文件如何被解析来播放需要知道其数据封装格式(从而正确的分离 数据格式描述/视频数据包/音频数据包/其他数据包),这一过程在视频播放器处理中称为解复用(dmux),然后根据数据格式描述(查找各种数据包对应的解码器),各种解码器把数据恢复为基于同一时间基线的数据流(视频的帧数据,音频的音频流数据等等),然后用渲染程序向显卡输出各个帧(同时向声卡输出各个音频数据流,以及其他需要同步数据的输出,例如字幕)从而完成播放.
在这个过程中,扩展名其实不是必须的,因为视频本身的数据头才是标识数据封装、编码器等等数据信息的实体,所以仅仅看支持.flv的扩展名其实完全可能是一种处理中的个例,如前 数据编码实可能为H.264 AVC,封装也是mp4的。
其实一般扩展名在web服务中仅仅是为了方便http服务端程序在不解析数据的情况下处理数据,一般在MIME中标识,而对于.flv 和 .mp4,一般仅仅需要标识为其数据需要流式传输即够了,即服务器端其处理需求是一致的。
播放视频那是浏览器的事,浏览器支持啥格式就能播放啥格式,这和HTML5 JS 有啥关系,HTML5=UI,JS=逻辑处理。
这个跟video的属性没关系吧?b站视频格式好像就只有MP4和flv的,应该是在你上传的时候就限制格式了或者转码了
事实并非如楼上诸位所言
去了解下 b 站已开源的 flv.js 就明白了
纯 js demux 再通过 HTML5 MSE 汇入 video