R is for Recording Zoom (or other video conferencing) Talks (Shallow Thoughts)

Akkana's Musings on Open Source Computing and Technology, Science, and Nature.

Mon, 20 Jul 2020

R is for Recording Zoom (or other video conferencing) Talks

Giving talks has certainly changed a lot since last year. All those skills we practice in Toastmasters -- using the space, expressive gestures, projecting your voice, making eye contact with all sections of the audience? Meaningless now. In an age of quarantine and video conferencing meetings, speakers need to learn new skills.

Fortunately, there's Toastmasters for a painless, fun way to practice.

I was scheduled to give a talk on browser privacy. My local LWV has a Privacy Study Group that I'm co-chairing, and we had a meeting coming up on privacy while browsing the web. I knew I wanted to show a series of demos in multiple browsers, including additional windows like the Developer Tools window. I also wanted to record the talk so I could upload it later.

In Zoom, the process of canceling a shared window and then starting another share is slow, fumbly and error-prone. I knew this was something I needed to practice before the talk, to find a way to smooth the transitions..

A Separate Desktop

[Zoom setup]

A multiple monitor setup adds an addition twist. I'm using the video camera built into my laptop, but at my desk, the laptop is docked to a larger monitor. The laptop is to the left of the monitor, and lower. So to other participants, I'm sure I always look like I'm looking up and to the right. For regular meetings, I don't worry about it. But for a presentation, especially one I'm recording, it's better to look at the camera.

Fortunately, friends in both Toastmasters and LWVLA were willing to work with me setting up test meetings so I could try different setups. It's not something that's easy to do by yourself with Zoom, because Zoom gives you no clue what you're sharing, or if you're sharing at all. That's why Zoom meetings so often involve a lot of "Okay, do you see my window?" "No, we're still seeing you", and "Wait, it was working for a while, but now we're not seeing the window you're talking about, we're seeing a different window."

After a couple of experiments with sharing one window and then another, I decided sharing the whole desktop would work better.

Update a few months later: It turns out there's another reason to share the whole desktop rather than just a single window. If you share a single window, the mouse pointer doesn't get shared. So you have no way to point to specific places on the window. Zoom supposedly has something called "annotations" that lets you draw on the screen or use a "laser pointer", but maybe that's one of those things like push-to-talk that they haven't gotten around to implementing on Linux; the annotations toolbar is there, but when I tried it, the window I was sharing went totally black so it wasn't usable any more.

In general, for slides you shouldn't be using mouse pointers or laser pointers anyway; it's better to make slides that clearly highlight the part you need highlighted. But for live demos, that's not an option and you need a live pointer. So, share a desktop, not the screen.

A Small Desktop

I was happy to discover that when you share the desktop over Zoom, it shares only the monitor where the Zoom app is running, not the whole extended multi-monitor desktop. That meant that I could put speaker notes on one monitor while sharing the other.

It also meant the resolution didn't need to be huge. I was pretty sure I didn't want to share the whole 1920x1200 monitor, or even the 1920x1080 laptop screen: text would be fuzzy and small by the time it got scaled down into participants' Zoom windows, or into a reasonably sized YouTube video window. Many of the participants in these meetings are using laptops with fairly small screens, or, worse, phones. And even people who have large screens mostly don't have the network bandwidth to Zoom at high resolutions anyway.

If I used the laptop screen as the desktop to be shared, that would address two issues at once: I can scale it to any resolution that makes sense, without affecting the resolution of the big monitor. And if I'm using the laptop screen as the shared screen, that gets me looking at the camera, not off to one side.

What resolution? 1280x720 is one of the recommended sizes for 720p video on YouTube, and it's not that far off the lowest resolution people will be using for Zoom. (I actually used 1440x900 for my browser privacy talk, because I neglected to check on common video resolutions first, but I will use 1280x720 next time.)

On Linux, I use Openbox rather than a full-fledged desktop, so I have direct control over my X screens. This command enables both monitors with the laptop screen set at low resolution:

