[[!meta title="Preparing your talk"]]
[[!meta copyright="Copyright © 2019, 2020 Amin Bandali; 2021, 2022 Amin Bandali, Sacha Chua, Leo Vivier; 2023 Sacha Chua"]]
This page contains tips for preparing your talk. If you have any
questions, concerns, or suggestions please feel free to write to one
our organizational mailing lists: the public <emacsconf-org@gnu.org>
list, or the private <emacsconf-org-private@gnu.org> list, depending
on the nature of the matter you would like to discuss.
Note: being part of a wiki, this page is subject to change (including
by you!); so please check back every now and again for any changes and
updates.
We'll bring up the web-based upload service at some point. Let us know
at <emacsconf-org-private@gnu.org> if you're already ready to go!
<!--[[Already done? Upload your video and other files|upload]]-->
## Guidelines for conduct
Please review our [[guidelines for conduct|conduct]] when preparing your
talk to make sure we’re all on the same page and strive to make the
event a great experience for all. If you’re not sure whether your talk
or presentation style meets the guidelines laid out in the guidelines
for conduct, we’d be happy to help. You can email Sacha Chua at
<sacha@sachachua.com> to chat more about this.
## Recording your talk
To help EmacsConf 2023 run smoothly, please prerecord your talk, and
plan to upload your video(s) by **November 4** to allow us enough time
to do any needed processing (e.g. format or codec conversion) in
preparation for the event. Please consider submitting a prerecording as
early as possible so that we can see if volunteers can caption your
video to make it more accessible and searchable.
To make it easier for organizers and attendees to correctly pronounce
your name, please start your video with something along the lines of:
"Hi! I’m ${NAME} and I’ll be talking about ${TOPIC}."
### Tools
To record your video, you could use any of the following pieces of
free software, depending on your needs:
- [OBS](//obsproject.com)
- [SimpleScreenRecorder](//www.maartenbaert.be/simplescreenrecorder/)
- [vokoscreenNG](//linuxecke.volkoh.de/vokoscreen/vokoscreen.html)
- [peek](//github.com/phw/peek)
- [ffmpeg](//trac.ffmpeg.org/wiki/Capture/Desktop)
If you decide to use OBS, please make sure to verify the window-capture
options. Most notably, there is a “Swap red and blue” option that is
necessary for some setups, and it's easy to miss it.
You might find the following free software programs useful for editing
your video recordings:
- [Kdenlive](//kdenlive.org/en/)
- [Blender](//www.blender.org)
- [Pitivi](http://www.pitivi.org)
Per GNU Project’s [Guide to
Formats](//audio-video.gnu.org/docs/formatguide.html), we prefer to
receive prerecorded videos in formats unencumbered by software patents,
such as `video/webm` ([WebM](https://www.webmproject.org/)-encoded video
files, with `.webm` file extension) and `video/ogg` (video files encoded
with the Theora video codec, encapsulated in an Ogg transport layer,
with `.ogg` or `.ogv` file extension). However, if for one reason or
another you are unable to send us your prerecorded video in one of the
above formats, you may submit them in other common formats, like MPEG-4
(`.mp4`), and we will convert them to our preferred formats on your
behalf.
*Prepare recorded video in 720p (1280px by 720px) or higher, in the
WebM format if possible.*
### Audio quality
Audio quality can go a long way in making your talk enjoyable to
watch. Consider the background noise in the room that you are using to
record, and see if you can temporarily turn off things for your
recording. Start by recording a separate video with at least **5
seconds of quiet** in the same room in which you plan to do your main
recording. You can listen to it to see how quiet things are, and
figure out if there are other things you can turn off such as fans or
other computers. When you upload your talk, you can also include your
latest silence recording so that we can use it to reduce noise in your
video.
If you have an **external microphone or a headset**, try
recording the audio through that so that you can reduce the sound of
the computer itself. If you have a smartphone, that might also be a
good way to record audio that you can then combine with your video
afterwards. Some people find that draping a blanket over their head
(including the microphone under the blanket) can help reduce echo,
which can be a good excuse to make a blanket fort. (It's for
EmacsConf!)
Many speakers prefer to record and edit the audio until they're happy
with how it fits in the time, and then add the slides or videos
afterwards. It might be easier than trying to do both the audio and
the video in one go.
### Appearance
The talks will be broadcast with a resolution of **1280x720px**
(720p), so it may help to switch to that size before you record.
Please make sure your text will be easy to read.
[You can change the font-size in your Emacs.](https://www.emacswiki.org/emacs/SetFonts#h5o-6)
(Maybe `M-x customize-face default` and set the height to 150?) If you
are capturing a single window, you can also resize it before you
record.
We recommend using **dark text on a light background** for your
recording, as this can be easier to see especially for people who are
visually impaired. Themes with more contrast are easier to read than
low-contrast ones. If you use a dark theme with your Emacs, you can
change to a lighter one with `M-x customize-theme` (look for those
with a `-light` suffix). The `modus-themes-load-operandi` command from
the `modus-themes` package can be a good option.
# Compression
If you would like to compress your video before uploading, the following shell script may be useful:
Q=32
CPU=8
ffmpeg -y -i "$1" -c:v libvpx-vp9 -b:v 0 -crf $Q -an -row-mt 1 -tile-columns 2 -tile-rows 2 -cpu-used $CPU -g 240 -pass 1 -f webm -threads $CPU /dev/null &&
ffmpeg -y -i "$1" -c:v libvpx-vp9 -b:v 0 -crf $Q -c:a libopus -row-mt 1 -tile-columns 2 -tile-rows 2 -cpu-used $CPU -pass 2 -g 240 -threads $CPU "$2"
If you put it in a file called `compress-video.sh`, you can execute it
from the command line with something like `sh compress-video.sh
input-file.webm output-file.webm`. It will compress the file in two
passes. During the first pass, the frame count will increase, but the
speed will be 0. After the first pass, it will display proper progress
information.
<a name="tech-check"></a>
# Tech-check
We ask that speakers who plan to participate in live Q&A sessions schedule
a short tech-check in the weeks leading to the conference; this is to ensure
that you can perform all the common tasks you’d need such as sharing your
screen or toggling your microphone.
We use BigBlueButton for our video-conferencing needs, and a quick way
to familiarize yourself with it is to run it in a test room:
<https://test.bigbluebutton.org/> Tiling window managers and
multi-monitor setups can be a little tricky, so it's good to figure
out a setup that works for you. If there are things you'd like to
confirm by having another person in the meeting, such as audio
quality, please feel free to get in touch with us and we’ll sort
things out together.
Thank you so much for helping with EmacsConf 2023!
# Frequently-asked questions
## Can I present live?
Tech issues kept happening during EmacsConf 2023, so we’d really
prefer that all talks have prerecorded videos. There will be time for
live questions and answers, though, so if you can record a short video
covering your main points, you might be able to go into more detail in
live Q&A.
## I have so much I want to share. Can I record a longer video?
The conference program has so many interesting talks. We wish we
could fit everything in at full length! (Maybe EmacsConf month?)
Please think of your video as a short teaser that can get people
interested and point them to where they can find out more. You can
email <emacsconf-submit@gnu.org> links and other notes to add to the
wiki page for your talk. If you’d like to record a longer video *in
addition* to the short one for the main conference, please feel free
to send us that too.
Additionally, even though it is tempting, please refrain from speaking
super quickly or fast-forwarding your recording to make it fit within
the format. Trimming out the silences and the filler words can help
sometimes, but a better solution for you might be to condense your
talk to the essentials, then write, record, and edit your voice-over.
Once you've figured out how to use the time, you can record your video
to go along with it. Don't sweat being a few minutes over or under,
that's cool.
Feel free to send some questions for the host to ask you during the
Q&A so that you can address extra points that didn't make it into the
video.
## I can’t figure out how to record the video. Can I just present the talk?
We might be able to help you record your talk using the BigBlueButton
web conferencing system before the conference. Please email
<emacsconf-submit@gnu.org> with some times that might work for you and
we’ll see if a volunteer can meet up with you to record it.
## Do I need to follow some visual guidelines for the presentation?
- Dark text on a light background is more legible than the opposite
(especially for people who are visually impaired), and more contrast
is better than a low-contrast theme. This stands for both your
slides and your Emacs theme.
- If you think your fonts might be too small in your slides or in Emacs,
they might very well be. [You can change the font-size in your
Emacs](https://www.emacswiki.org/emacs/SetFonts#h5o-6), but you can
also play with the size of the captured window during your recording.
- Try to minimize the screen-flashes that occur when you switch between
windows, especially if their themes do not cohere (light-to-dark and
the reverse). If you can edit your recording, fades and other
transitions are a neat solution to this problem.
## How do I show my keystrokes on screen?
In Emacs, you can use
[interaction-log.el](https://github.com/michael-heerdegen/interaction-log.el)
(in MELPA) to display the keystrokes and the commands they run in a separate
buffer. For a system-wide solution, you can look into
[screenkey](https://gitlab.com/screenkey/screenkey).
## I’m not used to talking to myself. Can I present the talk to someone?
We might be able to help you record your talk using the BigBlueButton
web conferencing system before the conference. Please email
<emacsconf-submit@gnu.org> with some times that might work for you and
we’ll see if a volunteer can meet up with you to record it.
## Can I see the other proposed talks?
Once we’ve emailed the speakers about their acceptance, we’ll put
up the talk wiki pages. That way, you can see what else is going on
in the conference and maybe coordinate with other speakers in order to
minimize overlap and maximize awesomeness.
## What if there are lots of great questions during Q&A and it's already time for the next talk?
The stream will move on to the next talk, but people can join the
BigBlueButton meeting room and keep chatting with you for as long as
you want to keep going. You can also continue answering questions on
the collaborative pad or IRC, and we’ll copy questions and answers
onto the wiki page afterwards so that you can answer them in your own
time after the event.
## More questions?
Please email <emacsconf-submit@gnu.org>. We’d love to hear from you.
Thanks for contributing to EmacsConf 2023!
<!-- <a name="tech-checklist"></a> -->
<!-- #### Tech checklist -->
<!-- - Can you speak and be heard? Is there echo? -->
<!-- - Can you hear the organizer? -->
<!-- - Can you share your screen? Is the screen readable? -->
<!-- - If you plan to show your keystrokes, is that display visible? -->
<!-- - If you want to share your webcam (optional), can you enable it? Is it visible? Will there likely be distractions in the background? -->
<!-- - Can you view the collaborative pad? Will you be comfortable reviewing questions on your own (perhaps by keeping it open beside your shared window), or will you need a volunteer to relay questions to you? -->
<!-- - Can you share contact information (ex: phone number) so that we can get in touch with you in case of technical issues or scheduling changes? -->
<!-- - Do you need help finding your way around IRC so that you can check into `#emacsconf-org`? What is your IRC nickname? -->