Skip to content

随时随地与他人同步观看视频或共享屏幕。无需注册,即点即用 | Watch videos in sync or share your screen with others. No signup, click and go.

License

Notifications You must be signed in to change notification settings

kev1nweng/reel-sync

Repository files navigation

ReelSync

简体中文 / English

HTML5 Vue.js Vite JavaScript Vercel

随时随地与他人同步观看视频或共享屏幕。无需注册,即点即用 | Watch videos in sync or share your screen with others. No signup, click and go.

ReelSync 截图

ReelSync 是一个同步观影 / 屏幕共享工具,基于 WebRTC 以及其它现代 Web 技术

核心特点如下:

  • 无需注册登录:链接就是会话。
  • 分享直链,打开即加入:房主创建房间并分享链接;访客打开链接即可加入(支持 /?join=ROOM_ID)。
  • 跨平台:运行于现代浏览器(桌面体验最佳;移动端可加入观看但屏幕共享受限)。
  • 点对点、隐私优先:媒体通过 WebRTC 端到端传输;不做服务端存储 / 转码 / 录制。
  • 开源(GPL-3.0):可自部署、可审计。
  • 多种来源
    • 本地视频文件(点对点模式)
    • 屏幕共享(点对点模式)
    • 在线视频 URL(同源模式:双方加载同一 URL,仅同步控制与进度)

Warning

隐私与安全边界仍取决于你所选择的 ICE/TURN 与信令服务。若有更强保障诉求,建议自建或选择可信服务。

兼容性

  • Safari:受 API 限制,点对点采集/推流可能不可用或不稳定。
  • Firefox:屏幕共享的“系统音频”通常不可用(浏览器限制)。
  • 移动端:通常不支持屏幕共享;可作为观看端加入。

安全与隐私

  • 媒体通过 WebRTC 端到端传输。
  • 点对点模式下,你的视频/屏幕流会直连对方;必要时 TURN 会中继加密后的流量
  • 本项目不实现服务端媒体存储 / 转码 / 录制。
  • 请谨慎选择 ICE/TURN 与信令服务;如需更强保障建议自建。

部署

Deploy with Vercel⠀←⠀点击这个按钮部署到 Vercel(推荐),或者:

自部署(静态托管)的最佳实践:

  • 在本地或 CI 中执行构建产物生成。
  • dist/ 目录部署到任意静态托管(Nginx / Caddy / GitHub Pages / Cloudflare Pages 等)。
git clone https://github.com/kev1nweng/reel-sync && cd reel-sync && pnpm i && pnpm build

环境变量

Warning

同源模式下,视频播放进度同步对网络的要求较高;较高的网络延迟可能导致频繁的强制同步。 若无法保证良好的网络环境,请将最大可接受延迟时间调高一些(至少 1 秒钟)。

  • VITE_TURN_SERVER_SOURCE_URL - 你的 ICE/TURN(STUN)服务器列表地址(参考 Cloudflare Realtime Kit)
  • VITE_MAX_ACCEPTABLE_DELAY_SECONDS - 最大可接受延迟时间(秒)
  • VITE_LATENCY_MEASUREMENT_INTERVAL_SECONDS - RTT 延迟测量间隔时间(秒)
  • VITE_SAME_ORIGIN_SYNC_INTERVAL_SECONDS - 同源模式下视频进度同步间隔时间(秒)
  • VITE_ADSENSE_ACCOUNT(可选)- 构建时向 index.html 注入 AdSense meta

本项目遵循 Vite 环境变量约定。推荐流程:

  1. 复制 .env.example.env
  2. 按需修改

许可证

该项目在 GPL-3.0 许可证 下发布。

GNU 通用公共许可证第三版(GPL-3.0)是由自由软件基金会(FSF)于2007年发布的自由软件许可证,旨在保障用户运行、研究、共享及修改软件的自由。 其核心条款基于 Copyleft 机制,要求任何使用或分发 GPL-3.0 授权代码的衍生作品必须采用相同许可证公开源码,以防止专有软件对自由软件的限制。 该协议还强化了对数字版权管理(DRM)的技术中立性约束,并提升了与其他开源许可证的兼容性。

有关更多信息,请参阅 LICENSE 文件。

开发

推荐使用 VSCode + Volar(禁用 Vetur)。

安装依赖:

git clone https://github.com/kev1nweng/reel-sync
cd reel-sync
pnpm i

启动开发服务器:

pnpm dev

构建:

pnpm build

星标历史记录

Star History Chart

About

随时随地与他人同步观看视频或共享屏幕。无需注册,即点即用 | Watch videos in sync or share your screen with others. No signup, click and go.

Topics

Resources

License

Stars

Watchers

Forks

Contributors 2

  •  
  •