Blog | Choosing the Right Bitrate for Your OBS Live Stream

The OBS logo!

Open Broadcast Software (OBS) is an incredibly powerful tool for live streaming video with a bit of a learning curve up front. Once you’ve got your live streaming running, you may discover you want to optimize it. Today I’ll walk you through how to choose the right bitrate for your OBS live stream

Before We Get Started — Set up OBS!

This section is for readers who want to create a high quality live stream with OBS, but haven’t yet set it up. Here is how to set OBS for live streaming with api.video:

Live Stream with OBS and api.video

What is Video Bitrate?

Video bitrate is how much data for your live stream is transferred within a second. If you say bps, you’re saying bits-per-second. Mbps is megabits-per-second. If you say kbps, it’s kilobits-per-second. One bit is the smallest unit of data you can have. Bitrate is how you measure the speed of uploads and downloads of your video. Bitrate is important because it’s tied to video quality. You can capture live video with high resolution and frame rate and your viewer might never receive it in that condition. The reason why would be due to the bitrate and also, the bandwidth.

Bandwidth limits what bitrate you can upload at, and it represents the capacity your viewers have when they download your video. So when you’re wondering how your live stream is sent and delivered, you’ll need to think about video bitrate, and whether the bandwidth allows you to transfer at the bitrate you want to use. HLS is used for streaming because it dynamically adapts to provide the best possible video quality in any situation. If a viewer has slow internet, HLS will deliver content at a lower resolution. This is good because the viewer can continue watching smoothly, but not so good in terms of their experience of video quality. Sometimes it might be all that can be done given the constraints for bitrate. api.video lets you stream with HLS in part because of HLS’s adaptive abilities.

What is Framerate?

Frame rate is how many frames occur per second (fps). So bitrate will determine the size of the video file you’re streaming, that’s about data. Frame rate is about how many images appear per second. Here are a few popular fps:

  • Netflix streams videos at 23.976 frames per second, but offers tests for 59.940 frames per second.
  • The United States streams at 24 or 29.97 fps most of the time.
  • Europe usually streams at 25 fps.

What is Sample Rate and Audio Bitrate?

I’m adding this one in because when you live stream, usually you don’t just stream video, you stream audio. Most of the time, a good sample rate for digital audio is 44.1 kHz. Changing it is less straightforward than it is for bitrate. If you’re just starting out, use 44.1kHz. A sample rate of 44.1kHz means that every second of video contains 44,100 individual samples. A sample is a snapshot of audio. The quality of a digital signal is determined by the sampling rate or the bitrate that the signal is sampled at. 44.1kHz is popular to use because it ensures reproduction of all frequencies below 22.05kHz. Most people can hear between 20–22kHz (with 22kHz being fairly rare).

If you’re setting audio bitrate, most of the time you don’t need to go above 192kbps if it’s combined with a decent encoder like Ogg, MP3, AAC, or FLAC. (On video files, you’ll often see AAC, so you should be fine.) If you do go higher, you will definitely increase audio quality, it’s just that for many people, they won’t notice this added quality and it’s more efficient for transfer to keep your audio bitrate at around 192kbps.

Is There an Easy Way to Do This?

Yes. When you set up your live stream the first time, just accept the default settings. These will probably work. If you don’t like the quality or encounter other issues, the first simple solution is to make sure everything is well lit. If you’ve done this, and you still don’t like the streaming quality, then it’s time to get a bit more involved.

Test Your Upload Speed

The quality of a live stream can only be as high as the quality it was ingested at. You should test your upload speed to find out what your system is capable of sending. To do that, you can use a site like Speedtest by Ookla . Navigate to the page and press the giant GO button. You’ll receive two stats:

  • Download Mbps — How quickly you can download something to your system
  • Upload Mbps — How quickly you can upload something from your system

This will tell you your bitrate in megabytes-per-second. With this information, you’ll be able to make a good choice for your live stream.

If you weren’t able to conduct the speedtest, you can troubleshoot the issue. Usually you’re unable to connect because:

  • Your router rules are too restrictive, and the speedtest is blocked from reaching your system.
  • You have a firewall in place to prevent the speedtest from working.

