Recording a talk with Big Blue Button and obs studio

From Hackers Against Climate Change
Revision as of 16:17, 18 April 2020 by Stuebinm2 (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

This page aims at giving a simple introduction to holding a talk over the net, with the Speaker interacting only with Big Blue Button and recording/streaming handled by a separate person somewhere else — this should allow for talks given by speakers who have little to no experience with audio/video streaming, as that is handled by the Stream Angel. Additionally, for live Q&A, a Signal Angel may also join the conference.

For now, this setup assumes that there is just one Speaker, but it should be relatively easy to expand it to several Speakers (e.g. for panel discussions) if needed — although the Stream Angel may end up with an inordinate amount of browser windows (and need a lot of downlink) …

This setup is specifically for situations in which you cannot use big blue button itself for the live stream (e.g. because there are too many people in the audience — most big blue button instances appear to break down once the number of participants gets unreasonably high) and/or recording — if you only want a recording of a talk, the inbuilt recording feature of big blue button is pretty easy to use and produces really cool output, but less portable than a normal video. You can of course also use both, and have one as a backup.

This article was written partly for the Ringvorlesung Umwelt at the TUM, but is intended to be as general as possible and adaptable to other situations as well.

Context

Requirements

The following software is assumed to exist somewhere in the context of this page:

  • a computer on the Speaker's side, with webcam and microphone as well as enough uplink capacity to stream basic video
  • a big blue button instance
    • if unavailable, a jitsi meet instance could be used as a fallback, though it's less pretty
  • a computer on the Stream Angel's side which is fast enough for live encoding and has sufficient downlink for big blue button
    • Optionally (but recommended): a microphone on the Stream Angel's side. This will not be recorded, and can thus be useful to give the Speaker hints and (limited) technical support if anything goes wrong without the audience noticing
    • for livestreams, enough uplink on the Stream Angel's side for HD-video streaming (the font on the slides should be readable, after all)
  • a hard drive and/or streaming server somewhere as target for the processed video stream

Roles

This page assumes chaos-event-style roles and names them as such:

  • the Speaker is the person giving the talk
  • the Stream Angel is the person who does the recording and/or livestreaming
  • the Signal Angel is the person reading the chats and collecting questions, which they can then read to the Speaker

Of course, depending on your situation and requirements, you may also create additional roles (e.g. a Herald to announce the Speaker, more Signal Angels, etc.). Be sure to tell the Stream Angel about them if they need to speak in the stream or even have their video there.

It may prove useful to have all Angels in a separate conference (e.g. on a mumble server), so that they can all talk to each other during the event without being heard in the livestream.

Speaker's side

Requirements

  • webcam and microphone
  • slides as pdf
  • a nice, non-distracting background for your talk

Before the Talk

  • if your computer/laptop has a webcam and microphone, great! If not, you will need external ones
  • follow good practice for audio recordings to avoid echos etc.
  • The Stream Angel should have sent you a link to a big blue button instance. Open it, select "with microphone"
  • your browser should ask you to allow big blue button to access your webcam and microphone; click on "allow"
  • do the echo test (if you cannot hear yourself, try choosing another microphone — if this does not work either, either know what's gone wrong or ask the Stream Angel or someone else who is likely to have some idea)
  • if you aren't already, make yourself the presenter (by clicking on the plus in the bottom left corner of the screen)
  • upload your presentation as pdf:
    • click on the plus in the bottom left corner of the screen, and choose "upload presentation"
    • click on "add file" and select your slides as pdf from your drive
    • press the blue "upload" button at the top right
    • wait for big blue button to upload and process your slides (you cannot really do anything in the meantime)
    • once processed you will be returned to the main view, where you should now see your presentation
  • familiarise yourself with the controls before starting the talk:
    • you can go through the slides with the buttons at the bottom, or with the arrow keys on your keyboard
    • you can zoom in on the slides with your mousewheel — be aware that this will also zoom into the slides for your audience, so don't overdo it
    • on the right side you have a toolbox where you can select a brush, colour, and brush size, in case you want to add notes to your presentation or highlight a particular section for your audience. You also have an undo-button to go back one step, and a clear-button to clear the entire page
  • If you want to show your audience a video, demonstrate some program on your computer or cannot convert your slides to a pdf, you can also choose to share you desktop instead (click the corresponding button in the icon tray on the bottom of the screen). You can also use this feature to show the Stream Angel your desktop in case seomthing's gone wrong and you're out of ideas

During & After

Everything works as intended? Great! Then start your talk once the Stream Angel gives you a go (don't start earlier, as the recording/livestream may not yet have started!)

If there is a Q&A session following directly to your talk, you will probably receive the questions either through the chat on the left side of the screen, or a Signal Angel will read them to you directly through Big Blue Button.

Once you are done with your talk, lean back; the Stream Angel will do the rest of the work. Once they confirm that the stream has ended, simply close the tab in your browser.

Stream Angel

Requirements

  • a computer fast enough to handle live encoding
    • it has have either a very large screen which can display at least two full-hd-windows next to each other, or a window manager that does not suspend rendering windows if they aren't visible (gnome on x.org seems to work)
  • if there is a stream, a stream key
  • if there is a recording, someplace to store it
  • a microphone to give tech support and hints to the Speaker (these will not be audible in the stream/recording)

Before the Talk

Configuring Big Blue Button:

  • start a conference in big blue button, send the invite link to the Speaker (and, if there is one, the Signal Angel)
  • check that your own microphone works
  • maximise the slides in big blue button
  • start another window of your browser and join the conference a second time, and maximise the Speaker's video
  • (optionally) open yet another browser window and join the conference a third time if you want to have the normal bbb interface as well
  • know what the Speaker is supposed to do; possibly you may have to give them some tech support if they've not done something like this before
  • ONCE EVERYTHING ELSE WORKS (including the obs setup!): use your browser's development console to remove the "minimize"-buttons of big blue button — avoid doing this too early, as otherwise you may no longer be able to change anything

Configuring obs:

  • check recording directory and/or stream target and key
  • check target resolution and encoder settings
  • add sources in obs:
    • a window capture source recording your first browser window for the slides
    • a window capture source recording the second browser window for the Speaker's video
    • an audio capture source capturing your desktop audio, if it is not already recorded by default (pulseaudio source works well for this)
    • optionally: remove gray video borders by cropping the video
    • optionally: add image/video sources as decoration
  • add scenes, transitions, and effects to your liking
  • add a "pause" scene which can be displayed before and after the stream
  • if there's a Q&A, add an extra overlay for it displaying the link to any feedback chats
  • check that your own microphone is not being recorded
  • (here remove the bbb minimize-buttons in your browser)
  • start recording and stream
  • everything works as intended? Great, give the Speaker a go! (do a dramatic countdown if you like)

During the Talk

  • check that everything looks fine
  • transition between your scenes as you like/think sensible
  • if obs crashes, restart it. possibly alert the Speaker that they should repeat the last couple sentences
  • check that no frames are dropped. if too many are, close other programs. if they still drop … well, there's not much you can do except upgrading your hardware or streaming at lower quality/resolution (if you only do a recording and no livestream, you can set the encoder to produce laughably large video files at low compression, which you can re-encode afterwards — takes ages, but should look a lot better)

After the Talk

  • Switch to the pause scene, or play credits if you have any
  • shut down stream and recording
  • tell the Speaker they're now offline
  • (if livestream): cut off extra stuff from the restream
  • (if recording): open up a video editing software to correct any errors

Signal Angel (optional)

Before the Talk

  • Check that any chatrooms/irc channels/matrix rooms/pads/whatever your use to collect questions from your audience work
  • Check that you have moderator status in all of them
  • Check that someone posted a link to them somewhere where your viewers will find it (if no one did, call the Stream Angel to put them on display via obs)
  • join the big blue button conference via link, do the echo test, then mute your audio

During the Talk

  • moderate the chats
  • announce that you're there, and that people may ask questions in the chat
  • if anything goes wrong, apologise for the inconvenience
    • don't press the Stream Angel too much, they're probably very busy right now
  • collect those
  • during the Q&A, unmute your microphone and read the questions to the Speaker

After the Talk

  • leave a friendly message in the chats, thank everyone for their questions, possibly alert viewers to the date of the next talk (if there is one)
  • leave the big blue button conference (simply close the browser tab)