SyncTV 同步观影 / 异地同步观看神器 v0.4.4 支持Win,Linux,Docker 开源免费

查看 154|回复 12
作者:anwen   
0x0
嗨~新年好呐,龙年大吉,平平安安的,一转眼50天左右过去了....帖子在12月底就编辑好了....然后搁置了就在草稿箱吃灰了


0x1 什么是SyncTV?
  • https://github.com/synctv-org/synctv

    SyncTV 是一个允许您远程一起观看电影和直播的程序。它提供了同步观看、剧院和代{过}{滤}理功能。使用 SyncTV,您可以与朋友和家人一起观看视频和直播,无论他们在哪里。
    SyncTV 的同步观看功能确保所有观看视频的人都在同一点上。这意味着您可以暂停、倒带或快进视频,其他人也会同步到同一点。SyncTV 还支持实时直播,因此您可以一起实时观看直播事件。
    剧院功能提供了聊天和弹幕功能,让您在观看视频时与朋友和家人交流。代{过}{滤}理功能允许您观看在您连接到源服务器缓慢的视频和直播。
    之前发过一个版本,那会还比较繁琐使用,现在使用还不错 功能也多了许多。
    0x2 特点

  • [x] 同步观看
  • [x] 视频同步
  • [x] 直播同步、直播推流

  • [x] 影院模式
  • [x] 聊天
  • [x] 弹幕

  • [x] 代{过}{滤}理
  • [x] 视频代{过}{滤}理
  • [x] 直播代{过}{滤}理
  • [x] AList代{过}{滤}理 和 Emby代{过}{滤}理

  • [x] 解析
  • [x] 支持ts伪装成png/jpg图片播放
  • [x] 视频解析
  • [x] AList
  • [x] Bilibili
  • [x] 分P
  • [x] 非国区
  • [ ] 合集ID
  • [x] Emby
  • [ ] 直播解析

  • [x] 支持添加字幕

  • [x] OAuth2登录绑定
  • [x] 支持 [百度、百度网盘、Gitee、GitHub、GitLab、Google、Microsoft、QQ、小米、飞书、Authing]一些列应用账号

  • [x] 后台管理

    添加方式支持 视频直链、直播流、创建直播、哔哩哔哩、AList、Emby
    [ol]
  • 支持添加视频直链,例如AList的视频直链 到时候和你女朋友一起看,一个宿舍、一个班级、一家人、一个群、一个公司/部门等一伙人一起看  之前的太繁琐了新版本直接支持绑定AList账号直接导入AList视频
  • 支持添加他人直播间的直播推流地址大家一起看~
  • 还支持自己直播直播推流,可以把自己直播画面加进去在这里显示
  • 支持添加哔哩哔哩  A/BV号 然后观看,如果有有会员账户的话 还支持开启更高清画质
  • 绑定 AList 账号,然后添加视频时候 可以直接选择视频直接导入观看
  • 导入Emby 视频
  • 支持绑定多个 AList 或者 Emby账号
  • 添加视频时候或者编辑添加的 可以添加字幕文件
  • 支持用户自主使用OAuth2进行注册登录
  • 也可以让管理员在后台添加账号密码
  • 暂不支持直接注册账号(管理员添加的账号也可以绑定第三方SSO)
  • 防止有人暴力注册账号,使用第三方账号可以随时注册

  • 后台管理 可以进行一些列管理设置,
  • 例如用户设置、房间设置、注册设置、OAAuth2设置、代{过}{滤}理设置

    [/ol]
    但是停止播放时会有0.5-1秒的延迟,影响不是很大
    0x3 使用方式(保姆级教程)
    默认账号/密码都是 root,大家启动后记得修改喔~
    0x3.1Windows
    支持 一键脚本 和 docker 以及手动安装,详细请看GitHub 安装方式
    我这里以Windows举例子,进入GitHub 右侧的 Releases,找到适合自己的版本,因为我这里是Windows 点击一下下方的 Show all 全部展开
    [ol]

  • 我的Windows是 Intel CPU就要使用amd版本的我们下载 synctv-windows-amd64.exe

  • 下载好后 我们把下载好的软件放到文件夹,然后在文件夹顶部地址栏输入 cmd回车打开命令终端

  • 打开命令终端 我们输入以下命令,生成一下配置文件
    [/ol]
    synctv-windows-amd64.exe server --data-dir ./

    通过 CMD运行,但是缺点会一直有哪个黑窗口有时还会卡主不动弹需要去命令终端摁一下回车
    所以我这边给大家准备了两个脚本方便大家使用,脚本就放着文件同级目录下就可以
  • 但是使用脚本前我们先把文件名 synctv-windows-amd64.exe 改成 synctv.exe,不论你是amd版本还是arm版本还是amd-v带其它标识的,如果你不改文件名哪你只能去修改脚本里面的文件名



  • 当我们需要的时候就双击一下启动_synctv.vbs就可以,不想用了或者想修改一下配置文件需要停止我们就双击一下停止_synctv.vbs
    下面是两个脚本的源码可放心使用...
    脚本里面的exe文件名是固定的,按照正常来说下载下来的就是synctv-windows-amd64.exe这个名字,大多数人也是用这个版本所以我就使用了这个固定的
    如果名字不用大家需要修改一下,要么改一下文件名,要么修改两个脚本中的文件名名称
    脚本文件放在了每个版本的Windows下载里面 你打开Windows的版本里面就可以看到了。
    启动_synctv.vbs
    Dim ws
    Set ws = Wscript.CreateObject("Wscript.Shell")
    ws.run "synctv.exe server --data-dir ./",vbhide
    Wscript.quit
    停止_synctv.vbs
    Dim ws
    Set ws = Wscript.CreateObject("Wscript.Shell")
    ws.run "taskkill /f /im synctv.exe",0
    Wscript.quit
    0x3.2 Linux
    一键脚本安装命令,您可以使用该脚本来安装和运行 SyncTV
  • 安装后应用本体是/usr/bin/synctv
  • 应用数据文件在 /opt/synctv/ 这个目录
  • 脚本应用在/etc/systemd/system/synctv.service

    一键脚本安装命令如下:
    sudo -v ; curl -fsSL https://raw.gitmirror.com/synctv-org/synctv/main/script/install.sh | sudo bash -s -- -v latest
    使用一键脚本命名安装后使用如下命令设置一下启动以及开机自启动
    systemctl enable synctv && systemctl start synctv

    全部命令
    启动:systemctl start synctv
    停止:systemctl stop synctv
    重启:systemctl restart synctv
    状态:systemctl status synctv
    允许开机自启:systemctl enable synctv
    禁止开机自启:systemctl disable synctv
    如果你想安装两个或者多个 SyncTV可以手动安装并且添加守护进程即可,手动安装以及添加守护进程可以参考AList手动安装教程
    0x3.3 Docker
    Docker 安装并运行 SyncTV
    docker run -d --name synctv -p 8080:8080 synctvorg/synctv
    Docker-Compose
    version: '3.3'
    services:
      synctv:
        image: 'synctvorg/synctv:latest'
        container_name: synctv
        restart: unless-stopped
        ports:
          - '8080:8080/tcp'
        volumes:
          - /opt/synctv:/root/.synctv
        environment:
          - PUID=0
          - PGID=0
          - UMASK=022
          - TZ=Asia/Shanghai
    有关 docker 镜像的更多信息,请参阅此处。
    0x3.4 Mac
  • 和Linux一样使用同样的命名可进行安装
  • 因为木有Mac设备无法提供教程暂时... 方法也很简单 启动携带命令启动就可以
  • 但是暂无守护进程喔~

    sudo -v ; curl -fsSL https://raw.gitmirror.com/synctv-org/synctv/main/script/install.sh | sudo bash -s -- -v latest
    0x4 亲自体验教程
    我们运行后进来十分简洁,没有太多余的选项

    我们可以创建一个房间,密码可以写 也可以不写,建议写上,因为别人可以在你的房间添加影片。防止有人捣乱

    新建好房间后我们是房主,右下角我们可以添加 视频直链、直播流、创建直播、哔哩哔哩、AList、Emby,我们如果播放视频就选择视频直链然后填写一下信息,高级选项正常不用选择,然后点一下下面的添加选项就可以

    添加好后 可以在影片列表点击播放,然后就开始播放了,如果忘记密码可以点击左下角房间密码后面的小圆圈即可显示密码
    如果不想看了依旧可以左下角删除房间,当然这些操作都是需要房主才可以操作,其它人只能播放或者暂停
    0x5 下载地址

  • 阿里云盘:https://www.alipan.com/s/rGtvU94eqSL
  • 含 Windows^1^(amd、arm),Mac^2^(Intel、M),Linux^3^(若干版本)

  • GitHub Releases:https://github.com/synctv-org/synctv/releases

  • Linux一键脚本安装:

    sudo -v ; curl https://raw.githubusercontent.com/synctv-org/synctv/main/install.sh | sudo bash -s -- -v latest
  • Docker安装:

    docker run -d --name synctv -p 8080:8080 synctvorg/synctv
  • Mac安装:(v0.3.5开始没有了)
  • 和Linux一样使用同样的命名可进行安装
  • 因为木有Mac设备无法提供教程暂时... 方法也很简单 启动携带命令启动就可以
  • 但是暂无守护进程喔~


    SyncTV使用文档:
  • https://synctv.wiki
  • https://github.com/synctv-org/synctv/blob/main/README-CN.md

    在线体验链接我这里就不放了,防止大家放一些不该放的哈哈,大家自己本地搭建一下一分钟搞定
    0x6 其它账号添加及应用注册账号
    0x6.1 - 手动在后台创建用户
    我们登录管理员账号进入后台在 用户管理 进行 添加用户

    0x6.2 - 使用第三方应用实现自主注册账号登录
    这里以大家都有的 百度/百度云盘账号为例   绝版了似乎,2024/02/24 发现已经关闭了个人开发者申请通道,之前申请好的倒是可以使用
  • 其它OAuth2申请文档地址:https://synctv.wiki/#/zh-cn/oauth2-baidu

    我们先打开 百度/百度云盘OAuth应用注册地址 进行注册设置,具体的可以按照下面的流程添加很简单
  • AppKey 为Client ID
  • SecretKey 为Client Secret

    回调地址:
  • 百度:https:///web/oauth2/callback/baidu
  • 百度云盘:https:///web/oauth2/callback/baidu-netdisk

    是指你的IP或者域名,自己进行修改~
    示例添加:可以单独只添加一个也可以两个都添加,都添加的话两个回调参数中间用逗号隔开,英文逗号喔~
    https:///web/oauth2/callback/baidu,https:///web/oauth2/callback/baidu-netdisk

    当然了不仅限于百度还有很多其它的,QQ也可以个人申请但是需要域名备案然后申请才能使用 本地的无法进行测试,另外其它的非开发人员也不使用。

    0x7 使用体验
    安装体验:相比较之前的方式现在已经很方便了。
    使用体验:使用更加方便了,导入直链也方便了,也能看哔哩哔哩的了
    导入AList的视频,导入Emby是一样的这里就不演示了

    导入哔哩哔哩的视频
  • 这里画质好一些是因为我登录了哔哩哔哩账号并且有大会员的账号
  • 如果 勾选 Shared和你一起看的人也能看高画质视频,否则是480p 低画质
  • 需要哔哩哔哩会员账号才可以使用


    也支持观看非大陆地区的影视,但是需要配置代{过}{滤}理解析

    哔哩哔哩也支持解析分P视频,然后选择自己要看的  (合集也支持暂时前端未适配后期添加)
  • 可以一键选择所有分P 是否开启代{过}{滤}理,是否Shared(高画质,绑定的账号是哔哩哔哩会员前提)


    还能在线导入字幕文件,有两种方式,一个是在添加视频之前,一个是进行编辑都可以添加(需要重新点击一下播放喔~)

    两个我常用的字幕网站:
  • aHR0cHM6Ly9zdWJoZC50dg==
  • aHR0cHM6Ly9zcnRrdS5jb20=

    排序位置进行更换,选择两个文件就能看到 交换位置 的按钮

    从Emby导入时如果文件太多找不到文件在哪儿可以进行搜索~

    0x8 后续计划
    后期会新增直播解析、使用AList导入或者Emby导入时候添加搜索、后台优化等

  • 直播解析:例如解析某鱼直播平台直播间输入房间号或者房间链接(不限于某鱼),会自动将直播流解析出来,下播再重新开播后也不用重新去获取会自动帮你获取

  • 使用AList导入或者Emby导入时文件很多例如几百个文件不好找,添加搜索可以快速定位
  • 已支持 Emby 添加搜索,AList 导入搜索暂未添加

  • 哔哩哔哩解析合集ID

  • 更好的 i18 适配

  • 添加jellyfin

    已知问题:
  • Windows 7 无法搭建使用(Go版本不支持了)
  • v0.3.5 开始没有了Windows arm和Mac版本
  • emby 暂时仅支持到了4.7版本,后续新版本暂时未适配使用会报错

    账号, 视频

  • youxdn   

    光这帖子的编辑就要非常有耐心才行!!!!!!!!!!!!
    anwen
    OP
      


    ydafu168 发表于 2024-2-19 22:49
    非常用心的教程,这一点就非常佩服!

    希望对你们有帮助,但是有点儿啰嗦,一啰嗦字儿就多了,字儿一多坛友们就看不下去了
    anwen
    OP
      


    leonrein 发表于 2024-2-19 23:04
    这个真的很有用! 不知道别人远程的视频是我这里传过去的还是她那里加载的呢?

    看来源,例如看哔哩哔哩,实际上是从哔哩哔哩传给对方的
    anwen
    OP
      


    a1067709136 发表于 2024-2-21 09:17
    感谢安稳大佬分享!我粗略看完内容,想问下:建好房间后,只需要发链接给对方就可以了吗?是不是对方不需要 ...

    但是对方需要一个账号,你可以在后台创建个号给对方 或者 你绑定一个OA让用户自动注册
    不用对方安装什么东西,直接浏览器就能打开
    anwen
    OP
      


    a1067709136 发表于 2024-2-21 09:33
    懂了,这太方便了。顺便问下:能否在公司内部使用呀?不用来盈利的情况下,只是用来提高员工工作效率这样 ...

    怎么使用就看你了,内网公网都能用
    anwen
    OP
      


    heisefuyun 发表于 2024-2-20 09:21
    看起来很厉害啊。就是不知道没有公网的话是不是就无法使用。那么就需要租个云服务器之类的搭建喽?有没有大 ...

    没公网的话 可以试试IPV6,IPV6似乎基本的都是默认公网,前提是你会关掉防火墙之类的让外面的访问的进来,如果只是为了这个租个服务器确实不划算,后面我试试看有没有办法用PASS第三方服务搭建一个 然后写个教程
    ydafu168   

    非常用心的教程,这一点就非常佩服!
    simoney   

    太牛了,膜拜一下
    52shuqi   

    厉害!1
    收藏一个!
    您需要登录后才可以回帖 登录 | 立即注册

    返回顶部