Popularity
2.7
Growing
Activity
6.9
-
102
9
30

Programming language: Haxe
License: MIT License
Tags: Media Streaming     Video Streaming    

SyncTube alternatives and similar software solutions

Based on the "Video Streaming" category.
Alternatively, view SyncTube alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of SyncTube or a related project?

Add another 'Video Streaming' Software solution

README

SyncTube

Synchronized video viewing with chat and other features. Lightweight modern implementation and very easy way to run locally.

Default channel example: http://synctube-example.herokuapp.com/

New features

  • Reworked layout and theme
  • Multi-Language support
  • Hotkeys (Alt-P for global play/pause, etc)
  • Mobile view with page fullscreen
  • Way to play local videos for network users (without NAT loopback feature)
  • Playback rate synchronization (with leader)
  • /30, /-21, etc to rewind video playback in seconds
  • Links mask: foo.com/bar${1-4}.mp4 to add multiple items
  • Override every front-end file you want (user/res folder)
  • Native mobile client

Supported players

  • Youtube (videos, streams and playlists)
  • Raw mp4 videos and m3u8 playlists (or any other media format supported in browser)
  • Iframes (without sync)

Setup

  • Open 4200 port in your router settings (port is customizable)
  • npm install ws in this project folder (NodeJS required)
  • Run node build/server.js
  • Open showed "Local" link for yourself and send "Global" link to friends

Setup (Docker)

  • As alternative, you can install Docker and run:
  • docker build -t synctube .
  • docker run --rm -it -p 4200:4200 -v ${PWD}/user:/usr/src/app/user synctube
  • (Docker container hides real local/global ips, so you need to checkout it manually)

Configuration

It's just works, but you can also check user/ folder for server settings and additional customization.

Plugins

How to use

  • Login with any nickname
  • Add your video url with "plus" button below (youtube or direct link to mp4 for example)
  • Now it plays and syncs for all page users, well done
  • You can click "leader" button to get access to global video controls (play/pause, time setting, playback speed)
  • If you want to restrict permissions or add admins/emotes, see Configuration above

Intergations

Heroku:

  • Create app and commit repo to get build
  • Remove user/ folder from .gitignore and commit it to change default configuration
  • Add APP_URL config var with your-app-link.herokuapp.com value to prevent sleeping when clients online

Development

  • Install Haxe 4.2, VSCode and Haxe extension
  • haxelib install all to install extern libs
  • If you skipped Setup section before: npm ci
  • Open project in VSCode and press F5 for client+server build and run

About