xrandr --output eDP-1 --mode 1280x720 --output DP-1 --auto --right-of eDP-1
(When my monitor is plugged in to the USB-C hub, it shows up as DP-1. If it was plugged in directly with an HDMI cable, it would be HDMI-1. The laptop's built-in display is always eDP-1.)

That command may look intimidating, but think of it this way: now that I've worked out the command, I can make an alias for it. I type something like monzoom and I'm ready to go. Way faster than fiddling with the multi-monitor display preferences dialog that most desktops use.

Once the multiple screens are set up, I put the Zoom window and whatever browser windows I want to share on the laptop monitor. Then I put my speaker notes, and anything else I don't want the audience to see, on the big monitor. Now you're ready to share.

Recording in Zoom

Then I needed to figure out how to record. Zoom has a Record button down near the lower right of the screen: but the Host has to set up the meeting to allow participants to record themselves, or else has to make you a co-host. So make sure you coordinate with the meeting host before the meeting if you plan to record.

I only tested recording to my local disk. Zoom also lets you make "cloud recordings" that live on their servers, if you're a Host or Co-Host; I'm not sure if that behaves the same as local recordings.

Once you have the permissions worked out, press the Record button and talk for a few seconds, then Stop Recording. Now comes the next problem with Zoom: you can't test your recording until the meeting is over. So it helps to try several different techniques, recording them separately each time; then end the meeting, go check your recordings, and start a new meeting to try some new ideas.

It helps to have patient friends!

The first problem you'll find is that you can't see yourself. You hear your voice talking ... and you see someone else, listening to you. That won't work for a recording, unless you're screen-sharing the whole time: no introduction or anything.

(I know, I know: "I look awful on video. I'd really prefer it if they don't see me at all!" I think most of us feel that way; I know I do! But as speakers we should try to get over it.)

Zoom has two options that put your face in the recording: Pin and Spotlight.

You can Pin yourself by right-clicking on your image on the gallery along the top. Then you'll always see yourself, and your image will be the one recorded, until you un-pin yourself. When you're screen-sharing, there will be a thumbnail of your image in a corner of the screen. (If you don't want a thumbnail, use the Stop Video button at the lower left.)

Spotlighting is a way for the Host to indicate the primary speaker, so Zoom doesn't randomly jump to other people just because their dog barked and they didn't have their mic muted. If the Host spotlights you, that also puts your image on the recording. But it's more of a hassle (you have to ask the Host to do it) and affects what everybody in the meeting sees, not just you. Pinning is easier.

And now you're all set. When it's your turn to speak:

Processing the Video

Zoom gives you an mp4 file that it creates after you End meeting. View it and see if it's okay. If it is, you can upload it directly to YouTube.

For my browser privacy talk, I forgot to un-mute myself. So the first 14 seconds of my recording was me flapping my lips silently, then reaching for the mouse and starting over.

A video editing program could fix that. But video editors are all such complicated things -- I don't know of one that just lets you trim off a little bit and re-save.

It turns out ffmpeg can do that, if you get the arguments right. They are:

ffmpeg -ss 14 -i zoom_0.mp4 trimmed.mp4

Lots of sites recommend -vcodec copy -acodec copy as well as arguments like -avoid_negative_ts make_zero but those didn't work for me. All the "copy" variants I tried either gave me an audio file with no video at all, or a terrible, blocky video file. Omitting the -vcodec and -acodec arguments lets ffmpeg re-encode the video, which it apparently needs when trimming a few seconds off the beginning. (copy might work if I was only trimming from the end.)


Of course, practice is the number-one secret to giving a good talk. But in this case, you need to practice not only the talk itself, but the technology. If you want to look like you know what you're doing, make sure you know where the Share button is, how to pin yourself and start the recording, where your camera is, where your windows are on the shared desktop.

We're all new to this shared world of video conferencing. But with a little preparation and practice, your talk can go as smoothly as if you'd given it in person. Have fun!

Tags: , , ,
[ 16:35 Jul 20, 2020    More speaking | permalink to this entry | ]

Comments via Disqus:

blog comments powered by Disqus