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 desk7 min

How to Rotate YouTube Live Playlists with FFmpeg Concat Files

Use an FFmpeg concat file to play a fixed list of compatible videos in order and repeat it on YouTube Live. Learn the command, path rules, compatibility checks and fixes for common transition problems.
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

To rotate a fixed sequence of videos on YouTube Live, put their paths in an FFmpeg concat file, then read that list with the concat demuxer and repeat it using -stream_loop -1. This works best when every clip has compatible streams, codecs and time bases. If they do not, normalize the clips first or use FFmpeg’s concat filter and re-encode. You will also need a computer that stays on and a YouTube Live ingest URL and stream key.

What a concat playlist does—and what it does not

An FFmpeg concat file is a plain-text, ordered list of media files. The concat demuxer presents those files as one virtual input, so FFmpeg can send them sequentially. Adding -stream_loop -1 makes that finite input repeat indefinitely while the FFmpeg process continues running.

As an Amazon Associate I earn from qualifying purchases.

The list is static: it does not discover new files, schedule different videos by time, or provide a live playlist editor. To change the rotation, edit the file and restart the stream. A local FFmpeg stream also depends on the computer, power and internet connection remaining available.

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.

1. Check that the video files can be joined

Before building a long-running stream, inspect the files. The concat demuxer does not convert or reconcile different media formats. Listed inputs need matching stream layouts and compatible properties, including codecs and time bases; differing resolution, frame rate, audio layout or other parameters can also cause problems at transitions.

#1 Best Overall
CanaKit Raspberry Pi 5 Starter Kit PRO - Turbine Black (128GB Edition) (8GB RAM)
  • Includes Raspberry Pi 5 with 2.4Ghz 64-bit quad-core CPU (8GB RAM)
  • Includes 128GB Micro SD Card pre-loaded with 64-bit Raspberry Pi OS, USB MicroSD Card Reader
  • CanaKit Turbine Black Case for the Raspberry Pi 5
  • CanaKit Low Noise Bearing System Fan
  • Mega Heat Sink - Black Anodized

For a quick inventory, run ffprobe on each file, for example:

ffprobe -v error -show_entries stream=index,codec_type,codec_name,time_base,width,height,r_frame_rate,sample_rate,channels -of default=noprint_wrappers=1 "segment-01.mp4"

Compare the results across the playlist. Check that each file has the expected audio and video streams and that corresponding streams use compatible codecs and time bases. This inspection helps identify likely incompatibilities; it does not prove that every transition will be clean, so test the complete list.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #2
CanaKit Raspberry Pi 4 4GB Starter PRO Kit - 4GB RAM
  • Includes Raspberry Pi 4 4GB Model B with 1.5GHz 64-bit quad-core CPU (4GB RAM)
  • Includes Pre-Loaded 32GB EVO+ Micro SD Card (Class 10), USB MicroSD Card Reader
  • CanaKit Premium High-Gloss Raspberry Pi 4 Case with Integrated Fan Mount, CanaKit Low Noise Bearing System Fan
  • CanaKit 3.5A USB-C Raspberry Pi 4 Power Supply (US Plug) with Noise Filter, Set of Heat Sinks, Display Cable - 6 foot (Supports up to 4K60p)
  • CanaKit USB-C PiSwitch (On/Off Power Switch for Raspberry Pi 4)

Choose the right concatenation method

Approach Use it when Trade-off
Concat demuxer with stream copy The files already have compatible streams and you do not need to resize, filter or otherwise normalize them. It avoids a re-encoding step and generally requires less processing, but incompatible streams or inaccurate duration metadata can cause failures or irregular transitions.
Concat filter with re-encoding The clips need consistent resolution, frame rate, audio or other media properties, or require filtering. It gives you a place to normalize inputs, but adds an encoding step and requires enough processing capacity for the chosen settings.

There is no universal stream-copy command that will make mismatched files compatible. If you standardize the clips beforehand, check the resulting files again. Pre-transcoding can help with a static playlist, but normalization alone is not a guarantee against every source-file problem.

2. Create the concat file

Save a plain-text file named playlist.ffconcat alongside the video files. Its first line must be ffconcat version 1.0; follow it with one file directive for each clip, in the order you want to play them:

ffconcat version 1.0
file 'segment-01.mp4'
file 'segment-02.mp4'
file 'segment-03.mp4'

Relative paths are convenient when the playlist and media files share a folder. Keep paths simple and portable where possible. The concat demuxer’s safe-path mode is enabled by default and restricts paths it considers unsafe.

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

When a path is rejected

