用各种轮子组的一个车:
功能就是分享视频+弹幕,如果有多人同时播放,他们就 P2P ,如果他们播放时间差距在 10 秒内,还能实时弹幕聊天
演示: http://bgm.binux.me/ (可能只能工作于 Chrome )
源码: https://github.com/binux/webtorrent-share
3 年前,就想做一个无插件的视频 P2P 分享播放的东西。然后做了一个 webrtc_video 的原型,证明这个东西理论可行。直到 WebTorrent 的持续开发,让这个理论慢慢变得实用,真的非常感谢 WebTorrent 的开发者 feross 3 年多持续不懈的开发(你会发现 feross 为了这个项目关联开发了非常多周边库)。
不知道现在还有多少人记得 PeerCDN 这个通过 WebRTC 做 P2P CDN 的项目,希望 webtorrent-share 能提供一个应用的思路。虽然 WebTorrent 还远不能称为成熟(本想全 webtorrent 网络传输的,但是 node 的 webrtc 协议实现还是不稳定,只好退用 webseed ),但是很有趣,很有希望不是吗。
1
kslr 2016-05-08 19:12:50 +08:00 via Android
是指基于 web 的 p2p 吗?
|
3
kikyous 2016-05-08 19:54:18 +08:00 via Android
嗯,有意思😄
|
4
for4 2016-05-08 20:08:54 +08:00
Koutetsujou no Kabaneri 赞
|
5
NullMan 2016-05-08 20:20:01 +08:00
我一个 1300+star 的项目, 也从 feross 的轮子里抄了些代码. 我也关注了他这个 WebTorrent 的项目, 非常赞. 你的车厢也很赞!
|
6
bjtugun 2016-05-08 21:17:48 +08:00
为什么我首先想到的是一起看 porn [:cry:]
|
7
ovear 2016-05-08 21:54:45 +08:00
OAQ 又见到 binux 菊苣了。。膜拜。
每次 binux 菊苣都能写到好多好玩的东西 |
8
nareix 2016-05-08 22:06:31 +08:00
牛逼!这货可以理解为 web 版的快播吗?
|
9
binux OP |
10
sobigfish 2016-05-08 22:31:19 +08:00
-.- 怎么能缩小延迟,加 server 来 upload ?
|
11
MyLeoWind 2016-05-08 23:03:34 +08:00
binux 菊苣真厉害。
|
12
JamesRuan 2016-05-08 23:23:02 +08:00
真做出来了,赞!
|
14
wedd 2016-05-09 09:46:30 +08:00
能否做到以后视频网站再也不需要提供什么西瓜、快播之类客户端下载了
|
15
qq316107934 2016-05-09 10:48:49 +08:00 via Android
感觉可以做成一个用户在浏览器上传视频后发链接可以 P2P 分享给其他人,做到实时发车,永不翻车,想想就有点小激动。
|
16
yurivvvvv 2016-05-09 14:07:42 +08:00
视频格式受限制吧?
|
17
wilddog 2016-05-09 15:23:09 +08:00
您好~可以跟您认识一下吗?~
|
18
binux OP @qq316107934 webtorrent 的示例里面有很多这样的东西,但是需要有人开着浏览器做种,无法做到 7*24 ,而我不想这样。
@yurivvvvv 只有 mp4 能跳播,其他视频依据格式,只能顺序播放。 |
21
binux OP @sobigfish 理论上可行,比如你把直播切成小段视频。但实际不能,直播的编码流不被浏览器直接支持,无法在前端解码 P2P 传输。
|
22
sobigfish 2016-05-10 12:14:44 +08:00
https://github.com/streamroot/clappr-p2phls-plugin
也是 WebRTC 实现的(简介:写的是 peer-to-peer plugin for Clappr Player (HTTP Live Streaming, HLS, WebRTC, P2P)),具体的没看,估计也看不大懂-。- |
23
wusuopuBUPT 2016-05-10 15:34:50 +08:00
好顶赞 binux 牛!
|
24
binux OP @sobigfish 看了下代码,这个东西的传输是 WebRTC 实现的,然而播放器是 flash 实现的,播放器提供了 requestresource 事件,使得按需加载资源成为可能。
然而纯 html5 播放器不提供这样的接口,无法接管数据传输部分。 |
25
weaponX 2016-05-11 10:24:33 +08:00
播了 2 秒,然后就。。。卡住了。。。住了。。。了。。。
其实是 Chrome 没响应了,过了 5 秒左右才好了,这部分时间是否进行了大量的 CPU 计算呢? |
27
schezukNewTos 2016-05-12 00:45:21 +08:00
https://www.v2ex.com/t/170114
安利磁链弹幕项目, QQ 群 417216334 |
28
jabbany 2016-05-13 12:51:06 +08:00
卧槽,赞!
|
29
mywaiting 2020-04-16 15:53:03 +08:00
看到这个简直震惊......
赞~ |