| frontend | ||
| mpv | ||
| mpv-js | ||
| src | ||
| .gitignore | ||
| bun-env.d.ts | ||
| bun.lock | ||
| bunfig.toml | ||
| Dockerfile | ||
| LICENSE.txt | ||
| package.json | ||
| README.md | ||
| tsconfig.json | ||
Supiristin
A small tool to act as a tool for managing a music video queue. Basically a web server which lists the current MPV queue, recently added songs, as well as tools such as a button for skipping the current song or adding YouTube music videos to the queue.
The main use case is to have background music for small events, without relying on a Chromecast or other such tools. A big initial reason for avoiding other tools is to avoid the possibility of someone accidentally emptying the whole queue.
Setup
Dependencies needed:
To set up the web server along with MPV, run the following commands (substituting your own folder paths):
To install dependencies:
bun install
To run:
bun run dev
And open http://localhost:8080
For low end devices, open mpv/visualizer.lua and change the veryhigh preset
to verylow.
For a setup at a party, adding OBS and another device near the display is recommended. The device near the display, presumably a laptop, can display the management website on it's own screen, and the stream on the main screen.
A simple low-ish latency OBS setup can be achieved by setting the destination
stream server to: srt://192.168.178.123:6669?mode=listener, where the IP
address is that of the broadcasting machine. Then on the client machine just
launch MPV to display it: mpv srt://192.168.178.123:6669. Observed real world
latency this way is around 3 seconds. For even lower latency, SRT streaming can
be used.
This way the streaming machine can be far away from the actual display location. Also has the added benefit that, given it has multiple screens, the queue can be managed off screen easily. Also has the added benefit of being able to easily mix in other visuals, such as a chat, webcam, filters, etc.
The web server can be shared via
cloudflared
for example by running: cloudflared --url localhost:8080
License
This software is licensed under AGPLv3 with the commons clause. So by definition, this is not open source. In practice this means it's AGPL except commercial usage is forbidden. If you wish to use this software commercially, please contact me.