You can disable your firewall or change your router settings for the test. You may need to keep things in that state to live stream as well, but that’s a different article!

And the Resolution is…

Important. You need to decide what resolution you would like to stream at. Based on the upload speed, you’ll have an idea of what’s manageable and what’s not. Remember, you can’t deliver video that’s higher resolution than what you upload. The standard resolution to use is 720p or 1080p. It’s recommended that you start by getting the hang of streaming 720p before anything else. Almost everywhere can handle a 720p stream.

Choose Framerate, Bitrate and Audio Bitrate

Now that you’ve sorted out bitrate and resolution, it’s at last time to choose everything in OBS. This can get tricky. First, it depends on what platform you’re going to stream to. Facebook, YouTube, and Twitch have their own suggestions and you can check their documentation for more details. For api.video, our recommendations are:

1080p -

  • Framerate: 25–30 fps
  • Bitrate: 3000–6000 Kbps
  • Audio Sample Rate: 44.1kHz
  • Audio Bitrate: 128–192Kbps

1080p -

  • Framerate: 60 fps
  • Bitrate: 4500–9000 Kbps
  • Audio Sample Rate: 44.1kHz
  • Audio Bitrate: 128–192Kbps

720p -

  • Framerate: 25–30 fps
  • Bitrate: 1500–4000 Kbps
  • Audio Sample Rate: 44.1kHz
  • Audio Bitrate: 128–192Kbps

720p -

  • Framerate: 60 fps
  • Bitrate: 2250–6000 Kbps
  • Audio Sample Rate: 44.1kHz
  • Audio Bitrate: 128–192Kbps

480p -

  • Framerate: 25–30 fps
  • Bitrate: 500–2000 Kbps
  • Audio Sample Rate: 44.1kHz
  • Audio Bitrate: 128–192Kbps

360p -

  • Framerate: 25–30 fps
  • Bitrate: 400–1000 Kbps
  • Audio Sample Rate: 44.1kHz
  • Audio Bitrate: 128–192Kbps

240p -

  • Framerate: 25–30 fps
  • Bitrate: 300–700 Kbps
  • Audio Sample Rate: 44.1kHz
  • Audio Bitrate: 128–192Kbps

Where Do I Change the Settings?

To change your settings in OBS, start it up, and then:

  1. Under the Controls section, click Settings. A panel with settings choices opens.
  2. From the left menu, click Output. The Output panel opens in Simple mode.
  3. In the Streaming section, you can choose Video Bitrate and Audio Bitrate. Review the chart provided in the last section and set everything to match your selection. api.video recommends setting up for the 720p option to get started. Make sure you also have your video at 720p quality.

If your system has trouble maintaining consistent streaming output, you can try this:

  1. On the Settings panel, change Output Mode to Advanced.
  2. Change Rate Control to VBR. CBR means consistent bitrate. It’s often faster. However sometimes, your system isn’t outputing at a consistent bitrate. VBR means variable bitrate. This adjusts as needed during video processing. This is slower, but it can sometimes solve problems where your output fps or bitrate doesn’t match your settings.
  3. If you want to give this a try, after you’ve made the changes, click OK.

You can go back and change the settings for your live stream at any time. To help you remember the settings as they were, consider taking screenshots before making changes. That way if you break something, or make a change that results in a bad live stream, you can change it back.

Play around with the settings and check out your live stream. Does it look smooth? High quality? Is the sound the way you want it to be? In the beginning, rely on your own judgment to decide what needs to be changed. The basic rule is that higher bitrate is harder to send and deliver, but will be higher quality. Higher fps will be smoother, but can be harder on the CPU. Lower fps is easier to process and so is lower bitrate, but lower bitrate can make everything look choppy. See what the best combination for your system is, and try viewing your output to get a sense of what your viewers’ experience will be.

Happy Live Streaming!

Originally published at https://api.video.

Developer Advocate, Writer, and Comedian

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store