You bought or commissioned a beautiful animated Starting Soon screen. You drag the file into OBS Studio, hit go, and immediately something is wrong. The animation stutters. Your encoder spikes. The loop has a visible jump every 30 seconds. The frame rate drops every time the scene becomes active. Or, on the worst end, OBS just crashes when you switch scenes.

Almost every one of those problems comes from the same handful of misconfigured settings, and none of them require new hardware to fix. This guide walks you through the exact OBS settings we ship with every commissioned scene to make sure it plays back at full quality with no lag, no stutter, and no broken loop. Tested on Windows 10/11, macOS 12 (Monterey) and later, and Linux with OBS Studio 31 and later (32.x is current as of this writing).

In this guide
  1. Before you start: file format and specs
  2. Step-by-step: add the media source
  3. Hardware decoding (the single biggest performance setting)
  4. Scene transitions and "restart playback"
  5. Audio handling and music layering
  6. Performance: encoder settings that matter
  7. Troubleshooting common problems
  8. Advanced: VLC source vs Media source
  9. Frequently asked questions

Before you start: file format and specs

The settings inside OBS only work if the file you are loading is built correctly in the first place. If you are commissioning custom work, the file you receive should already be configured to these specs. If you are using a template pack or rendering your own from After Effects or Blender, double-check before you blame OBS:

If the file does not match those specs, no amount of OBS configuration will fix it. We have a separate guide on Starting Soon screen sizing and specifications if you need the long version.

Step-by-step: add the media source

OBS gives you two ways to load a video file: Media Source and VLC Video Source. For 99% of stream scenes you want Media Source. It is built into OBS, hardware-accelerated, and supports both MP4 and WebM natively. Use VLC Source only for the rare cases covered in the Advanced section.

Step 1

Open the scene where the screen will live

In OBS, select the scene you want to use the animated screen in. Most streamers create a dedicated scene for each transitional moment, named like "Starting Soon", "BRB", "Be Right Back" or "Ending". You should already have these scenes set up before adding sources.

Step 2

Add a Media Source

In the Sources panel at the bottom of the OBS window, click the plus icon and choose Media Source from the menu. Give it a clear name (for example, "Starting Soon Loop") and click OK.

Step 3

Browse to your file

In the Properties window that appears, leave Local File ticked and click Browse to navigate to your animated screen file. Pick the MP4 or WebM. If you move the file later, OBS will show a "Some files are missing" warning on launch - re-point the path via Source Properties or use Scene Collection > Check for Missing Files to fix it.

Step 4

Tick the Loop checkbox

Crucial. Without this enabled, OBS will play the file once and then either hide the source or freeze on the last frame, depending on the "Show nothing when playback ends" setting in the same properties panel. With Loop enabled, OBS plays the file in a continuous loop with no visible cut as long as the file itself was rendered as a seamless loop.

Step 5

Decide on Restart playback when source becomes active

This setting determines whether the loop restarts every time you switch to the scene, or keeps playing continuously in the background. There is no universally right answer, but here is the rule we use:

Step 6

Enable hardware decoding

Tick Use hardware decoding when available. This is the single most important performance setting, covered in detail in the next section.

Step 7

Click OK and position the source

Close the Properties window. Your scene should now show the animated screen. If it does not fill the canvas exactly, right-click the source and choose Transform > Fit to screen (or press Ctrl+F). Lock the source by clicking the padlock icon next to its name to prevent accidental drag-resizing during a stream.

Hardware decoding: the single biggest performance setting

The single most common cause of "OBS lags when I switch to my Starting Soon screen" is the source playing back through CPU decoding instead of GPU decoding. By default in some older OBS builds, hardware decoding is off. Switching it on offloads the entire video playback workload from your CPU to your GPU, freeing up CPU cycles for the encoder.

To enable it: right-click the Media Source, choose Properties, and tick Use hardware decoding when available. That is it. The performance difference is immediate and significant.

Why this matters

Modern GPUs have dedicated H.264 and H.265 decode hardware that handles 1080p60 video playback at essentially zero cost. The CPU, by contrast, has to use software decode loops that compete with the encoder. On a single-PC streaming setup running x264 software encoding, hardware video decode can mean the difference between dropped frames and a clean stream.

The one caveat: WebM with VP9 transparency is decoded in software on virtually every consumer GPU. VP9 alpha is encoded as a secondary stream that hardware decoders cannot handle, so the hardware-decoding checkbox effectively does nothing for these clips - they will run on your CPU regardless. On lighter CPUs this can cost real performance, so prefer a smaller canvas or shorter loop for transparent WebM screens, or use opaque MP4 H.264 where transparency is not actually needed.

Scene transitions and "restart playback"

How a Media Source behaves during a scene change is one of the parts of OBS that confuses streamers most. The behaviour depends on three settings working together:

SettingEffect
Restart playback when source becomes activeIf on, the file restarts from frame 1 every time you cut to the scene
LoopIf on, the file restarts from frame 1 when it reaches the end (regardless of scene activity)
Show active source when scene becomes activeOBS-wide setting that affects whether sources reset on scene change

The combination most streamers want for a Starting Soon screen with a dramatic intro is: Restart playback ON, Loop ON. The screen restarts from the beginning every time you cut to it (so viewers always see the dramatic opening), and it loops continuously while the scene is active.

For a continuous ambient BRB or Intermission scene, the combination is usually: Restart playback OFF, Loop ON. The screen plays continuously in the background, so when you cut away and come back, it picks up where it left off rather than restarting the same intro.

