Skip to content
streamneo.
Setup Guides10 min read

OBS Studio 30 Media Source Settings for Looping YouTube Videos

Learn when to use OBS Media Source or Browser Source, how to loop a local file or YouTube embed, and what to test before going live.

sn.
StreamNeoPublished 4 October 2026
Worth sharing?

To loop a video in OBS, first decide whether it is a local file or a YouTube video embedded as a webpage. Use Media Source and its Loop setting for a local file; use Browser Source with YouTube’s embed loop parameters for a YouTube-hosted video.

These are different playback paths, so there is no single YouTube-specific loop switch in Media Source. The OBS documentation describes the relevant controls, but does not establish that the names or defaults are specific to Studio 30.

First decide what is being looped

A video playing inside OBS can come from a file on your computer, or from a webpage containing a YouTube player. The image may look similar in the preview, but OBS handles the two sources differently. A local file is read by Media Source; a YouTube player is displayed through Browser Source.

This distinction matters if your goal is to show an existing YouTube video during a live broadcast. Pasting a regular YouTube watch-page address into a Media Source file field will not turn it into a local video. Conversely, if you have downloaded or exported a video file that you are entitled to use, you do not need to embed YouTube just to repeat that file in a scene.

For a local file, the repeat behaviour belongs to the OBS source properties. For a YouTube embed, repeat behaviour belongs to the embedded player URL. Start by choosing which one you intend to operate, then use the matching setup below.

What you want to play OBS source Where repeat is set Suited to
Video file stored on your computer Media Source The source’s Loop property A prepared local clip or background video
Video hosted on YouTube Browser Source YouTube embed URL parameters Showing the YouTube player within your scene

A long-running broadcast also needs a decision about what happens when playback fails, the source is hidden, or the scene changes. A loop setting only addresses repeat behaviour at the end of playback. It does not by itself make a whole live channel resilient overnight. For practical file preparation, see how to avoid FFmpeg concat errors when combining videos.

Loop a local file with Media Source

In the scene where the file should appear, add a Media Source from the Sources list. Choose the option to create a source, give it a useful name such as “Background video”, and select the file on your computer. OBS documents Media Source for local audio and video files, including common formats such as MP4, MOV, MKV, AVI and WebM. If your file is in an unsupported format or has an unusual codec, test it in OBS before building the rest of the scene around it.

Open the source properties and enable Loop. That setting makes the file start again after playback completes. The OBS Media Sources documentation describes this control, but its page is not a Studio 30-specific reference, so treat it as documented OBS behaviour rather than a confirmed version-specific guarantee. The current reference is the OBS Media Sources guide.

A separate property, Restart playback when source becomes active, controls what happens when the source becomes active and visible. It is not the same as Loop. With restart enabled, making the source active can cause playback to begin again from the start; Loop governs what happens after the file reaches its end. If a video restarts when you switch back to its scene, inspect this setting before assuming the loop itself is broken.

For example, suppose you have a ten-minute devotional background clip in a scene that you briefly leave to show a notice. Loop repeats the clip at the end. Restart playback when source becomes active may make it begin from the start when you return, depending on how the source and scene are used. Choose between those behaviours intentionally: continuous progress and a fresh opening image are different requirements.

Use a file path that will remain valid whenever OBS runs. A clip on a removable drive, a temporary downloads folder, or a network location that disconnects can disappear after a restart. If the source shows black or reports that media cannot be loaded, verify the selected path and open the file separately before changing loop settings.

Set up a YouTube embed in Browser Source

If you want the YouTube-hosted video player itself in your scene, add a Browser Source. OBS describes Browser Source as loading webpage content, with a URL property when the Local file option is off. That makes it the built-in source suited to displaying an embedded YouTube player. See the OBS Browser Source documentation for the source properties.

Use an embed address, not the ordinary watch-page URL. The general form is https://www.youtube.com/embed/VIDEO_ID, with VIDEO_ID replaced by the identifier in the video’s YouTube address. For instance, if a watch address ends in v=AbCdEf12345, the ID is AbCdEf12345. Use the actual ID for your video; the example is only a pattern.

In Browser Source properties, enter the full embed URL. Set the source width and height to match the intended layout, then position and size it in the scene. A browser page can include controls and page behaviour that differ from a plain video file, so check how the embedded player appears at the output size rather than relying only on a small preview.

There is a trade-off. An embed keeps playback associated with YouTube’s player, whereas a local file gives OBS direct access to the media file. An embed relies on the player loading and being permitted to play in the browser context. A local file avoids loading a webpage but depends on the file remaining available and decoding correctly. Neither choice is inherently right for every channel.

Add the parameters for one-video looping

For one video to repeat in a YouTube embed, Google’s player instructions specify two parameters: loop=1 and playlist set to the same video ID. The URL pattern is:

https://www.youtube.com/embed/VIDEO_ID?playlist=VIDEO_ID&loop=1

Replace both instances of VIDEO_ID with the same identifier. The playlist parameter is needed even though the intent is to repeat one video; for this use, its value is that video’s own ID. Google documents the player parameters in its YouTube embedded player documentation.

