-
Notifications
You must be signed in to change notification settings - Fork 24
FOSDEM 2019 VOC manual draft
- Ask the video team to allow access to the video network from streamdump-external0.video.fosdem.org. For 2019, the ip's are: 176.9.123.213 / 2a01:4f8:151:82d0::2.
- ansible 2.7 (debian stable backports or debian buster)
- avahi-daemon avahi-discover
- mpv
- parallel-ssh
- sproxy (git clone from https://github.com/FOSDEM/video-sproxy , make static binary, drop in $PATH)
- Make sure you have run
update-privatefiles.sh
before running ansible. See https://github.com/FOSDEM/infrastructure/blob/master/ansible/docs/video.md#video-boxes-video-box-role
- Install mpvwrap from https://raw.githubusercontent.com/FOSDEM/video/master/software/mpvwrap/mpvwrap into $PATH (/usr/bin ?). Don't forget to chmod a+x it.
- Start Firefox and open about:config
- Right-click -> New -> Boolean -> Name: network.protocol-handler.expose.tcp -> Value -> false
- Create a mpegts tcp video stream. This will create one locally on port 8899 (hardcoded):
while true; do ffmpeg -re -i foo.mp4 -c copy -f mpegts - | sproxy; done
- Create a html file with a link to tcp://localhost:8899.
- Click the tcp://localhost:8899 link from Firefox. This asks for an application to handle this with.
- Registers mpvwrap as the application to deal with tcp:// links and starts the video.
- read general video manual: https://github.com/FOSDEM/video/blob/master/instructions/FOSDEM_AV_manual.pdf
- read up on ansible (see below)
- set up metal racks
- in K1105, move to server room when ready
- video team and/or general volunteers
- unpack laptops, switch(es?)
- Switch: 1x48port, last year was the Juniper from the office
- power & network cabling
- switch, voctops, streamdumper-local, control
- take pictures of the physical setup for future documentation
- TODO who? only trusted people in the server room
- boxes with video related gear:
- specific corner?
- stack on tables?
- remove lids
- tables, chairs
- power strip
- big screen:
- straps
- x240 laptop
- mini dp to hdmi adapter
- video vlan:
- 24 port switch
- Erase stale data from videoboxes, streamdumps, stream backends. See https://github.com/FOSDEM/infrastructure/blob/master/ansible/docs/video.md#erasing-all-data .
Enable dumps on streamdump0.video.fosdem.org, streamdump-external0.video.fosdem.org .
Some ad-hoc commands:
-
ansible --user=root -a ""
- Start the video recording on all video boxes:
ansible --user=root -a "service video-recorder start" video-box
- Check uptime on all video related boxes:
ansible --user=root -a "uptime" video-*
- You can spawn a shell before executing the command. This allows you to use pipes, chain multiple commands etc:
ansible --user=root -m shell -a "ip link | grep eth0" video-streamer-*
- Check if all boxes respond:
ansible --user=root -m ping video-box
-
overview screen of 26rooms
-
important urls:
- https://control.video.fosdem.org/all.html : all cams, slides, composites
- https://control.video.fosdem.org/cams.html : cams only
- https://control.video.fosdem.org/aw.html : aw only
- https://control.video.fosdem.org/h.html : h only
- https://control.video.fosdem.org/j.html : j only
- https://control.video.fosdem.org/k.html : k only
- https://control.video.fosdem.org/ua.html : ua only (TODO)
-
https://control.video.fosdem.org/ud.html : ud only (TODO)
- TODO split u overview into UA <-> UD
- outsourced by Vasil to Bulgarian gang
- TODO split u overview into UA <-> UD
-
TODO redeploy control.video.fosdem.org
-
TODO grafana with all audio monitoring, again on a big screen
- url? who?
-
cycle through mpv playlist (strange voctomix delays, stuttering?) *? create a playlist on the beforehand per type: videoboxes-slides
-
check correct artwork on voctops: background.raw
-
switch on dumpers: TODO how? anything to do?
- local dumper
- remote dumper
-
TODO restart the ingestion service on a specific video box?
-
watch the pre-mixing mp4 stream from a specific video box
-
port 8898 = to voctop? (starts slower, no point)
-
port 8899 = to dumper? (starts immediately)
-
Watch a specific cam box with the least delay possible:
mpv tcp://{{ config.room }}-cam.local:8899/?timeout=2000000
- Watch a specific slides box with the least delay possible:
mpv tcp://{{ config.room }}-slides.local:8899/?timeout=2000000
- Watch a specific voctop output stream with the least delay possible:
TODO check
mpv tcp://ud2120-voctop.video.fosdem.org:8899
- ip to (m)dns mappings?
- BOXNAME.local, just make sure you have avahi running
- tcp://ud2120-voctop.local.... should work
• react to irc calls this is old, what should it do? ->• ffmpeg -i ~/video/varia/how_not_to_launch_a_rocket.mp4 -c copy -f mpegts 'udp://227.0.0.2:9000&overrun_nonfatal=1&buffer_size=81921024&fifo_size=178481'
TODO troubleshooting physical boxes returned (we have only 1 spare per type!) -> Mark?
TODO how to deploy a different room config to a spare box running the latest box config for another room (ansible) as quickly as possible
- edit hosts in your local checkout, set ansible_host to the IP of the target box
- ansible-playbook playbooks/site.yml -i hosts.vk --limit BOXNAME.video.fosdem.org
- update dhcp config with new MAC
- DONE
TODO how to deploy a different room config to a spare voctop running the latest voctop config for another room (TODO would require a spare voctop to be deployed)
[test](mpv tcp://ud2220-cam.local:8899/?timeout=2000000)