flv.js

编程之家收集整理的这个编程导航主要介绍了flv.js编程之家,现在分享给大家,也给大家做个参考。

flv.js

flv.js 介绍

B站相信大家都不会陌生,而 Flv.js 就是由 bilibili 网站开源的 html5 Flash 视频(FLV)播放器,纯原生 JavaScript 开发(ECMAScript 6 编写) ,没有用到 Flash。它的工作原理是 Flv.js 在 JavaScript 中流式解析 flv 文件流,并实时转封装为 fmp4 ,通过 Media Source Extensions 喂给浏览器,实现了 FLV 格式视频的播放。

flv.js 是使用 ECMAScript 6 编写的,然后通过 Babel Compiler 编译成 ECMAScript 5,使用 Browserify 打包。

功能:

FLV 容器,具有 H.264 + AAC 编解码器播放功能

多部分分段视频播放

HTTP FLV 低延迟实时流播放

FLV 通过 WebSocket 实时流播放

兼容 Chrome,FireFox,Safari 10,IE11 和 Edge

十分低开销,并且通过你的浏览器进行硬件加速

flv.js 优势

由于浏览器对原生Video标签采用了硬件加速,性能很好,支持高清。

同时支持录播和直播

去掉对Flash的依赖

flv.js 限制

FLV里所包含的视频编码必须是H.264,音频编码必须是AAC或MP3, IE11和Edge浏览器不支持MP3音频编码,所以FLV里采用的编码最好是H.264+AAC,这个让音视频服务兼容不是问题。

对于录播,依赖 原生html5 Video标签 和 Media Source Extensions API

对于直播,依赖录播所需要的播放技术,同时依赖 HTTP FLV 或者 WebSocket 中的一种协议来传输FLV。其中HTTP FLV需通过流式IO去拉取数据,支持流式IO的有fetch或者stream

 

flv.min.js 文件大小 164Kb,gzip后 35.5Kb,flash播放器gzip后差不多也是这么大。 

 由于依赖Media Source Extensions,目前所有iOS和Android4.4.4以下里的浏览器都不支持,也就是说目前对于移动端flv.js基本是不能用的。

GitHub:https://github.com/Bilibili/flv.js

网站描述:HTML5 Flash 视频(FLV)播放器

flv.js官方网站

官方网站:

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

相关文章

scalable.js,一款可以使任何HTML元素动态缩放适合父元素的js...
Pica,使用JS进行快速高品质图像缩放
react-dates,React 日期组件
date-fns,轻量级的JavaScript 日期工具库
WOW.js,一款效果炫酷的元素在页面滚动时展示CSS3动画的JS插件
Pikaday,一个 轻量级、无依耐Js日期选择器