If the list uses a filename or path that safe-path mode rejects, either move or rename the files to use acceptable relative paths, or add -safe 0 before the concat input. Only disable safe-path checks for a playlist you control: doing so permits arbitrary paths and relaxes a guard against unsafe playlist directives.

When durations are wrong

The demuxer uses each file’s duration to position the next one. Incorrect duration metadata can produce gaps, overlaps or other irregular transitions. Inspect the affected file’s actual duration and metadata before making changes. A duration directive in the concat file can override the duration used for that file, but use it only when you have a reliable value; an arbitrary duration can shift subsequent timestamps instead of fixing them.

Rank #4
Raspberry SC15184 Pi 4 Model B 2019 Quad Core 64 Bit WiFi Bluetooth (2GB)
  • Broadcom BCM2711, quad-core Cortex-A72 (ARM v8) 64-bit SoC @ 1. 5GHz
  • 2. 4 GHz and 5. 0 GHz IEEE 802. 11b/g/n/ac wireless LAN, Bluetooth 5. 0, BLE
  • 2 × USB 3. 0 ports, 2 x USB 2. 0 Ports
  • 2 × micro HDMI ports supproting up to 4Kp60 video resolution
  • Micro SD card slot for loading operating system and data storage

3. Send the repeating list to YouTube Live

Use this as a command template for compatible inputs, not as a guaranteed YouTube ingest recipe:

ffmpeg -re -stream_loop -1 -f concat -i playlist.ffconcat -c:v libx264 -c:a aac -f flv 'rtmp://INGEST_ENDPOINT/STREAM_KEY'

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

Replace the output URL with the ingest URL and stream key shown for your YouTube Live setup. Replace or extend the output options to match the media and the current ingest settings shown for your account. The example selects H.264 video and AAC audio, but it does not establish the right resolution, frame rate, bitrate, keyframe interval or audio parameters for your particular stream.

Best Value
CanaKit Raspberry Pi 5 16GB Starter Kit PRO - Turbine Black (128GB Edition) (16GB RAM)
  • Includes Raspberry Pi 5 16GB with 2.4Ghz 64-bit quad-core CPU (16GB RAM)
  • Includes 128GB Micro SD Card pre-loaded with 64-bit Raspberry Pi OS, USB MicroSD Card Reader
  • CanaKit Turbine Black Case for the Raspberry Pi 5
  • CanaKit Low Noise Bearing System Fan
  • Mega Heat Sink - Black Anodized
  • -re asks FFmpeg to read file input at approximately real-time speed instead of consuming it as fast as possible. Validate its behavior with your actual input and installed FFmpeg version.
  • -stream_loop -1 repeats the concat input indefinitely. It is an input option, so it belongs before the corresponding -i.
  • -f concat selects the concat demuxer, and -i playlist.ffconcat supplies its list.
  • -c:v and -c:a select video and audio encoders. If the inputs are compatible and you want to avoid re-encoding, stream copying may be possible, but do not assume it will work for mismatched inputs or that it is appropriate for your ingest configuration.
  • -f flv sets the output container used by this RTMP command example. Confirm the current ingest details in YouTube’s live console and help for your account before choosing the actual output parameters.

Keep the stream key secret. Avoid putting it in a public script, sharing it in screenshots or logs, or exposing it in a place others can access. If it is exposed, replace it in YouTube’s live controls and update the FFmpeg command.

4. Test the rotation before relying on it

  1. Start with a short run using the full playlist, so you can observe every transition at least once.
  2. Watch FFmpeg’s console output for input, timestamp, encoder and connection errors. Save logs somewhere private if you need them for diagnosis, taking care not to expose a URL containing the stream key.
  3. Check YouTube’s live console to confirm that it receives a usable video and audio stream and that the stream is behaving as expected.
  4. Only after the clips and transitions work should you leave the stream unattended. A local setup still depends on the computer and network staying available, and this command does not itself provide a managed recovery service.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

YouTube Live settings and content checks

Do not rely on an old forum post for fixed ingest values. Confirm the current, account-specific requirements in YouTube Help and the YouTube live console before selecting codec, resolution, frame rate, bitrate, keyframe interval or audio settings. This workflow does not establish a universal current parameter set. If YouTube does not receive a usable stream, the live console is a key place to check the platform-side status.

Also make sure you have the rights to stream every video and audio track in the playlist. Permission to upload a video does not necessarily establish permission to rebroadcast all music, footage or other material in it. Review YouTube’s current copyright rules and policies before scheduling a continuous stream. Repeated or prerecorded programming does not by itself establish compliance with YouTube’s monetization or reused-content policies; assess the channel and content under YouTube’s current guidance rather than assuming that a looping format is exempt.

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

