SYNCWALL 是一个局域网多设备同步播放系统,能让多台电脑同步播放视频或音频,支持跨屏画面、循环播放、指定设备显示图片、独立音量和全部停止。

Stars

7

7 天增长

暂无数据

Fork 数

0

开放 Issue

0

开源协议

GPL-2.0

最近更新

2026-07-27

AI 仓库情报摘要
FR-AI / ANALYSIS

为什么值得关注

它通过巧妙的时钟校准机制,实现无需额外硬件或复杂网络配置的局域网多设备同步播放,启动简单,适合各种多屏场景。

适合谁使用

  • 需要多房间同步播放的家庭影院爱好者
  • 需要在多台教室显示设备上协调媒体的教师和演讲者
  • 搭建多屏视频墙或装置的活动组织者
  • 构建同步音视频艺术项目的爱好者

典型使用场景

  • 在家庭影院的多块屏幕上同步播放电影
  • 派对期间在不同房间同步播放音乐
  • 在会议或展览中使用多面板视频演示
  • 在指定设备上显示图片,同时保持其他设备同步播放

项目优势

  • 一键启动,仅需 Node.js,无需其他依赖
  • 自动计算时间差并支持手动微调,实现精确同步
  • 支持视频、音频、图片、跨屏布局及独立音量控制
  • 内置测试和代码检查命令,提升可靠性

使用前须知

  • 要求 Node.js 22.13.0 或更高版本,老旧系统可能无法运行
  • 仅限局域网使用,不支持广域网或互联网同步
  • 管理后台 /admin666 默认无认证,存在安全风险

README 快速开始

SYNCWALL

SYNCWALL 是一个局域网多设备同步播放系统,可让多台电脑同步播放视频或音频,并支持跨屏画面、循环播放、指定设备显示图片、独立音量和全部停止。

同步原理

播放前,控制端会指定一个 2000ms 后的统一静止时刻。各设备冻结并回传当时显示的毫秒时间,系统自动计算时间差并修正,也可以手动微调。

播放时,控制端向所有设备发送同一个“当前时间 + 3000ms”绝对播放时刻。所有设备根据校准后的时间同时开始播放。校准音补偿只用于修正不同扬声器的发声快慢,不会改变视频的统一播放时刻。

纯净服务端

这是可单独复制和部署的 SYNCWALL 源码目录。

本目录包含网页、后端接口、数据库结构、媒体存储适配和测试,不包含:

  • node_modules 依赖目录
  • 构建产物和缓存
  • 本地数据库
  • 已上传的视频、音频或图片
  • 原站点的云端项目编号

最快启动

要求安装 Node.js 22.13.0 或更高版本。

npm install
npm run dev

启动后:

  • 控制端:http://本机IP:3000/admin666
  • 被控端:http://本机IP:3000/

服务已监听 0.0.0.0,同一局域网内的电脑可以通过服务端电脑的局域网 IP 访问。

也可以直接运行:

  • macOS:双击 启动服务-macOS.command
  • Windows:双击 启动服务-Windows.bat

文档

常用命令

npm run dev      # 启动局域网服务
npm run build    # 检查正式构建
npm test         # 运行自动化测试
npm run lint     # 检查源码

项目描述

SYNCWALL 是一个局域网多设备同步播放系统,可让多台电脑同步播放视频或音频,并支持跨屏画面、循环播放、指定设备显示图片、独立音量和全部停止。 播放前先校准时间: 控制端发送“2000ms-与被控端延迟 后静止时间”。 各设备冻结并回传当时显示的毫秒时间。 系统计算时间差并自动修正,也可手动微调。 播放时,控制端统一指定“当前时间 + 3000ms”开始播放。 所有设备根据校准后的时间,在同一绝对时刻开始播放。 校准音补偿只用于修正不同设备扬声器的发声快慢,不会改变视频的同步播放时间。

相关仓库与替代方案

根据分类、Topic 和编程语言匹配的相似项目。

TanStack
精选
TanStack GitHub avatar

router

TanStack Router is a type-safe, data-driven React router with built-in caching, prefetching, and nested layouts, while TanStack Start extends it into a full-stack SSR framework.

Web 开发前端框架
14,861
vercel-labs
精选
vercel-labs GitHub avatar

scriptc

scriptc compiles ordinary TypeScript into small, fast native executables without needing Node.js, V8, or any JavaScript runtime in the binary.

开发者工具代码质量与构建
1,985
Jakubantalik
精选
Jakubantalik GitHub avatar

thinking-orbs

A React component library that renders six hand-tuned animated thought orb loading indicators on a plain 2D canvas, with two purpose-tuned sizes and automatic theme detection for AI and agent UIs.

AI 与机器学习AI 智能体
1,191