Skip to content

Most OBS guides online are written for platforms whose players hold 6–30 seconds of video in reserve. BEAM’s low-latency player holds a fraction of a second, so some of those guides’ usual advice (long keyframe intervals, B-frames, variable bitrate) makes your stream look worse here. These are the settings to use instead.

Set these under Settings → Output → Streaming and Audio in OBS. Each one is explained in Why these settings.

Setting Value
Encoder NVENC H.264 (NVIDIA) · AMF H.264 (AMD) · QuickSync H.264 (Intel) · x264 if you have no GPU encoder
Rate control CBR
Bitrate 3000–6000 kbps (see Bitrate)
Keyframe interval 2 seconds
Profile Main
B-frames 0
Preset (NVENC) P5 / Low Latency Quality
Tune (x264) zerolatency
Audio codec AAC-LC
Audio bitrate 160 kbps stereo
Audio sample rate 48 kHz

Pick a bitrate your upload can hold steadily. Use the lower end of the range if your connection is shaky.

Resolution 30 fps 60 fps
720p (1280×720) 2500–3500 kbps 3500–5000 kbps
1080p (1920×1080) 4500–6000 kbps 6000–8000 kbps

BEAM itself accepts any bitrate. Because the player has almost no buffer to smooth over hiccups, CBR at a bitrate you can sustain beats VBR with peaks you can’t.

  1. Get your stream credentials. Open Studio and click Stream Credentials (on a phone, it’s in the Setup tab). The Default tab holds your channel’s credentials in two forms:

    • SRT (Recommended): a Server URL, with no stream key.
    • RTMP: a Server URL and a Stream Key.

    Your stream key is hidden while you’re live. If OBS won’t connect, Reset stream key at the bottom of the same window gives you a new one; resetting while live stops your stream.

  2. Enter them in OBS. Go to Settings → Stream and set Service to Custom.

    • For SRT, paste the SRT Server URL into Server and leave Stream Key empty.
    • For RTMP, paste the RTMP Server URL into Server and the key into Stream Key.
  3. Set the encoder. Go to Settings → Output, set Output Mode to Advanced, and open the Streaming tab. Follow the tab for your graphics card:

    • Encoder: NVIDIA NVENC H.264
    • Rate Control: CBR, then enter your bitrate
    • Keyframe Interval: 2
    • Preset: P5: Slow (Good Quality) or P4: Medium (Default)
    • Tuning: Low Latency
    • Profile: main
    • Expand Advanced and set Max B-frames to 0
  4. Set the audio. In the Audio tab of Settings → Output, set the audio bitrate to 160. In Settings → Audio, set Sample Rate to 48 kHz.

  5. Go live. In Studio, add a stream title and pick a category, then press Start Streaming in OBS. Studio can take up to 10 seconds to show your stream.

Skip this if your stream already looks right. If something looks off later, this is where you find out which setting to change.

A keyframe is a complete picture. Every frame between two keyframes only stores what changed, which is why keyframes are 5–20× bigger than the rest. How often you send one is a balance between bandwidth and resilience.

  • Shorter (1 s): very resilient, but you’re sending big keyframes twice as often, which eats noticeable upload bandwidth.
  • Longer (4–8 s): saves bandwidth on average, but a single upload hiccup near a keyframe can take out several seconds of video. New viewers also have to download more before they catch up to the live moment.

Older guides recommend 4 or 8 seconds because of how older platforms chunk video. BEAM doesn’t need those numbers; 2 seconds is the best balance.

B-frames let your encoder squeeze out a bit more compression by peeking at future frames before finishing the current one. That peek delays the video but not the audio, so the sound for a moment leaves your PC before the matching picture does. On BEAM’s test streams with B-frames on, audio arrived up to 2 seconds ahead of video. Turning them off keeps audio and video in step and takes real delay off what your viewers see.

B-frames also slow down playback on lower-end phones.

VBR lets your encoder use more bandwidth for a moment during busy scenes (explosions, smoke, fast camera movement) to keep the picture sharp. Players with several seconds of buffer absorb that spike. BEAM’s low-latency player has a fraction of a second to work with, so the same spike becomes a stutter for anyone on a slower connection. CBR keeps your upload steady, and the small quality loss on the hardest scenes is far less noticeable than a stutter.

