For a standard SDR YouTube stream, start with BT.709 colour space and OBS’s partial colour range, then check how your files actually look. One global OBS range setting cannot necessarily reconcile files encoded or labelled with different range assumptions.
If a playlist mixes SDR and HDR, treat the HDR material as a separate workflow rather than trying to fix it with the range control. Inspect and, where needed, convert inconsistent files before settling on a playlist output setting, then verify the rendered image.
Identify SDR and HDR footage first
Before adjusting OBS, establish whether the files are SDR, HDR, or a mixture. Range and colour space are different properties: full versus partial describes the range of signal values, while Rec. 709 or Rec. 2100 identifies a colour system. A range change does not convert SDR into HDR, or HDR into SDR.
For ordinary SDR material, YouTube recommends BT.709. You can check the file’s metadata in a media inspection tool or the application that created it, but do not let a label settle the question by itself. Production history matters: a file exported for standard web video is likely intended as SDR, while phone or camera footage may have been recorded with HDR enabled. If the playlist was assembled from several sources, check representative files rather than assuming the whole folder shares one format.
Look for transfer characteristics, colour primaries and matrix information as well as the range flag. Those details help distinguish standard SDR from HDR and identify a file that may have been interpreted differently during export. Metadata can be missing or inconsistent, so later image checks still matter.
A playlist that mixes SDR and HDR is not simply a playlist with two range values. HDR has its own transfer function and colour-space expectations. YouTube’s HDR live-streaming guidance describes a separate workflow with format and encoder requirements; follow that guidance for an HDR output instead of applying SDR Rec. 709 advice to it.
If you want to keep a continuous channel in a straightforward SDR workflow, decide how HDR clips should be handled before they enter the playlist. Convert them deliberately to SDR with an appropriate tone-mapping workflow, or keep them out of that SDR playlist. Simply changing OBS’s range cannot perform that conversion.
Set the target for standard SDR output
For a standard SDR broadcast, use Rec. 709 in OBS and treat partial range as the sensible starting point for a general streaming setup. YouTube’s video format guidance recommends BT.709 for SDR and explains that full-range uploads are converted to limited range. That upload behaviour does not show that a mixed-input live playlist will be corrected before it reaches YouTube.
In OBS, colour space and range are separate controls. The OBS media I/O reference defines the concepts separately and documents the default video range as partial. A default is a starting point, not proof that every source file is being interpreted as intended.
For a typical playlist of web-ready SDR files, begin with the Rec. 709 and partial combination, then test actual output. Do not switch the global range to full just because one file looks washed out. A file that looks wrong may be the one with the mismatched source assumption; changing the global setting to suit it can shift every other item in the playlist.
The right choice depends on the file’s encoding and the path through OBS and the encoder. If you are using a capture card or webcam rather than files, check that source’s own range setting against the device’s output. A device input setting and OBS’s overall output setting are related but are not interchangeable.
Understand what OBS partial range means
Partial, also called limited, range uses a narrower span of signal values than full range. For an 8-bit video signal, the commonly used limited luma interval is 16 to 235, while full range can use values from 0 to 255. The practical consequence is that the same pixel values can be displayed differently if one part of the chain expects full range and another expects partial.
OBS documents its default range as equivalent to partial. This aligns with the usual starting point for general SDR streaming, but it does not make a source’s own encoding irrelevant. A file authored as full range and interpreted as partial can appear too dark or unusually contrasty. A partial-range file interpreted as full can appear washed out, with weaker blacks and whites.
These symptoms are clues, not a diagnosis by themselves. Display calibration, player behaviour and the conversion path can also affect what you see. The OBS community guide on full and partial ranges describes the mismatch problem and recommends checking source and output controls. Treat that as workflow guidance, not as a substitute for testing your own files.
Do not add contrast or saturation to disguise a range mismatch. That changes the image values rather than correcting how the signal is interpreted, and the result can become worse in another player or after encoding. First find which stage expects full or partial; then correct or convert the source or make a deliberate, tested output choice.
Inspect files with mixed range assumptions
Start by making a simple inventory. Note whether each file is SDR or HDR, its colour space and transfer information, the range metadata if present, and how it was created. A devotional channel might combine a studio-recorded sermon, a phone-shot event clip and a graphic loop made in editing software. Those files may all be SDR, yet their range flags or actual pixel levels can still differ.
Inspect the clips most likely to diverge: files from different cameras, editing applications, export presets or older archives. Pay attention to dark scenes, bright skies, white text on black, and gradients. These reveal crushed blacks, clipped highlights or odd transitions more clearly than a uniform mid-tone image.
Metadata is useful evidence, but it is not the whole picture. A container can report one range while the encoded image behaves as though it uses another, especially where a custom FFmpeg workflow is involved. Historical OBS reports concerned specific old versions and custom output paths; they are not evidence of a defect in current OBS. If you encounter a metadata/rendering disagreement, reproduce it with the exact OBS version, encoder and container you use rather than generalising from an old report.
Keep a short record alongside your playlist. For each file, note its intended format, what the metadata says, and the result of a test playback or recording. This prevents a later edit from silently reintroducing a file that was never checked. If you maintain a looping channel, the advice in how to make a YouTube loop stream play videos in order is useful for playlist sequencing, but sequencing and colour interpretation are separate checks.
Convert inconsistent files before streaming
When inspection shows inconsistent assumptions, normalise the files before building the final playlist. Use a trusted editing or transcoding workflow that explicitly interprets the input correctly and writes a consistent SDR Rec. 709 output, if SDR is your target. This is not the same as merely relabelling metadata: a tag change without a proper conversion can leave the picture values unchanged and make the mismatch harder to diagnose.
For a full-range SDR source, the conversion should preserve the intended black, white and mid-tone appearance while mapping it into the output convention you have chosen. For an HDR source going into an SDR playlist, tone mapping is needed as part of an HDR-to-SDR conversion; range alone cannot handle the transfer-curve and colour-space changes. If you are not confident about the source interpretation, render a short sample and compare it before converting the entire archive.
Keep originals where practical. Export one representative clip, compare it in the same player or test path as the source, then inspect metadata and image appearance. If a batch conversion is needed, make sure the application applies the same input interpretation and output settings across the batch. Avoid applying a blanket conversion to files that are already consistent, since an unnecessary remap can alter them.
A continuous channel also needs reliable playback and recovery, not only matching colour. For example, the OBS playlist restart guide addresses what happens when a playlist reaches its end; test that behaviour separately from colour. If the machine running OBS must stay switched on overnight, a cloud-based approach can remove that specific dependency: StreamNeo turns an uploaded file into a YouTube live stream that runs without your computer left on, so you do not have to keep a local machine awake just to maintain the broadcast.
Verify the resulting image
Make a short test recording or private stream using the same OBS scene, encoder and output route you intend to use. Include at least one representative file from each source group. Inspect the result, not just the settings panel: compare black levels, white detail, ordinary mid-tones and any gradients or captions. Check the local recording and, where possible, the received YouTube playback, because each stage can affect the displayed result.
Use a known reference image or a familiar frame from the original when comparing. If blacks disappear into a solid block, shadows lose detail or whites clip, check the source interpretation and range path. If the image is washed out, examine whether a partial-range source is being treated as full. Correct the underlying interpretation before reaching for colour filters.
A setting label alone cannot prove that the playlist is correct. A global output range may be appropriate for most files while one inconsistent source remains wrong. If one file is still an outlier, take it out of the playlist, convert it, and test again. This is less risky than changing the output globally and inadvertently shifting every other file.
If your workflow uses custom FFmpeg output, test the exact command and container you will run. Historical issue reports for older OBS releases describe disagreements between metadata and encoded range in particular custom workflows, but they do not establish what current builds do. Treat them as a reason to verify your own path, not as evidence that all OBS output has the same issue.
For the final channel test, play through transitions as well as individual clips. A file can look acceptable on its own but stand out when it follows a darker or brighter item. If you are preparing the channel privately first, the private YouTube loop test guide offers a way to check the wider stream before making it public.
Check your installed OBS controls
Do not assume that a Media Source playlist in your installed OBS version provides a per-file range override. The available documentation cited here does not establish such a control for current playlists. Inspect the properties and settings in the OBS build you actually use, and confirm behaviour with a test; do not plan around an option you have not found.
If the playlist source exposes no suitable per-file control, that is another reason to standardise the files before streaming. A global output control applies to the output path; it is not a guaranteed repair for each source. If OBS or a plugin changes over time, retest rather than relying on a remembered control or advice written for another version.
Also check whether the source is a file, a capture device or a custom media input. OBS can expose range-related controls in different places depending on the source type and workflow. A capture source may need to match the actual signal from the device, while a playlist of files may require preprocessing. Keep those cases distinct when troubleshooting.
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
Should I set OBS to full range for a YouTube playlist?
Not as a general fix. OBS documents partial as its default, and partial is a sensible starting point for ordinary SDR streaming; confirm your sources and test the resulting output before changing it. A full-range setting chosen to suit one file can make other files wrong.
Does YouTube convert a mixed live playlist to the right range?
YouTube says it converts full-range uploads to limited range and recommends BT.709 for SDR uploads. That does not establish that a live playlist with inconsistently interpreted source files will look right before it is encoded and viewed. Normalise inconsistent inputs and verify the delivered image.
Can I mix HDR and SDR files in the same OBS playlist?
A playlist can contain both, but range alone does not reconcile them. Decide whether to convert HDR material into SDR with an appropriate tone-mapping workflow, or use a separate HDR workflow that follows YouTube’s requirements. Test the actual output rather than assuming a playlist will handle the conversion.
Is there a per-file range override in OBS Media Source playlists?
Do not count on one without checking your installed OBS version and source properties. The available sources do not verify a current per-file override. If you cannot confirm such a control, inspect and convert inconsistent files before using a single global output setting.