Audio handling and music layering

Audio handling for animated stream screens deserves a careful approach. The right setup separates two different kinds of audio: sound effects that are part of the animation (a riser into a logo reveal, a glitch hit on a transition, ambient room tone), and background music that plays underneath. The first belongs in the video file; the second does not.

Our standard recommendation, covered in detail in our Starting Soon screen sizing guide, is to embed sound design directly in the MP4 if it is timed to the animation, but keep background music as a separate OBS audio source. This gives you frame-perfect SFX timing while still letting you swap, mute or replace music without re-rendering anything. If you are working with a file that has full music baked in and cannot get a cleaner version:

Watch out for this

If you bake a full music track into a 3D background video, the video usually needs to run as long as the song - often three or four minutes - before it can loop cleanly. Strong PCs can handle that, but it increases file size and makes the source heavier than it needs to be. A cleaner workflow is to keep only timed SFX and sound design inside the looping video, then run music as a separate OBS audio source. That keeps the video file smaller and lets you change the music track whenever you want, even from one stream to the next.

Performance: encoder settings that matter

If your OBS still drops frames after enabling hardware decoding, the bottleneck is probably the encoder rather than the source. The animated screen pushes the encoder harder than a static image because every frame is different, which means more data to compress.

The settings most likely to help:

Troubleshooting common problems

The animation stutters or skips frames

Almost always hardware decoding being off, or the file's bitrate being too high for your storage to deliver in real time. First fix: enable hardware decoding (Step 6 above). Second fix: if your file is on a slow external drive, copy it to your fastest internal SSD.

I see a black frame when the loop restarts

The Loop checkbox is off, OR the file was not rendered as a seamless loop in the first place. Check the source properties first. If Loop is on and you still see a black frame at the loop point, the file itself has the issue, not OBS.

The file plays once and then stops

Loop checkbox is off. Tick it. This is the most common new-streamer issue.

The screen looks soft or pixelated

Resolution mismatch. If your file is 1920x1080 but your OBS canvas is 1280x720, OBS is downscaling and losing detail. If your file is 1280x720 but your canvas is 1920x1080, OBS is upscaling and softening the image. Match them.

The encoder spikes when I cut to the scene

Hardware decoding off, OR the file uses a codec your GPU does not have hardware decode for (rare with H.264, more common with HEVC and VP9 alpha). Try enabling hardware decoding first. If that does not fix it, request a different file format from whoever made the screen.

OBS crashes when I switch to the scene

Almost always a corrupt file or a codec OBS cannot handle. Open the file directly in VLC media player to verify it plays cleanly there. If VLC crashes too, the file is corrupt. If VLC plays it fine but OBS crashes, switch to using a VLC Video Source instead of Media Source for that file.

Advanced: VLC source vs Media source

OBS's built-in Media Source handles 99% of cases cleanly. The VLC Video Source exists for the remaining 1%. Use VLC Source if:

VLC Source uses VLC's own decoder rather than OBS's built-in decoder, which is more permissive about unusual files but also less efficient on hardware decoding for standard formats. For a clean MP4 or WebM, Media Source is always the better choice.

Frequently asked questions

Why does my Starting Soon loop play smoothly until I start streaming, then stutter?

The encoder is competing with the decoder for CPU cycles. Enabling hardware decoding on the Media Source and switching to a hardware encoder (NVENC, AMF, Intel QSV or Apple VideoToolbox) almost always solves this.

Can I use the same animated screen file across multiple scenes?

Yes. Add the same Media Source to each scene that needs it. To save memory, OBS lets you reference the same source from multiple scenes via Add Existing rather than creating duplicates.

What is the maximum file size OBS can handle?

There is no documented hard cap. The real bottleneck is bitrate and codec complexity, not byte count - users routinely run multi-GB files without issue. The practical advice is to re-encode to H.264 at a sensible bitrate (8 to 15 Mbps for 1080p) rather than worrying about file size in megabytes. If your file is significantly over 100 MB for a 60-second loop, the bitrate is probably higher than it needs to be.

Will animated screens hurt my CPU usage during gameplay?

By default, no - but not for the reason most streamers think. OBS does not automatically stop decoding sources in inactive scenes. To free the decoder when your Starting Soon or BRB clip is not on Program, enable Close file when inactive in the Media Source properties (it ships off by default). Combined with hardware decoding, this minimises load when the source is hidden behind your gameplay scene. Without it enabled, the source keeps decoding silently in the background even when you have cut away.

Does this guide work for Streamlabs Desktop too?

Mostly yes. Streamlabs Desktop is a fork of OBS with different UI. The Media Source settings are functionally identical, just laid out differently. The same hardware-decoding rule applies.

The takeaway

Most "OBS lags my animated stream screen" problems come from three settings: hardware decoding off, the wrong loop configuration, or a file that does not match your stream output specs. Fix those three and 95% of playback issues disappear. The remaining 5% are usually the file itself, not OBS, which is why getting the source file right (correct format, correct resolution, correct bitrate, seamless loop, no embedded audio) matters more than any OBS configuration.

If you are commissioning custom work, ask up front whether the deliverables are configured for OBS playback specifically. Anyone who works with streamers regularly should ship files that drop in cleanly with default Media Source settings. If you are wrestling with playback issues even after following this guide, the file is fighting you, and the answer is a better source file rather than more OBS tweaking.