To stream a 4K 60fps MP4 loop to YouTube Live with OBS on Linux, add the file as a Media Source, enable Loop, set the output to 3840 × 2160 at 60 fps, and configure YouTube ingest. Those settings describe the intended feed; they do not prove that your computer or internet connection can sustain it.
If you are asking “How do I loop an MP4 on OBS?” or “Can OBS stream a video on loop?”, the built-in Media Source is the direct route. The rest of the job is to test the encoder, upload capacity, audio and YouTube stream health under conditions close to the real broadcast.
Create a scene and add a Media Source
Open OBS Studio and select an existing scene or create one for this broadcast. A scene is the composition OBS sends to the output; for a simple prerecorded loop, it can contain just the video and any audio you intentionally want to transmit. A separate scene helps prevent unrelated desktop captures, microphones or overlays from entering the programme by accident.
In the Sources panel, choose +, then Media Source. Give the source a recognisable name, such as “Main loop”, and confirm. OBS’s Media Sources guide documents the source on Linux and the options used to play local media. The labels may vary slightly across OBS versions, but the relevant feature is the standard Media Source, not a Linux-only control.
A scene can contain other sources, but each one adds something to render and something to check. If the stream is meant to show a single video, start with the simplest possible scene. Add a logo or text only after you have confirmed that the video plays correctly and that the system has spare capacity. A static overlay is usually a different workload from another moving source, but either way, test the finished scene rather than assuming a preview of the MP4 alone represents the final load.
Before you configure streaming, look at the preview. If the picture is cropped, stretched or letterboxed, that is a composition issue, not necessarily a problem with YouTube ingest. OBS can scale sources to fit a canvas, but scaling does not create detail missing from a smaller source. Decide whether preserving the MP4’s aspect ratio or filling every pixel of the 4K canvas matters more for your content.
Select the MP4 and enable Loop
In the Media Source properties, browse to the local MP4 and select it. Enable Loop so OBS starts the file again after playback completes. OBS describes Loop as repeating the media when it reaches the end. This answers “How do I loop an MP4 on OBS?” without needing a playlist or a separate playback application.
Use a file stored on a drive that is available for the whole broadcast. If the file is on removable storage, a network mount or a location that may be unmounted during maintenance, playback can fail even if the initial test looks fine. Keep the machine’s power settings in mind too: the display can sleep, but the computer itself must not suspend while it is responsible for OBS.
The Media Source also has a Restart playback when source becomes active option. This is useful when switching back to a scene should start the video from its beginning; it is not the same setting as Loop. For a single-scene continuous broadcast, Loop is the important control. Test what happens when you change scenes or deactivate the source, if your planned workflow includes those actions.
Some builds also show Use hardware decoding when available. It is optional and depends on compatible decoding support in the system. Enabling it does not make the stream’s encoding free, and it should not be treated as a universal performance fix. If the source glitches or CPU use changes unexpectedly, compare playback with the option enabled and disabled during a private test, rather than changing it during a live broadcast.
Check whether the MP4 actually contains the resolution and frame rate you intend to deliver. A 4K60 output canvas cannot restore detail or motion that was not present in a lower-resolution or lower-frame-rate file. If your source is 30 fps, OBS may still produce a 60 fps output, but that does not make the original footage 60 fps.
Configure YouTube Live ingest
In YouTube Live Control Room, create or select the stream and use the server URL and stream key shown there. In OBS, open Settings, then Stream, choose YouTube as the service if that option is available, and enter or select the credentials for the intended broadcast. YouTube recommends RTMPS, the encrypted extension of RTMP; use the RTMPS server supplied by YouTube when the OBS configuration offers it.
You can follow YouTube’s current encoder settings and bitrate guidance when choosing the ingest settings below. The stream key is a credential: anyone who obtains it may be able to send a feed to your channel. Do not paste it into a public chat, screenshot, tutorial or support post. If you believe it has been exposed, replace it through YouTube’s controls before relying on the stream again.
Confirm that the destination is the right channel and stream before pressing Start Streaming. A correctly configured local scene can still be sent to the wrong YouTube broadcast if you are signed into a different account or have selected an old scheduled stream. Check the title, visibility and intended destination in Control Room, then compare that with OBS’s connection status.
This setup sends a live feed made from the MP4; it is not the same as uploading a video for on-demand playback. If you are deciding between a live loop and a replayable upload, our guide to VOD and video on demand explains the distinction. Remove the space after the opening parenthesis when publishing: the correct link is what a VOD is.
Set the output to 3840 × 2160 at 60 fps
In Settings → Video, set the base (canvas) resolution and output (scaled) resolution according to the picture you intend to send. For a 4K output, use 3840 × 2160. Set the common FPS value to 60. Names and layout can differ by OBS release, but output resolution and frame rate are the settings that define the programme format; they do not certify that the system can render it in real time.
If your canvas is a different size, either adjust it or check the scaling explicitly. A mismatch can result in borders, cropping or scaling, depending on the source transform and output configuration. Inspect the preview and a short YouTube test to confirm the composition. Avoid changing canvas geometry in the middle of a live session unless you have a specific reason and can verify the result.
Open Settings → Output and choose an output mode that exposes the encoder and bitrate controls. YouTube’s current guidance for RTMP/RTMPS calls for constant bitrate (CBR), a two-second keyframe interval, and a supported video codec. YouTube lists H.264, H.265/HEVC and AV1 for up to 60 fps. The available choices in your OBS installation depend on its build and the hardware and drivers on your Linux system.
For 4K at 60 fps, YouTube’s table recommends 50 Mbps for H.264 and 35 Mbps for H.265 or AV1. Its listed minimums are 14 Mbps for H.264 and 10 Mbps for H.265 or AV1. These are ingest recommendations, not a measurement of your home upload connection and not a promise that the encoder can produce the feed. Set a keyframe interval of two seconds where the encoder exposes that control; YouTube says not to exceed four seconds.
YouTube lists AAC or MP3 for audio over RTMP/RTMPS and recommends 128 kbps stereo. If the MP4 has no sound, inspect OBS’s audio mixer and advanced audio properties so the broadcast does not unintentionally include a desktop or microphone source. If you do want the file’s audio, make sure its source is active and audible in a test. A picture that loops correctly can still have silent, clipped or unwanted audio.
Check encoder and upload capacity
A 4K60 output puts sustained work on both the encoder and the connection. The encoder must produce frames quickly enough, while the upload path needs room to carry the selected bitrate without persistent congestion. A speed test can be a useful clue, but it is not the same as a long-running stream test: network conditions can change, and other devices may use capacity while you are broadcasting.
In OBS, inspect the encoder choices actually available on your machine. OBS documents NVIDIA NVENC, AMD AMF and Intel Quick Sync on Linux under the relevant compatibility conditions. Seeing an encoder name in a settings menu is not proof that its driver path is healthy or that it can maintain 4K60 in your scene. If you choose software encoding, the CPU must handle that work alongside media playback and scene rendering.
OBS states that a compatible system does not guarantee that it can stream or record using OBS Studio. Its system requirements discuss Linux/Unix requirements, including an OpenGL 3.3-compatible GPU and X window system or Wayland, while its hardware encoding guide describes encoder-family compatibility. These are starting points for checking whether an option is supported, not performance guarantees. Drivers, OBS packaging, GPU generation, cooling and competing tasks all matter.
YouTube’s recommended bitrate comparison is useful, but bitrate should not be the only basis for choosing a codec. Compare whether your installed encoder supports the codec and exposes CBR and keyframe controls, whether the connection can sustain the recommended rate, and whether the resulting picture meets your needs. The lower recommendation for AV1 or H.265 does not mean either is automatically available or preferable on your Linux system.
| Choice | YouTube’s 4K/60 recommended bitrate | What to verify on Linux |
|---|---|---|
| H.264 | 50 Mbps | Encoder availability, stable CBR, and upload headroom |
| H.265/HEVC | 35 Mbps | Hardware or software support and the required controls |
| AV1 | 35 Mbps | Encoder availability and stable performance in OBS |
The bitrates and codec guidance in this table come from YouTube’s encoder settings page, checked for this article on 3 October 2026; check the current page again before configuring a broadcast because recommendations can change. Do not assume that a lower bitrate is a better practical choice if your system cannot encode that format reliably.
Run the machine on its intended power supply, close unnecessary workloads, and observe temperatures and system load during a sustained test. A short preview may not reveal thermal throttling or a background task that starts later. Do not infer stable unattended operation from a single successful connection. If a stream must continue while you are away, consider what you will do about power loss or a system restart; continuity equipment such as a UPS is optional and addresses power interruptions, not encoder or network capacity.
For a 24/7 channel, a local OBS machine also means keeping the computer, file and internet connection available. Our guide to the cost of keeping a prerecorded YouTube stream running covers the recurring-cost question from a different angle. The correct URL is the costs of an always-on prerecorded stream. If maintaining a local system is the pain point, StreamNeo turns an uploaded video into a YouTube live stream that can keep running with your own computer off, rather than requiring OBS to stay open on it.
Test playback and stream health
Test the whole path before relying on the stream: the same MP4, scene, output settings, audio and YouTube destination. Start a private or unlisted test if that suits your channel plan, and verify the picture from a viewer’s perspective rather than judging only the OBS preview. Confirm that the YouTube player receives the intended resolution and that sound is present only when you expect it.
Watch OBS’s status and statistics while the test runs. Look for rendering or encoding lag and dropped frames, and note whether their counts continue to rise. A problem at the rendering stage points towards scene or GPU load; encoding lag can indicate encoder overload; network drops point towards upload stability or congestion. These clues narrow the issue, but do not establish a single cause by themselves.
Also check YouTube’s stream health and any messages in Live Control Room. A connected status in OBS does not guarantee that viewers receive a clean, stable picture. YouTube recommends testing and monitoring stream health. If it reports a problem, use the message and OBS statistics together, then change one relevant setting at a time and test again.
If 60 fps is unstable, OBS’s performance guidance suggests reducing the frame rate to 30 fps. You can also reduce the output resolution if the system or upload cannot keep pace. Choose the fallback according to the content: for a detailed still or slow-moving devotional scene, keeping 4K while lowering frame rate may be acceptable; for fast motion where smooth movement matters, keeping 60 fps at a lower resolution may be preferable. These are trade-offs to measure, not rules that guarantee a good result.
Make a short written record of the settings that worked and the conditions of the test, including which encoder was selected and whether audio was included. A later test with a different driver, OBS update, network, or scene may behave differently. For a channel that runs continuously, check the stream after launch and at intervals you can manage; no configuration removes the need to notice an unexpected interruption.
When the machine or connection cannot maintain the feed, reduce the workload rather than continuing to retry at the same settings. You can also consider a cloud-based workflow if the goal is to keep a prerecorded YouTube feed going without leaving your home computer running. For an example of a channel built around repeating music content, see our 24/7 jazz piano radio setup guide.
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
Can OBS stream a video on loop?
Yes. Add the local file as an OBS Media Source and enable Loop in its properties. Test the transition at the end of the file, because a looping setting does not guarantee a flawless visual or audio hand-off for every file.
How do I stream 4K 60fps to YouTube Live?
Set OBS’s output resolution to 3840 × 2160 and frame rate to 60, then select a supported encoder and configure the YouTube-recommended bitrate, CBR and keyframe interval. You still need to test whether your specific Linux system and upload connection sustain those settings.
Does a 4K60 MP4 guarantee a 4K60 YouTube stream?
No. The file’s format, OBS output settings, encoder capability, upload stability and YouTube ingest all affect the result. Confirm the received stream in YouTube’s player and check stream health rather than relying on the source file’s properties alone.
What should I change if 4K60 keeps dropping frames?
Check OBS statistics to distinguish rendering or encoding problems from network drops, then test a lower workload. You might keep 4K and reduce to 30 fps, or keep 60 fps and lower the resolution; the better choice depends on what matters visually in your content.