October DealsAmazon USOctober deal check: compare before you payAmazon US: current deals, useful picks and tech finds.Check DealsClean PCRecommendedOne scan can reveal what keeps slowing WindowsLook for cleanup and repair opportunities.Run ScanOctober DealsAmazon USDeal season is back - check today's better picksAmazon US: current deals, useful picks and tech finds.See Picks×
Skip to content
Mountain View desk6 min

Best FFmpeg Settings for Constant Frame Rate YouTube Playlist Videos

Preserve each clip’s recorded frame rate unless CFR is required. This guide shows FFmpeg settings for YouTube uploads, explains duplicated or dropped frames, and distinguishes playlist entries from a single compilation.
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

For YouTube uploads, keep each video at the frame rate it was recorded unless your workflow specifically requires constant frame rate (CFR). When you do need CFR, FFmpeg can duplicate or drop frames to reach your chosen rate; it does not make 30 fps—or any other rate—a universally better choice.

“Playlist videos” can mean separate uploads grouped in a YouTube playlist or several clips rendered into one file. The right FFmpeg workflow depends on which you mean.

As an Amazon Associate I earn from qualifying purchases.

Choose a frame rate before encoding

YouTube’s upload guidance is to encode and upload content at the rate used during recording. It lists 24, 25, 30, 48, 50 and 60 fps as common rates, and its troubleshooting guidance also recognizes 23.98, 29.97 and 59.94 fps. Other rates are accepted. You do not need to convert every upload to 30 fps or make all entries in a playlist share one rate. YouTube’s upload encoding recommendations and frame-rate troubleshooting guidance cover the platform’s expectations.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  • One source clip: use its native rate where possible.
  • Several separate playlist entries: encode each according to its own source; playlist membership does not require one common frame rate.
  • One compilation made from mixed-rate clips: select a target rate for the rendered file. Any clips whose cadence differs may have frames duplicated or omitted.

Recommended starting settings for an SDR upload

This illustrative command encodes an MP4 using H.264 and AAC, sets CFR to 30 fps, and uses YouTube-recommended audio sample rate. Replace 30 with the source rate or the specific target your project requires. CRF 18 and the medium preset are practical encoder choices, not settings prescribed by YouTube; the command has not been tested against your footage.

ffmpeg -i input.mov -map 0:v:0 -map 0:a? 
  -c:v libx264 -profile:v high -pix_fmt yuv420p 
  -r 30 -fps_mode:v cfr -crf 18 -preset medium 
  -c:a aac -b:a 384k -ar 48000 
  -movflags +faststart output.mp4

For a native-rate CFR output, set -r to the actual source rate—for example, -r 29.97 for a 29.97 fps source—rather than rounding it to 30. Check your installed FFmpeg build’s manual for supported option syntax and behavior.

What the key options do

  • -r 30 -fps_mode:v cfr requests 30 fps CFR during encoding. FFmpeg achieves the requested cadence by duplicating or dropping frames. Do not treat the example rate as a universal recommendation.
  • -c:v libx264 selects H.264 encoding; -profile:v high requests High Profile; -pix_fmt yuv420p selects 4:2:0 chroma sampling.
  • -crf 18 -preset medium set an encoder quality/compression trade-off and encoding speed. Adjust them to suit the material and processing constraints; YouTube does not prescribe these values.
  • -c:a aac -b:a 384k -ar 48000 encodes audio as AAC at the example bitrate and 48 kHz sample rate. YouTube recommends 48 kHz audio.
  • -movflags +faststart moves MP4 indexing information for progressive playback; it does not affect frame rate.

What YouTube recommends for the encoded file

YouTube’s upload recommendations specify MP4, H.264, progressive scan, High Profile, two consecutive B-frames, a closed GOP, CABAC, variable bitrate, and 4:2:0 chroma. They specify a closed GOP of half the frame rate. YouTube does not require an upload bitrate limit; its bitrate figures are reference recommendations, not guarantees of quality or mandatory encoder settings. See the official encoding recommendations.

SDR upload YouTube reference bitrate
1080p, 24/25/30 fps 8 Mbps
1080p, 48/50/60 fps 12 Mbps

These are YouTube Help reference recommendations accessed on October 3, 2026, not mandatory limits. The full guidance lists separate figures for other resolutions and formats. For SDR, YouTube recommends BT.709 color. Match color metadata to the actual master rather than applying a tag blindly: YouTube explains that unspecified or unsupported metadata can affect how color is interpreted or converted in its color-space guidance.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Force CFR with the FFmpeg fps filter

If you prefer to make the conversion explicit in a video filter, use fps and set the output to the same target rate. For example:

ffmpeg -i input.mov -map 0:v:0 -map 0:a? 
  -vf "fps=30" -c:v libx264 -profile:v high -pix_fmt yuv420p 
  -crf 18 -preset medium -c:a aac -ar 48000 output.mp4

