HLS Relive

Documentation for the relive system is contained within its git repo git@c3voc.de:hls-relive mirrored at https://github.com/voc/hls-relive → README.md

It's currently deployed at live.alb:/home/relive/git/

Setting up Relive in the VOC setup

Login to server

ssh relive@relive.c3voc.de
cd git
screen -dR

Create an appropriate config for your event in live.alb:/home/relive/git/configs

either by using ./gen_event_config.py <conference slug>, or

manually (deprecated, do not use I you are not really know what you are doing): copy cfg.example, look at other files in that directory, or in the old/ subdirectory for inspiration. The filename will be used as the conference name from here on.

After a minute, a cronjob will run and download the schedule, etc. (If you are impatient, you can run /home/relive/git/scripts/foreach-project.sh /home/relive/git/scripts/get-fahrplan.sh manually)

Start the scheduler (run as user relive, inside of a screen/tmux session): ./launcher.sh <conference slug>

In the streaming-website configuration, set RELIVE_JSON to point to http://relive.c3voc.de/relive/<conference slug>/index.json

Note that the index.json file is also only regenerated periodically, so it might be a minute or two before that URL actually works.

Relive integration in media.ccc.de (voctoweb)

When an event in voctoweb has no recordings, voctoweb will try to find the corresponding relive recording. This only works if the conference acronym matches the acronym used in the relive system.

To use this feature, first create the conference in voctoweb and in c3tracker. In theory there are multiple variants, but this one is the one we currently use:

To enable this workflow for you conference, enable the “releasing-relive-voctoweb” worker group which is handled by a modified version of CRS worker script-A living in a screen (user voc).

create-event-by-ticket.py is able to create an event in voctoweb, based on the CRS Ticket ID.

This script can be called during any state transition, we currently use scheduled → recording of the recording ticket

TODO: When we use this step, we should rename or migrate the deployment of of this script from releasing to storage, as it confuses tracker operators when the releasing host does the recording step.

If you need re-create the session, run following commands:

ssh voc@releasing.c3voc.de
screen -x
cd /opt/crs/tools/tracker3.0
source tracker-profile-relive.sh
export LOCALFILE=tracker-profile-relive.sh
./bin/crs_run script-A-recording+relive-scheduler.pl

README

Please read the README in the repository, it is being kept up to date with regard to the general behavior of the relive system.

FAQ

The /video/relive/<conference>/<id>/index.m3u8 is empty/broken, how can I regenerate the file?

simply rename or remove the file, it will be generated in the next run (or trigger it manually)