GeekSocket Plug in and be Geekified

How to live stream a meetup event

Due to current situation of COVID-19 pandemic, we (PythonPune) decided to have our March month’s meetup as an online event. Although we live streamed one meetup in September 2019, this time it was a complete virtual event. I always try to use Free Software as much as I can, so we use Jitsi Meet to host/stream our meetups.

Starting a meeting on Jitsi Meet

jitsi-meet and few other services are developed by the Jitsi community which makes video conferencing possible. Let’s see how to start a new meeting on it. Head over to https://meet.jit.si and type a name for your meeting. In our case it was ‘marchpythonpune’. This is one of the jitsi-meet instances which are available to use for free.

Once the meeting starts, add password to the meeting. It can be done by going to info button in the bottom right corner. This will make sure that the only people who are supposed to present/talk during the event can join the meeting.

Jitsi Meet - Setting meeting password

Live streaming from Jitsi to YouTube

Doing live stream using some other platform or method than YouTube requires a lot of bandwidth and infrastructure setup. So we decided sticking to YouTube. Let’s see how to live stream the event from Jitsi Meet to YouTube.

Generating Stream key for YouTube

To start live streaming the event on YouTube, we need to create a stream key. This stream key can be used in different streaming tools to start the live stream.

Make sure you have enabled live streaming by following the instructions given here. This takes 24 hours to get enabled, so make sure you do the setup at least 1 day before the event. Start a live stream by going to ‘YouTube Studio’ and clicking ‘Go live’ button. You can find the ‘YouTube Studio’ under your account panel at top right on YouTube.

YouTube - Go Live button

Select ‘Stream’ tab on the left side. This will open ‘New stream’ popup. Fill in the details like video name, visibility and date of the live stream. Select ‘No, it’s not made for kids’ for the question ‘Is this video made for kids? (required)'. Otherwise, it will disable comments during the live stream.

On the next page, under the ‘Stream Settings’ tab you will find the ‘Stream key’. Take a look at Create a live stream with an encoder for more information.

This will create a new video on your channel. You can share link to this video with your audience prior to the event or during the event.

To start streaming from Jitsi Meet, go to more options in the bottom right. Clicking on ‘Start live stream’ will ask for the stream key, paste the key copied in last step. This will start the live streaming to YouTube.

Jitsi Meet - Start live stream

Now in the ‘YouTube Studio’ page where we got the key, click on ‘Go Live’ button to start the stream on your channel.

YouTube Studio - Live stream

All streamers are currently busy

A day before the meetup, Vishal and I was trying to make sure everything is working fine. After adding the stream key on Jitsi Meet, we got the error ‘All streamers are currently busy'. Vishal had a fairly stable internet connection and around 10 Mbps bandwidth. So we decided to use Open Broadcaster Software (OBS) for streaming the content. As of 14th April 2020, the issue seems to be fixed. If you face similar issue then please follow along for the second way to do the live stream.

Live streaming using OBS Studio

On Fedora, OBS Studio is available as part of RPM Fusion repositories. It can be installed with following command.

sudo dnf install obs-studio

To start streaming, go to ‘Settings’ from ‘Controls’ tab which is in the bottom right corner.

  • Add stream key in ‘Stream’ tab.
  • If you have limited bandwidth, decrease the ‘Video Bitrate’ in ‘Output’ tab. Make sure you don’t put anything less than 1500 Kbps as it will result in poor video quality.
  • In ‘Video’ tab, make sure the ‘Base (Canvas) Resolution’ is set to the resolution which is same as your monitor.
  • ‘Output (Scaled) Resolution’ can be set according to requirements. For events like meetups, setting it to 1280x720 should be fine as well.
  • Under ‘Advanced -> Stream Delay’, enable both the check boxes. Keep the ‘Duration’ as 20s. The delay helps to keep the stream smooth by using the 20s buffer. If your connection is unstable or you have slow internet connection, try increasing the delay.
  • Now save the settings.

To share our display or a particular window over live stream, head over to ‘Sources’ tab. Click on the ‘+’ sign and select ‘Display Capture’. Give some name to the capture, let’s say ‘Monitor 1’ and then select the correct display.

Alternatively, you can also add a ‘Window Capture’. This will just capture a selected window, in our case it will the browser window where Jitsi Meet is open.

If you are getting just a black screen, you will have to switch to Xorg. OBS Studio doesn’t support Wayland as of now. Though there are some plugins for OBS Studio to get screen capture working on Wayland, I haven’t tried any of them yet.

Playing around the user interface of OBS Studio will make you comfortable with it. The system microphone can be muted/unmuted from the ‘Audio Mixer’ tab.

Once you are able to see the screen in OBS Studio and the Audio Mixer is showing the audio levels correctly, we are ready to go. Hit the ‘Start Streaming’ button from ‘Controls’ tab. Check the preview in ‘YouTube Studio’ and hit the ‘Go Live’ button.

OBS Studio - Dashboard

Few suggestions and tips

  • Use two monitors if possible or use ‘Window Capture’.
    This will help you to coordinate other things like replying to comments, checking the stream video.
  • Try to have at most 3 people in the Jitsi Meet room.
    Having more people in one meeting room might cause some issues like no audio etc.
  • Have one more person along with the speaker with you in the meeting.
    During our meetup, I wasn’t able to see the shared screen but Vishal was able to see it (it was visible on YouTube).
  • Note down the questions and relay them to the speaker.
  • If you are expecting to receive reply/questions your audience, wait for at least 30s.
    We have to consider the delay we have specified above.
  • When you are not talking, you will have to mute yourself on Jitsi Meet as well as on OBS.

This is how our setup looked like during the meetup,

Checkout the jitsi-meet project on GitHub. If you want to know more about Jitsi, take a look at the ‘The history of Jitsi, in brief’ section from What is Jitsi? page.

Featured image credits: Logo vector created by freepik - www.freepik.com


Comments

comments powered by Disqus