Bilibili 向 HTML5 进发,播放器内核 flv.js 开源

2016-10-26 17:37:34 +08:00
 jyzhengqian

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

原生 HTML5 仅支持播放 mp4/webm ,于是我们做了一个使 HTML5 支持播放 FLV 视频的播放内核。

flv.js 在 JavaScript 中流式解析 flv 文件流并实时转封装为 fmp4 ,通过 Media Source Extensions 喂给浏览器,实现了 FLV 格式视频的播放。

我们实现了:

另:可以在 http://www.bilibili.com/html/help.html#p 试用我们的 HTML5 播放器~

30367 次点击
所在节点    分享创造
87 条回复
solonF
2016-10-26 22:03:34 +08:00
什么时候可以支持倍速播放
ETiV
2016-10-26 23:11:33 +08:00
这!个!屌!!!
jyzhengqian
2016-10-26 23:17:16 +08:00
@donlxn22 Fixed. 以前手抖的忘记清理了
Khlieb
2016-10-26 23:42:39 +08:00
直播时候管用吗?
wwqgtxx
2016-10-26 23:45:16 +08:00
@caonan 现实是决策层为啥要做这种没有意义的决策,从 FLV 转到 MP4 对性能没有任何的提升,却要付出大量的时间和精力去转换海量的数据,而且 B 站还有别的一堆接口还在用 flv ,为什么要做这种吃力不讨好的事情
wwqgtxx
2016-10-26 23:52:42 +08:00
从我们的角度看从 FLV 实时转到 Mp4 并费不了多少精力,但是对于那么海量的用户请求,那可不是增加一点点运算量
而且 flv 转换到 Mp4 虽然看着很简单,但是大部分情况下还是要重新封装,不是改个文件头那么简单的
虽然从个人角度来说, MP4 格式的确兼容性好,各方面都很优越,但是从人家公司角度考虑,的确是不如在播放器上动动手脚,把运算量丢给客户端来得快,来的经济
caonan
2016-10-26 23:58:42 +08:00
@wwqgtxx 我再仔细看了一遍题目后,觉得「这个场景下」通过客户端做挺好的,目前确实没有足够的理由让服务端去做这件事情,这个做法在客户端性能过剩的当下是完全说得过去的,甚至机智。

不过还是有点期待更统一或者平滑的方式,毕竟 HTML5 都这么些年了, FLV 的普及仍旧这么高
imgalaxy
2016-10-27 00:22:27 +08:00
可以 这很谦谦
ershiwo
2016-10-27 00:41:53 +08:00
这个可以,给赞。
panlilu
2016-10-27 01:29:26 +08:00
已 star
RqPS6rhmP3Nyn3Tm
2016-10-27 04:39:00 +08:00
不可以以后睿站上传视频默认 MP4,老视频也别转了回退 flv ,不是更好吗
cnbeining
2016-10-27 07:15:25 +08:00
@wwqgtxx 他选型的时候就有无数人提过了。

然并卵。
hellokittyer
2016-10-27 09:02:03 +08:00
自从发现 b 站可以体验 html5 播放器后, a 站就不怎么去了
Felldeadbird
2016-10-27 09:32:11 +08:00
可惜 B 站部分资源还不能 html5 播放
okampfer
2016-10-27 09:44:23 +08:00
@xmoiduts 成都电信 200M ,自从开始用 H5 播放器后,每到晚上我的体验跟你一样。
xmoiduts
2016-10-27 10:06:15 +08:00
还有一个问题,部分视频的前几秒会花屏,手动拖动进度条到开头后画面反而正常。怀疑第一个 I 帧解析有时出错。
heguannantc
2016-10-27 10:12:15 +08:00
不能看直播。。 h5 看超清就卡住但是高清就很丝滑。。不过还是支持。。不就是硬币吗。。给你就是了
nullizer
2016-10-27 10:12:44 +08:00
你们怎么把 flv 、 mp4 的封装规范理清楚的……
kaedea
2016-10-27 10:12:52 +08:00
厉害了我的倩
metalbug
2016-10-27 11:16:22 +08:00
支持 H265 就好了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/315671

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX