Synchronized viewing, theater, live streaming, video, long-distance relationship
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
Go to file
zijiren233 8798ac5ca9 Fix: update guest setting need reload (#193) 8 months ago
.github Fix: support low bash version 9 months ago
cmd Feat: load flags form env 10 months ago
internal Fix: update guest setting need reload (#193) 8 months ago
proto Feat: expire and reload bilibili live 10 months ago
proxy Fix: proxy 1 year ago
public Fix: dist embed all file 1 year ago
script Chore: dep Version typo 9 months ago
server Fix: proxy live 9 months ago
utils Feat: load flags form env 10 months ago
.gitignore Fix: cd error 1 year ago
Dockerfile Fix: dockerfile 9 months ago
LICENSE Initial commit 1 year ago
README-CN.md Chore: docs url 9 months ago
README.md Chore: docs url 9 months ago
SECURITY.md Create SECURITY.md (#8) 1 year ago
build.config.sh Fix: support low bash version 9 months ago
go.mod Fix: proxy live 9 months ago
go.sum Fix: proxy live 9 months ago
main.go Feat: synctv init 1 year ago

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
  • Parse
    • Parse video
      • Alist
      • Bilibili
      • Emby
    • Parse live

Demo

https://demo.synctv.wiki


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 -fsSL https://raw.gitmirror.com/synctv-org/synctv/main/script/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

Run

synctv server to start the server

synctv server
# or
synctv server --data-dir ./

Every time it starts, it will check for users with root permissions. If none are found, it will initialize a root user with the password root. Please change the username and password promptly.

The user registration function requires the use of any OAuth2 service, such as Google, Github, etc. For specific configuration, please refer to documentation.

Documentation

https://docs.synctv.wiki

Special sponsors

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.

Discussion