Troubleshooting common failures

Symptom Likely cause What to check or change
FFmpeg rejects a file or errors when it reaches the next clip The files have incompatible stream layouts, codecs or time bases, or a listed path is wrong. Compare each file with ffprobe, verify the playlist paths, then standardize the media or use a concat-filter workflow that re-encodes.
A clip transition has a gap, overlap or timestamp error Duration metadata may be inaccurate, or the inputs may not be compatible. Inspect the actual duration and metadata of the clip before the transition. Use a concat-file duration override only when you have a sound duration value; otherwise fix or normalize the inputs.
The playlist will not open a file with spaces or a non-portable path Safe-path mode rejects the path, or the path is written incorrectly. Prefer simple relative paths. If the playlist is trusted and the path genuinely requires it, use -safe 0 before -i.
YouTube does not show a usable live stream The ingest URL or key may be wrong, the connection may not be established, or the output may not match current ingest expectations. Check FFmpeg’s connection and output logs, verify the current URL and key in the live controls, and inspect YouTube’s live console. Confirm ingest parameters against current official guidance rather than copying an unverified recipe.
The picture arrives but audio is absent or unusable The source may lack an audio stream, stream selection may be wrong, or the output’s audio parameters may not suit the ingest. Inspect the inputs and FFmpeg output for an audio stream, then check the live console and current YouTube guidance. Do not assume a particular audio arrangement is a universal requirement.
The stream stops when you leave or shut down the computer FFmpeg is running locally, so the process and its host must remain available. Keep the host, power and internet connection active and supervise recovery, or choose a cloud service designed to run the playlist without a home computer.

Or let it run in the cloud

With StreamNeo, upload a recording or build a playlist, add your YouTube stream key once and go live. StreamNeo loops uploaded videos from the cloud, so your computer and home connection do not have to stay on. It streams the uploaded video as made, up to 4K 60fps, at one flat price per slot; there are no quality tiers or re-encoding. It can automatically recover if YouTube drops the stream. StreamNeo is for YouTube streams from uploaded videos, not camera broadcasts.

The first day is free with no card, one free day per account. After that, the monthly option is $9.99 per month. Every slot includes 10 GB of storage, pooled across active slots, 24/7 looping and playlists, automatic recovery and StreamNeo team support. UPI and cards are available in India; card checkout is available worldwide. For five or more slots, contact support.

Quick Recap

Bestseller No. 1
CanaKit Raspberry Pi 5 Starter Kit PRO - Turbine Black (128GB Edition) (8GB RAM)
CanaKit Raspberry Pi 5 Starter Kit PRO - Turbine Black (128GB Edition) (8GB RAM)
Includes Raspberry Pi 5 with 2.4Ghz 64-bit quad-core CPU (8GB RAM); CanaKit Turbine Black Case for the Raspberry Pi 5
$259.95
Bestseller No. 2
CanaKit Raspberry Pi 4 4GB Starter PRO Kit - 4GB RAM
CanaKit Raspberry Pi 4 4GB Starter PRO Kit - 4GB RAM
Includes Raspberry Pi 4 4GB Model B with 1.5GHz 64-bit quad-core CPU (4GB RAM); Includes Pre-Loaded 32GB EVO+ Micro SD Card (Class 10), USB MicroSD Card Reader
$159.99
Bestseller No. 4
Raspberry SC15184 Pi 4 Model B 2019 Quad Core 64 Bit WiFi Bluetooth (2GB)
Raspberry SC15184 Pi 4 Model B 2019 Quad Core 64 Bit WiFi Bluetooth (2GB)
Broadcom BCM2711, quad-core Cortex-A72 (ARM v8) 64-bit SoC @ 1. 5GHz; 2. 4 GHz and 5. 0 GHz IEEE 802. 11b/g/n/ac wireless LAN, Bluetooth 5. 0, BLE
$92.97
Bestseller No. 5
CanaKit Raspberry Pi 5 16GB Starter Kit PRO - Turbine Black (128GB Edition) (16GB RAM)
CanaKit Raspberry Pi 5 16GB Starter Kit PRO - Turbine Black (128GB Edition) (16GB RAM)
Includes Raspberry Pi 5 16GB with 2.4Ghz 64-bit quad-core CPU (16GB RAM); CanaKit Turbine Black Case for the Raspberry Pi 5
$419.99

Start your free StreamNeo day.

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 *

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
Outdated Drivers Are Slowing You DownFree scan - exact matches
PC Slower Than It Used to Be?Free scan - under a minute

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.