From c42aa40033fd9d16e1da51cccc56b6063d6eec6e Mon Sep 17 00:00:00 2001 From: Sacha Chua Date: Sat, 20 Nov 2021 20:17:07 -0500 Subject: Add custom IDs, streaming script --- playbook.md | 57 ++++++++++++++++++++++++++++++++++----------------------- 1 file changed, 34 insertions(+), 23 deletions(-) (limited to 'playbook.md') diff --git a/playbook.md b/playbook.md index 9a509c39..bcd3ab83 100644 --- a/playbook.md +++ b/playbook.md @@ -101,9 +101,9 @@ - Doesn’t really work for corwin because of some weird setting problem - STRT Streaming to YouTube -- [X] [Start streaming](#org0bb33b4) +- [X] [Start streaming](#start-streaming) - Ugh, need to figure out ffmpeg for streaming -- [ ] [Check in a speaker](#orgd6f46ac) +- [ ] [Check in a speaker](#check-in) - [ ] Try streaming the organizer room, HOST rehearses opening remarks - [X] Play a prerec with subtitles - [ ] Try switching to talk room and streaming pretend Q&A @@ -159,7 +159,7 @@ - Backchannel for easy viewing - + ### Start streaming :stream: @@ -184,11 +184,11 @@ ## Talk process - + ### Check in a speaker -Exception: [CHECK is unavailable](#orga2b0fce) +Exception: [CHECK is unavailable](#check-gone) - Speaker checks in on #emacsconf-org via IRC or via e-mail ~30m before - CHECK notes IRC nick for speaker. @@ -222,7 +222,7 @@ Exception: [CHECK is unavailable](#orga2b0fce) - CHECK updates ${upcoming} with link to the talk room and preferences for Q&A-. CHECK will also /msg the relevant information. - + ### Present talk @@ -234,24 +234,24 @@ Exception: [CHECK is unavailable](#orga2b0fce) - [? prerec] - STREAM and HOST switch to the organizer room in BBB. - STREAM switches to MPV scene in OBS and plays the video (with captions if available). - - Exception: [Last-minute prerecording submission](#org154e440) - - Exception: [Last-minute caption update](#orgc98e265) - - [CHECK publishes information](#org48b1df1) - - [HOST gets a head start on handling Q&A](#org5a65313) - - When prerec finishes, [STREAM joins Q&A](#org5a65313) + - Exception: [Last-minute prerecording submission](#last-minute-prerec) + - Exception: [Last-minute caption update](#last-minute-captions) + - [CHECK publishes information](#publish) + - [HOST gets a head start on handling Q&A](#questions) + - When prerec finishes, [STREAM joins Q&A](#questions) - [? live] - - Exception: [Speaker does not have a prerec and has not checked in](#orgf5536c3) + - Exception: [Speaker does not have a prerec and has not checked in](#really-missing) - HOST joins the BBB room and double-checks that recording is on - STREAM joins the BBB room and gives the go-ahead - CHECK notes that this is a live presentation and that the recording will be posted after the conference. - CHECK notes the time that the presentation started, recalculates schedule, and publishes it. - Speaker presents. - - Exception: [Technical issues during a live presentation](#org489104b) + - Exception: [Technical issues during a live presentation](#live-issues) - [? talk needs to be wrapped up] - HOST nudges speaker verbally. - + ### Publish information @@ -287,13 +287,13 @@ Exception: [CHECK is unavailable](#orga2b0fce) - wiki page for talk - + ### Handle Q&A Exceptions: -- [Speaker has not checked in](#org686cb61) +- [Speaker has not checked in](#missing) - [? live] - HOST joins the BBB room @@ -324,7 +324,7 @@ Exceptions: want to be notified, or subscribe to the emacsconf-? mailing list to get the announcement. Please feel free to continue discussing the talk on IRC or the pad. -- [Present next talk](#org6aeec48) +- [Present next talk](#present) ## Break time @@ -344,7 +344,7 @@ Exceptions: ## In case of… - + ### Last-minute prerecording submission @@ -352,7 +352,7 @@ Exceptions: - CHECK will notify STREAM with the scp command and the mpv command so that STREAM can choose. - + ### Last-minute caption update @@ -361,7 +361,7 @@ Exceptions: - STREAM uses the provided commands to download the VTT file and load it into MPV with `--sub-file` - + ### Speaker has not checked in @@ -372,7 +372,7 @@ Exceptions: - Can play next prerec a few minutes early - + ### Speaker does not have a prerec and has not checked in @@ -414,6 +414,17 @@ Exceptions: - HOST sends ${alternate-url} to IRC: Alternate stream for ${title}: ${alternate-url} - ALTERNATE notifies #emacsconf-org when the stream is done. - CHECK updates ${stream-status} to note that the alternate stream is finished. + + FFMPEG process for sending the desktop and audio to the $CONFALT mountpoint on Linux with X11 and Alsa: + + 1. Set the CONFALT environment variable to icecast://user:password@live0.emacsconf.org:8000/alt.webm + 2. Install pavucontrol if you don't have it already. + 3. Start the following command: + + while 1; do ffmpeg -reconnect_at_eof 1 -reconnect_streamed 1 -loglevel 0 -ar 48000 -f alsa -channels 2 -sample_rate 48000 -i default -re -video_size 1280x720 -framerate 25 -f x11grab -i :0.0 -cluster_size_limit 2M -cluster_time_limit 5100 -content_type video/webm -c:v libvpx -b:v 1M -crf 30 -g 125 -deadline good -threads 4 -f webm $CONFALT; done + 4. Use pavucontrol to set the recording source for the ffmpeg + command to be the audio monitor, so you get system output as + well. ### Pad malfunction or mess-up @@ -435,7 +446,7 @@ Exceptions: - HOST addresses it (on-camera if needed) with a reminder and/or a kick or a ban - + ### CHECK is unavailable @@ -452,7 +463,7 @@ Exceptions: - Either STREAM or CHECK does hosting - + ### Technical issues during a live presentation -- cgit v1.2.3