如何打造一个支持多段视频无缝播放的 html5 播放器

2017-06-24 20:53:47 +08:00
 McContax

在帮一个美国朋友写一个 html5 播放器,但是有个对于我来说挺狗血的要求。

假设他现在有一个视频:1234.mp4

不知为何原因它要将此视频分割成两段:1234-1.mp41234-2.mp4,然后才上传这两段视频到服务器,用户访问的时候就读取这两个视频

html5 播放器的要求:

将 1234-1.mp4 与 1234-2.mp4 合并起来(或者是伪合并的衔接)

我印象中曾经不知道是搜狐还是新浪就用过这种方法,一个视频分段出 N 个小视频,用户访问时通过播放器来处理,但是在 ios 网页播放的时候就出现了进度条只有 30 秒(也就是分段处理的那 N 个小视频的长度)无法拖动访问后面内容的情况 求各位 V 友支支招

8641 次点击
所在节点    问与答
12 条回复
nolo
2017-06-24 20:58:17 +08:00
楼主可以了解一下 ts 流媒体格式
bozong
2017-06-24 21:04:34 +08:00
ts
xiaome
2017-06-24 21:07:54 +08:00
hls 可以达到你的需求,下面是一个实现方案
https://github.com/video-dev/hls.js
McContax
2017-06-24 23:25:34 +08:00
@xiaome
https://github.com/video-dev/hls.js 这个比较符合我的构思,但是问题是不支持 IOS,也是麻烦啊,不过不可否认在 PC 端的确是很好用的.
uuair
2017-06-24 23:28:57 +08:00
说个技术以外的话,这个不就是 porn 系列网站的存储方法么?
uleh
2017-06-24 23:52:22 +08:00
这不就是现在主流的流播方案么。。
可以看下 m3u8 或者苹果的 HLS 方案。
客户端的话我记得好像有个叫 dash.js 的。
mxalbert1996
2017-06-25 03:07:21 +08:00
LosLord
2017-06-25 03:32:27 +08:00
ios 不是原生支持 hls 那
USCONAN
2017-06-25 03:56:22 +08:00
DASH
Dynamic Adaptive Streaming over HTTP
目前最佳全能方案
xiaome
2017-06-25 06:27:07 +08:00
@McContax #4 HTTP Live Streaming ( HLS )就是苹果的技术,你说不支持 ios???
https://developer.apple.com/streaming/
facetest
2017-06-25 08:48:00 +08:00
自己控制不就好了,播完一个片段接着播下一个,记得提前缓冲就行
n37r06u3
2017-06-25 12:19:09 +08:00
服务器用哪个 可以上传视频的

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

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

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

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

© 2021 V2EX