Replace 30 with the intended rate. The FFmpeg fps filter converts by duplicating or dropping frames. Avoid stacking multiple competing frame-rate conversions; choose one authoritative method and inspect the output.

Why stream copy will not convert frame cadence

When encoding, output -r together with CFR mode can duplicate or drop frames to create the requested rate. With stream copy, output -r only signals a rate; it does not create, remove, or retime frames. If actual conversion is required, re-encode or use a frame-rate filter. The FFmpeg manual documents output frame-rate and synchronization options. Its exact options can vary by installed build, so check that build’s manual.

Separate playlist entries or one combined video?

Separate uploads in a YouTube playlist

A YouTube playlist is a collection of individual video uploads. There is no requirement in the cited upload guidance for all entries to use the same frame rate. Encode each file to preserve its source cadence unless a particular downstream workflow calls for conversion.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Clips joined into one output file

If “playlist video” means a montage or long compilation, that is a separate editing and concatenation task. FFmpeg’s concat filter is appropriate when clips need to be combined and re-encoded; the concat demuxer may avoid re-encoding when the input files are suitable. See the concat filter documentation and concat demuxer documentation. A shared output frame rate for mixed-rate footage is a deliberate conversion choice, not a YouTube playlist requirement.

Best Value
WavePad Audio Editing Software - Professional Audio and Music Editor for Anyone [Download]
  • Full-featured professional audio and music editor that lets you record and edit music, voice and other audio recordings
  • Add effects like echo, amplification, noise reduction, normalize, equalizer, envelope, reverb, echo, reverse and more
  • Supports all popular audio formats including, wav, mp3, vox, gsm, wma, real audio, au, aif, flac, ogg and more
  • Sound editing functions include cut, copy, paste, delete, insert, silence, auto-trim and more
  • Integrated VST plugin support gives professionals access to thousands of additional tools and effects
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Check the result after conversion

YouTube advises using native frame rates without resampling because resampling can make images shudder and often reduce quality. CFR may still be necessary for a downstream workflow, but repeated or omitted frames can change motion. After conversion, review fast movement, pans, scene changes, and audio/video synchronization. Do not assume a conversion is visually invisible.

Common problems and fixes

  • The output still has the source’s variable cadence: confirm the file was encoded rather than stream-copied, and use one CFR method such as -fps_mode:v cfr with output -r or the fps filter.
  • Motion looks uneven after conversion: compare against the source and reconsider whether CFR is necessary. If required, choose a target compatible with the footage’s motion; CFR will duplicate or drop frames when rates differ.
  • 29.97 or 59.94 footage was set to 30 or 60: use the source’s actual rate when preservation is the goal. Rounding changes cadence and can require frame adjustments.
  • Clips in a compilation do not match: determine a target rate for the single output and expect conversion for clips with different rates. A playlist of separate uploads does not need this normalization.
  • Color looks wrong: verify that the master’s color space and metadata are correctly represented; do not force BT.709 tags onto footage mastered in another color space.
  • FFmpeg rejects an option: check the manual for the installed build and use its supported syntax; FFmpeg options and behavior are version-dependent.

Do not use live-stream settings for prerecorded uploads

This article covers prerecorded video uploads. YouTube’s live-stream guidance specifies different settings, including CBR and live keyframe guidance; upload recommendations instead use variable bitrate and do not set a required bitrate limit. Use the upload specification for a rendered playlist video, not the live-stream page.

Or let it run in the cloud

FFmpeg prepares prerecorded files for upload; it does not keep a YouTube channel live by itself. If your goal is a 24/7 YouTube stream that loops uploaded videos, StreamNeo runs it from the cloud:

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  1. Upload a recording or build a playlist.
  2. Add your YouTube stream key once.
  3. Go live; StreamNeo loops the uploaded video from the cloud.

Nothing has to stay on at home. Every slot streams the uploaded quality up to 4K 60fps at one price, with automatic recovery if YouTube drops the stream. The first day is free with no card. Monthly: $9.99 per month.

Start your free first day with StreamNeo.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Leave a Reply

Your email address will not be published. Required fields are marked *

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More from the Wire

  1. World desk4 min
    How to Spot an AI Voice Scam Before Sending MoneyDon’t rely on how a caller sounds. Pause, call back through a known number, and verify the emergency with another trusted person before sending money.
  2. Mountain View desk4 min
    Google’s SynthID Detector: How to Check AI-Generated Images, Video and AudioGoogle’s SynthID Detector looks for an embedded watermark in supported images, video and audio. Here is what its results do—and do not—show.
  3. Redmond desk20 min
    How to create a link to File or Folder in Windows 11Windows 11 gives you several ways to point to a file or folder without moving or duplicating it. You can create a desktop shortcut,…
Recommended PC Tool
Recommended PC Tool
Crashes, No Sound, or Screen Glitches?Free driver scan
Windows Errors? Fix Them Before They SpreadFree repair scan

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.