BEAM can play H.264, HEVC, VP9 and AV1, but send H.264. It plays everywhere, every modern GPU encodes it well in hardware, and it gives the most predictable picture at low latency. HEVC has playback hiccups in some browsers, and AV1 encoders are still slow, so both add delay you don’t need.

  • Baseline: safe, but compresses worst. Only worth it if your encoder is unstable.
  • Main: better compression than Baseline, and no B-frames once you turn them off. Pick this.
  • High: turns B-frames on by default. Skip it for live streaming.
  • AAC-LC only. Don’t use AAC-HE, MP3 or Opus: BEAM doesn’t accept them.
  • 160 kbps stereo handles music well, and 128 kbps is enough for talking. Going above 160 doesn’t sound any better and costs you upload.
  • 48 kHz matches every modern audio setup. 44.1 kHz works but doesn’t help.

NVENC, AMF and QuickSync use a dedicated chip on your graphics card, so encoding doesn’t fight your game for CPU time. They’re faster and steadier than software encoding (x264), especially in demanding games, and the picture difference at the same bitrate is small.

No GPU encoder? x264 with zerolatency and a fast preset (veryfast or faster) works fine. Don’t go slower than that for live streaming, or you’ll start dropping frames once the game gets busy.

On NVENC, avoid the Quality and Max Quality presets: they turn on look-ahead, which adds 200–500 ms of encoding delay. Use P5 / Low Latency Quality or P4 / Low Latency Performance instead.

TikTok Live, YouTube Shorts Live and Instagram Live show vertical 9:16 video. If you only stream horizontal 16:9, those platforms letterbox you into a thin strip in the middle of viewers’ phones. Horizontal-only still works everywhere; a vertical output is optional.

BEAM takes your vertical feed on its own stream key, so OBS sends two streams: your usual 16:9 one and a 9:16 one.

  1. Turn on vertical streaming in Studio. Open Stream Credentials, switch to the Vertical tab and click Enable vertical streaming. The tab then shows your vertical SRT and RTMP credentials, separate from your Default ones.

  2. Update OBS to 31.1 or newer. Open Help → Check for Updates in OBS, or download the latest version from obsproject.com.

  3. Install the Aitum Vertical plugin from the OBS forums.

  4. Open the Vertical Canvas dock under View → Docks → Vertical Canvas. It has its own scenes and sources, separate from your main 16:9 setup.

  5. Build a 1080×1920 scene. You can mirror sources from your main canvas (camera, game capture) so they stay in sync, but design the layout for portrait: bigger faces, and on-screen text kept away from the top and bottom, where TikTok, Shorts and Instagram put their buttons. Don’t crop your 1920×1080 canvas; most of a horizontal layout (overlays, alerts, side panels) doesn’t survive the crop.

  6. Point the vertical canvas at your Vertical credentials in Aitum’s settings, and give it the same encoder settings as above: CBR, 2-second keyframes, B-frames off.

  7. Scale the bitrate to the vertical resolution. A phone is right in front of the viewer’s eyes, so a low-bitrate vertical stream looks much worse than a horizontal one at the same bitrate.

    Resolution Bitrate
    1080×1920 at 30 fps 4500–6000 kbps
    720×1280 at 30 fps 2500–3500 kbps
  8. Choose which feed each platform gets. In Studio, open a destination and set its Orientation to Vertical. On YouTube you can also pick Both, which runs two live videos on your channel, one 16:9 and one 9:16; it needs YouTube connected with your account.

You can, but keeping two OBS windows’ audio in sync is hard, both fight over the same encoder hardware, and every scene change has to be clicked twice. Aitum Vertical avoids all of that.

Almost always one of these:

  • The keyframe interval is 4 seconds or more. Set it to 2.
  • B-frames are still on. Set max B-frames to 0, or use zerolatency on x264.
  • Your upload is dropping below your CBR bitrate. Lower the bitrate to one your connection holds steadily.

My delay feels longer than on another platform

Section titled “My delay feels longer than on another platform”
  • Check the encoder isn’t on a Quality or look-ahead preset; those add hundreds of milliseconds.
  • Make sure you’re sending H.264. HEVC and AV1 add delay in some browsers.
  • Make sure OBS audio is at 48 kHz with nothing resampling it along the way.

Vertical viewers watch on a phone held close to their face, so a bitrate that looks fine on a laptop looks pixelated there. Raise the vertical bitrate by about 30% over what you’d use for the same number of pixels horizontally.

Almost always B-frames. The encoder holds the video back while it peeks ahead, but sends the audio straight away, so the sound arrives before the picture. Set B-frames to 0 (or use zerolatency on x264) and the gap goes away.

Copy the credentials from Studio again; for SRT, make sure the Stream Key field in OBS is empty. If it still fails, use Reset stream key in Stream Credentials and enter the new key in OBS.