mirror of https://github.com/ekimekim/wubloader
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.
25 lines
1.2 KiB
Markdown
25 lines
1.2 KiB
Markdown
Wubloader is a system for saving, re-serving and cutting into videos of a target
|
|
twitch (or probably other HLS, but some twitch specifics are assumed) stream.
|
|
|
|
It was designed to serve the needs of the [Video Strike Team](https://vst.ninja)
|
|
as part of [Desert Bus For Hope](https://desertbus.org).
|
|
|
|
A full design doc can be read at [initial-design-doc.pdf](./initial-design-doc.pdf),
|
|
but a brief overview of the components:
|
|
|
|
* Downloader grabs segments from twitch and saves them to disk
|
|
* Restreamer serves segments from disk as well as playlist files allowing them to be streamed
|
|
* Backfiller queries restreamers of other servers in order to pick up segments this server doesn't have already,
|
|
ie. it replicates missing segments.
|
|
* Cutter interacts with a database to perform cutting jobs
|
|
* Sheet Sync syncs specifc database columns to a google doc which is the primary operator interface.
|
|
|
|
### Usage
|
|
|
|
All components are built as docker images.
|
|
Components which access the disk expect a shared directory mounted at `/mnt`.
|
|
|
|
A docker-compose file is provided to run all components. See `docker-compose.jsonnet`
|
|
to set configuration options, then generate the compose file with `./generate-docker-compose`.
|
|
Then run `docker-compose up`.
|