A common error is to add only loop=1. For a single-video embed, the matching playlist parameter is part of the documented configuration. Another is to put a different ID in the playlist field. Check the finished URL character by character if the player loads but does not repeat as expected.

You can also encounter an autoplay=1 parameter. Autoplay requests playback when the player loads; it is separate from looping. Google notes that autoplay results in playback data collection and sharing when the page loads, so consider that before enabling it. A loop parameter cannot force playback to begin if autoplay is blocked or the user must interact with the player.

Treat the parameters as a request to the embedded YouTube player, not as a guarantee that every video, account, or playback context behaves identically. Test the actual video in the scene and intended output. If the goal is simply an uninterrupted visual background and you have a suitable local file, Media Source may be simpler to diagnose.

Check version and source behaviour

The title refers to OBS Studio 30, but the cited OBS knowledge-base pages do not identify these property names or defaults as verified specifically for that release. Do not infer that a control is unique to version 30 just because the setup is being performed in Studio 30. Confirm what your installed build presents in its own source properties, and compare it with the current OBS documentation if labels differ.

The Media Sources reference documents Loop as off by default and Restart playback when source becomes active as on by default. Because the page is not tagged as a Studio 30 specification, do not rely on those defaults without checking your build. The important distinction is functional: Loop repeats after completion; restart-on-activation concerns what happens when a source becomes active and visible.

Browser Source is also a separate source type, not a special Media Source mode. If you do not see the expected properties, confirm that you added Browser Source rather than Media Source, and that you are editing the correct source in the correct scene. OBS’s Sources Guide explains the source list and the visibility controls.

Visibility can be easy to overlook. The eye control in the Sources list hides or shows a source. A hidden source may not behave as you expect when testing playback, and multiple sources can overlap in the scene. Give sources clear names and temporarily hide other layers when diagnosing a loop.

Test playback in the scene

Test the complete source in the scene before using it for a long broadcast. For a local file, let it reach the end once and confirm that it begins again. If it starts at the beginning when you switch scenes, note whether that is the intended activation behaviour. For an embed, check that the player loads, starts when expected, and repeats after the video ends.

Watch the output, not just the source properties. Confirm that the video is visible at the intended size, that other layers do not cover it, and that changing scenes does not leave a blank area. If you use sound, listen across the boundary between repetitions. A video can repeat correctly while its audio begins with a gap, a click, or a cut that is noticeable to viewers.

For a local file, test after closing and reopening OBS if the channel depends on a repeatable start-up process. This helps catch a missing file path or a source that behaves differently once the scene is activated again. Keep a stable copy of the file, and avoid renaming or moving it after you configure the source.

For a Browser Source, allow enough time for the webpage and player to load in the intended environment. If a loop appears not to work, check that the URL uses the embed path, that loop=1 is present, and that the playlist value matches the ID. If playback does not begin, distinguish that from a loop failure: autoplay, player restrictions, or a need for interaction can affect the initial start independently.

A scene that plays correctly for a short check may still not suit an all-night workflow. For a 24/7 channel, consider what you will do if the computer sleeps, OBS closes, the network drops, or the source cannot be read after a restart. The spare computer versus VPS comparison for a YouTube loop stream in India can help frame the operating trade-offs. If you want a prepared file to repeat without leaving your own computer running, StreamNeo removes the need to keep OBS open on that computer for the file-based broadcast, while you still need to prepare the media and YouTube channel correctly.

If the content is a playlist rather than one video, do not assume a single-video embed loop will provide queue management. A playlist has its own ordering and end-of-queue behaviour; decide whether you need a fixed video repeated or a rotation of multiple items. For a local compilation, join the clips into a file and test the transition, or review how to prevent silence between songs in a 24/7 YouTube radio stream.

Before committing, compare the operating options on the pricing page. When the file and channel are ready, start free — 24-hour trial, no card.

FAQ

Is there a YouTube Loop checkbox in OBS Media Source?

Media Source is for local media files, and its Loop property repeats a file when playback ends. For a YouTube-hosted video, use Browser Source with an embedded player URL and the documented loop parameters instead.

Why does loop=1 alone not repeat one embedded video?

Google’s instructions for looping a single video also require the playlist parameter to contain that same video ID. Check that both IDs in the URL match the video you intend to play.

Does Restart playback when source becomes active keep a video looping?

No. That setting concerns restarting playback when the source becomes active and visible. Loop is the setting that repeats a local file after it completes.

Are these controls confirmed as OBS Studio 30 settings?

The cited OBS knowledge-base pages describe the source controls but do not verify them specifically for Studio 30. Check the properties in your installed version and use the current OBS and Google documentation if behaviour or labels differ.

YOU’VE REACHED THE END

Keep the ideas coming.

More guides, useful tools and a little help for your next broadcast.

Back to the journal ↗
YOUR NEXT READ

A little more to explore.

More Setup Guides guides ↗ · All topics ↗