前言
网友问我能不能给他搭建一个可以异地一起看视频的网站,上网冲浪一圈认为这个项目肥肠适合他 。
介绍
一个可以同步看视频的播放器,可用于异地同步观影、观剧,支持多人同时观看。 本项目有两个版本,web版运行在浏览器上,可跨平台,不限操作系统、设备,功能简单适用于要求不高的用户。还有基于SPlayer(射手影音)DIY的客户端版本(windows、MAC),播放4K高清文件、外挂字幕,统统没问题。
演示
来自项目作者的演示
原理
基于websocket实现,与一些用websocket实现的聊天室类似,只不过这个聊天室里的消息换成了播放暂停的动作和时间信息,客户端收到消息后执行相应的动作:播放、暂停、快进,以达到同时播放的效果。
如何使用
自己部署websocket
- 安装node.js环境
- 将server目录移动到服务器上
- 安装项目依赖包
# 安装项目依赖包
npm install
# 启动websocket服务
node index.js
使用GoEasy的websocket服务
注册GOEasy并且复制appkey到指定位置即可
leancloud-realtime
LeanCloud是一家一站式的后端云服务提供商,主要为各级移动应用开发者以及企业用户提供稳定高效的后端云服务,并通过提供全平台的SDK接口来快速实现集成应用,支持iOS和Android等平台应用,其后端云服务内容具体包括数据存储、文件存储与CDN、消息推送和实时通讯等。
先去leancloud官网注册一个账号
获得appId、appKey等信息,复制到对应位置(client/script/main.js)第一次执行(使用浏览器打开页面)这段代码时会生成一个对话(conversation),在leancloud控制台>即时通讯>对话下面,复制一个conversation id到对应位置
项目地址