异地观影-go后端
Go to file
zijiren233 9c15b581d2 Fix: proxy 2023-11-05 21:19:59 +08:00
.github Update issue templates 2023-10-15 09:42:56 -05:00
cmd Refector: setting 2023-10-31 10:38:48 +08:00
internal Opt: change current can reset 2023-11-05 19:29:09 +08:00
proto Fix: optional bilibili vendor info 2023-11-04 14:04:28 +08:00
proxy Fix: proxy 2023-11-05 21:19:59 +08:00
public Feat: synctv init 2023-10-04 13:59:36 +08:00
server Fix: proxy 2023-11-05 21:19:59 +08:00
utils Opt: fast refresh cache 2023-11-02 21:17:10 +08:00
vendors/bilibili Fix: dash id 2023-11-05 19:54:06 +08:00
.gitignore Feat: support database 2023-10-17 20:03:56 +08:00
Dockerfile Fix: config file default use datadir/config.yaml 2023-10-18 15:31:09 +08:00
LICENSE Initial commit 2023-10-04 00:32:47 -05:00
README-CN.md Update README-CN.md (#24) 2023-11-01 04:36:00 -05:00
README.md Docs: update self-update docs 2023-10-13 17:30:06 +08:00
SECURITY.md Create SECURITY.md (#8) 2023-10-05 10:09:07 -05:00
build.sh Fix: sqlite3 not support some platform 2023-10-18 12:03:57 +08:00
docker-compose.yml Fix: config file default use datadir/config.yaml 2023-10-18 15:31:09 +08:00
entrypoint.sh Fix: config file default use datadir/config.yaml 2023-10-18 15:31:09 +08:00
go.mod Feat: bilibli dash proxy 2023-11-05 18:52:36 +08:00
go.sum Feat: bilibli dash proxy 2023-11-05 18:52:36 +08:00
install.sh Opt: install script func name 2023-10-09 15:11:32 +08:00
main.go Feat: synctv init 2023-10-04 13:59:36 +08:00
proto.sh Feat: oauth2 provider plugins 2023-10-23 21:20:39 +08:00

README.md

logo

👫A program that allows you to watch movies/live broadcasts together remotely🍿


English | 中文

What is SyncTV?

SyncTV is a program that allows you to watch movies and live broadcasts together remotely. It provides synchronized viewing, theater, and proxy features. With SyncTV, you can watch videos and live streams with your friends and family, no matter where they are.

SyncTV's synchronized viewing feature ensures that everyone watching the video is at the same point in the video. This means that you can pause, rewind, or fast-forward the video, and everyone else will be synced to the same point. SyncTV also supports live streaming, so you can watch live events together in real-time.

The theater feature provides a chat and bullet chat function, allowing you to communicate with your friends and family while watching the video. The proxy feature allows you to watch videos and live streams that may be connect to origin server slow.

Features

  • Synchronized viewing
    • Videos Sync
    • Live streaming
  • Theater
    • Chat
    • Bullet chat
  • Proxy
    • Videos proxy
    • Live proxy

Demo

https://synctv.pyhdxy.com/


Installation

Binary

You can download the latest binary from release page and install it manually.

Script

You can use the script to install and run SyncTV.

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

Docker

You can also use docker to install and run SyncTV.

docker run -d --name synctv -p 8080:8080 synctvorg/synctv

More information about docker image, please see here.


Usage

Global Flags:

-f, --config string   config file path
    --dev             start with dev mode
    --env-no-prefix   env no SYNCTV_ prefix
    --log-std         log to std (default true)
    --skip-config     skip config
    --skip-env        skip env

if you want to use a custom config file, you can use -f flag, else it will use ${HOME}/.config/synctv/config.yaml

Server

synctv server to start the server

synctv server
# or
synctv server -f ./config.yaml

server default listen on 127.0.0.1:8080, you can change it in config file

example:

server:
    listen: 0.0.0.0 # server listen addr
    port: 8080 # server listen port

Update

synctv self-update to auto update the binary

if you use --dev flag, it will update to the latest dev version force

synctv self-update
# or
synctv self-update --dev

Contributors

Thanks goes to these wonderful people:

Contributors

License

The SyncTV is open-source software licensed under the AGPL-3.0 license.

Disclaimer

  • This program is a free and open-source project. It aims to play video files on the internet, making it convenient for multiple people to watch videos and learn golang together.
  • Please comply with relevant laws and regulations when using it, and do not abuse it.
  • The program only plays video files/forwards traffic on the client-side and will not intercept, store, or tamper with any user data.
  • Before using the program, you should understand and assume the corresponding risks, including but not limited to copyright disputes, legal restrictions, etc., which are not related to the program.
  • If there is any infringement, please contact me via email, and it will be dealt with promptly.