A frozen OBS preview, a stopped media source, dropped frames and buffering reported by viewers are different symptoms. Start by finding out which one you have; the right fix depends on where playback or delivery is stopping.
For a single prerecorded file, OBS’s Media Source has a Loop setting that controls whether it plays again after reaching the end. Restart-on-activation and the end-of-playback display option do different jobs, so changing either is not a substitute for checking Loop.
Identify what is actually freezing
First, note what you can observe rather than assuming that “the stream froze” identifies the cause. Is the entire OBS interface unresponsive, does only the video in the preview stop, does the media source reach its last frame, or does the OBS preview continue while YouTube viewers see a stall? These clues lead to different checks.
If the OBS controls and preview still respond but one video has stopped, focus on the source’s playback and file. If the preview stutters or the whole interface becomes difficult to use, look at rendering and encoding load. If OBS reports dropped frames, check the connection to the streaming server. If viewers alone report buffering, their playback experience may not indicate a stopped local file or a problem visible in OBS.
Ask one viewer what they saw and when: a still image, a spinning buffer indicator, a brief quality change, or the broadcast disappearing altogether. Compare that account with what OBS shows at the same time. A report such as “the prayer video stopped at the end, but the OBS controls still worked” is more useful than “YouTube froze”.
This distinction matters for an always-on channel. A lofi scene may have a still background by design; a devotional video may naturally pause on a title card; a local news loop might have a playlist transition. Decide whether the observed output is actually wrong before changing several settings at once. For a broader channel setup, the OBS guide to a 24/7 Telugu bhajan stream offers relevant context for organising a continuous broadcast.
Check whether the local media source is still playing
Open the relevant scene and inspect the source that supplies the video. If the source has playback controls, check whether its position advances. A position that moves while the preview looks static suggests a different problem from a source whose position has stopped. If the source has reached the file’s duration, it may simply have completed playback.
For one local file, OBS documents Media Source as the built-in source intended for media files. Confirm that the source points to the expected file and that the file opens and plays outside OBS. If the file fails in another player too, investigate the file itself before rebuilding the scene. If it plays normally elsewhere but not in OBS, record the container and codec information and test with a known-good copy of the same file before drawing conclusions.
A local playback check also helps separate file problems from scene behaviour. If you hide and show the source, watch whether it begins again or resumes from its existing position. That observation is useful later when checking restart-on-activation; it does not establish whether the file is set to loop at its end.
For a sequence of files rather than one repeating video, OBS documents VLC Video as a playlist-capable source. It requires VLC to be installed, and OBS’s documentation says 64-bit OBS requires 64-bit VLC. Check the current OBS Media Sources documentation for the labels and requirements in your installed version. A playlist source is a reasonable branch when your intended output is a schedule of files, but switching source types will not by itself solve an overloaded scene or unstable connection.
Verify the Media Source Loop setting
Select the Media Source, open its properties and confirm that Loop is enabled if you expect the same file to begin again after playback completes. This property answers a specific question: what should happen when this file reaches its end? It is the first setting to verify when the source plays once and then stops.
Test the setting with a short copy of the file, or wait for a natural end if you can do so without disrupting an important broadcast. Observe the transition from the final frame back to the beginning. Do not infer that looping is enabled merely because the source is named “loop” or because the scene has been running for some time; inspect the actual property.
If you use VLC Video for a playlist, inspect Loop Playlist rather than assuming the single-file Media Source property applies. OBS documentation describes Loop Playlist as on by default, but check the value in your own source and version. The difference between repeating one item and repeating a playlist matters: a devotional channel might intend to repeat one long recording, while a station with several programmes might want the whole sequence to start over.
Make one change at a time and keep a note of the original value. If enabling the relevant loop property fixes an end-of-file stop, you have evidence of a source configuration issue. If the preview freezes before the file ends, the loop property is unlikely to explain that timing; continue with local playback and performance checks instead.
Separate looping from restart-on-activation
Restart playback when source becomes active governs what happens when the source becomes active in the scene. It is separate from Loop, which governs replay after the file finishes. Turning on restart-on-activation does not make a file repeat indefinitely, and turning it off does not disable an enabled loop.
This distinction is useful when scenes switch during a continuous broadcast. Suppose a channel alternates a welcome scene and a main video scene. If the video source becomes active again after being hidden, restart-on-activation can affect whether playback begins from the start at that moment. It does not determine what happens at the end of a continuous run of that source.
To test it, use a spare scene or a brief local test. Note the playback position, hide or switch away from the source, then make it active again. Compare the result with the setting’s value. Avoid repeatedly switching a live production scene just to diagnose it: a source configured to restart may visibly jump back to its first frame for viewers.
If your video stops at its end while it remains active, check Loop; do not try to repair that symptom by toggling restart-on-activation. If the video starts from the beginning whenever a scene returns, restart-on-activation is relevant. For an alternative workflow that uses a sequence rather than a single source, see the practical discussion of alternating recordings on a church live stream.
Check what appears at end of playback
OBS’s Show nothing when playback ends setting controls the end state displayed after playback finishes. It does not decide whether a file loops. If a source is not set to repeat, the end-of-playback choice can affect what you see once it has completed, but it cannot turn a one-time playback into a repeating one.
If the preview becomes blank at the file’s end, inspect both properties separately: first confirm whether Loop is enabled, then check the end-of-playback display setting. A blank image at the end is not proof that OBS has crashed. Conversely, a held final frame can look like a freeze even when the file has simply ended and the source is displaying its end state.
Test the end behaviour off air where possible. Use a short media file and observe the final moments, the transition, and what remains on screen. Confirm that the intended output is clear for the viewer: a black frame, nothing, or a repeat transition may each be appropriate in different scenes. Check the current property labels in OBS’s Media Sources documentation, since interface wording can vary across versions.
Distinguish dropped frames from viewer buffering
A source that stops locally, an overloaded OBS render, dropped frames on the way to YouTube, and buffering on an individual viewer’s device are separate branches. OBS’s connection troubleshooting guidance says dropped frames point to an unstable connection to the remote server or difficulty keeping up with the selected bitrate. That is not evidence that a media file’s loop failed. Consult OBS’s stream connection troubleshooting guide when the dropped-frame counter rises.
If the counter remains steady but viewers say they are buffering, do not immediately change the source settings. Viewers may have different connections and devices, and delivery can vary across playback conditions. Ask whether the problem affects one viewer or several and whether they see it at the same time. OBS has separate guidance on stream buffering for the case where viewers buffer without OBS reporting dropped frames.
When the preview itself stutters or OBS reports rendering or encoding lag, simplify the local workload as a diagnostic step. Temporarily remove unnecessary sources, simplify the scene, and consider whether a high-resolution or high-frame-rate output is more than the channel needs. OBS recommends reducing output resolution or frame rate when the system cannot sustain the chosen workload; for example, reducing a failing 60 fps output to 30 fps is a test, not a universal instruction. Lower settings can reduce detail or motion smoothness, so compare the result with what your channel needs.
Encoding is another possible load, but not a universal explanation for a loop issue. A compatible hardware encoder can move some encoding work away from the CPU, though support and image quality differ by platform and encoder generation. Review OBS’s hardware encoding notes before changing encoders, and keep a record of the original option so you can compare output and performance.
A computer that meets OBS’s baseline requirements is not necessarily able to sustain every combination of resolution, frame rate, scene complexity and encoder. OBS makes this limitation explicit in its system requirements guidance. On Windows, OBS also lists running the application as administrator as a quick troubleshooting measure for some GPU overload cases. Treat these as tests guided by evidence, not guaranteed remedies.
Test changes and recheck stream health
When you have a plausible cause, change one thing and observe the same symptom again. If a file stopped at its end, test Loop with a short file. If it stopped when a scene was hidden and shown, test restart-on-activation separately. If the preview stuttered, simplify the scene or reduce output load and see whether OBS performance improves. Changing several settings together makes it harder to know which one mattered.
For a test, note the source type, file duration, whether the source position advances, what appears at playback end, and whether the OBS dropped-frame counter changes. If the issue happens only after a scene transition, include which scene became active. These observations are useful whether you are troubleshooting alone or asking someone else to review the setup.
After a local change, check the live output from another device or connection if available. Compare what you see in OBS with what YouTube viewers see, and inspect YouTube’s current stream health information in the live control room. A locally smooth preview does not by itself establish that viewers receive a smooth feed, just as a viewer’s buffer indicator does not prove the source stopped.
If the fault remains, gather the details before naming a root cause: operating system, OBS version, source type, file container and codec, when the freeze occurs, relevant OBS log, dropped-frame information and hardware. The OBS performance troubleshooting guide provides steps for investigating local render and encoding performance. For a channel that needs to keep running through a long night, compare the practical trade-offs in keeping a sleep-sounds stream running overnight; the diagnosis still starts with what is actually stopping.
If repeated local checks show that the computer itself must stay on and maintain the broadcast, that is a separate operational constraint from a bad loop setting. StreamNeo can remove the need to leave your own computer running for an uploaded-video broadcast, but it does not change the diagnosis of an OBS source or viewer-side issue.
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
Why does OBS freeze on the last frame of a video?
The file may have reached its end and the source may be showing its end state. Check whether playback position reached the duration, then inspect Loop separately from Show nothing when playback ends. A frozen-looking last frame does not by itself indicate that OBS or YouTube has stopped working.
Does restart-on-activation make a video loop?
No. Restart-on-activation concerns what happens when the source becomes active in a scene; Loop controls whether playback repeats when it completes. Check the property that matches the timing of the symptom.
What if YouTube viewers buffer but OBS shows no dropped frames?
That points away from assuming the local media source has frozen. Check whether the reports come from one viewer or several, and review OBS’s viewer-buffering guidance alongside the viewers’ devices and connections. Do not change loop settings unless local playback shows a corresponding problem.
What details should I include when asking for help?
Include your operating system and OBS version, source type, file format and codec, when the freeze occurs, and whether playback position continues to move. Add relevant logs and whether OBS reports dropped frames; these details help distinguish source, rendering, encoding, connection and viewer-delivery issues.