October DealsAmazon USOctober deal check: compare before you payAmazon US: current deals, useful picks and tech finds.Check DealsWindows FixRecommendedWindows errors stealing your time? Find the fix fastScan stability, cleanup and performance issues.Fix NowOctober DealsAmazon USDeal season is back - check today's better picksAmazon US: current deals, useful picks and tech finds.See Picks×
Skip to content
VGSources
Concat Demuxer

Fix FFmpeg Concat Errors When Looping Recorded Lessons for YouTube Live

Use the concat demuxer only when lesson streams match, fix playlist paths and timing, then loop the full list with -stream_loop -1 before its input.

By VGSources Team 5 min read

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.

Most FFmpeg concat errors come from one of four places: a malformed playlist, inaccessible file paths, lesson files whose streams or time bases do not match, or timestamps and output settings that fail later in the pipeline. For compatible files, use the concat demuxer and place -stream_loop -1 before the playlist input. For mismatched files, normalize them or join them with the concat filter and re-encode.

Choose the right concat method first

FFmpeg offers different ways to join files, and they do not solve the same problem.

Method Best fit Main trade-off
Concat demuxer Files with the same streams, codecs, and time bases Joins packet streams without re-encoding, but requires compatible inputs
Concat filter Inputs that need decoding, normalization, or a unified output Requires re-encoding and more processing
Concat protocol Compatible resources that can be joined at the file/container level Limited to compatible formats; it is not a general solution for arbitrary MP4 files

For the demuxer, matching only the file extension or video codec is not enough. FFmpeg’s concat documentation says: “All files must have the same streams (same codecs, same time base, etc.).”

Make sure FFmpeg can parse the playlist

A concat playlist is a text script, not a video file. Create a plain-text file such as lessons.ffconcat with one file directive per lesson:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
#1 Best Overall
Elebase USB to USB C Adapter for iPhone 18 Pro Max,USBC Car Charger Adapter
  • Read Before You Buy — No Video Output: These adapters support charging and USB 2.0 data transfer, but cannot transmit video signals. Except for standard USB webcams (which use USB data only), they are not compatible with HDMI/DisplayPort cables, video-capable USB-C hubs, or docking stations with video output.
  • Convert USB-A Ports to USB-C: Designed to connect USB-C earphones, cables, flash drives, card readers, and other USB-C accessories to standard USB-A ports. Plug-and-play with no drivers or software required.
  • Aluminum Alloy Housing: Built with a sturdy aluminum alloy shell that aids in heat dissipation and protects against daily wear and scratches. Designed to maintain a stable and secure connection.
  • Compact & Travel-Friendly: The ultra-compact design allows the adapter to stay plugged into your device without blocking adjacent ports or adding bulk, reducing wear and tear on your original USB ports.
  • 12-Month Warranty: Backed by a 12-month manufacturer warranty for peace of mind. Designed to meet strict quality control standards for reliable everyday performance.
ffconcat version 1.0
file 'lesson-01.mp4'
file 'lesson-02.mp4'

The header must be exactly ffconcat version 1.0 on the first line, with no extra spaces or byte-order mark. With the .ffconcat suffix, FFmpeg can auto-detect the script format; you can also specify it explicitly:

ffmpeg -f concat -safe 0 -i lessons.ffconcat -c copy joined.mp4

-safe 0 permits paths outside FFmpeg’s safe subset, including many absolute paths. Use it only with a playlist you trust: it relaxes path safety checks and does not fix malformed lines. If FFmpeg reports an unknown directive or cannot open a listed file, check the header, spelling, quoting, line endings, current working directory, and file permissions. Paths containing spaces or special characters need correct quoting or escaping; see the official concat script syntax.

Rank #2
Anker USB-C Hub, 5-in-1 USB Hub for Laptops, 4K HDMI Multiport Adapter
  • 5-in-1 USB-C Hub: Experience comprehensive connectivity featuring a Power Delivery input, two USB-A 2.0 ports, a USB-A 3.0 port, and an HDMI port. (Note: The USB-C power delivery input port is only for connecting an external wall charger to power your laptop and cannot power peripheral devices.)
  • 90W Pass-Through Charging: Achieve optimal charging with 90W pass-through power to your laptop, supported by a total input of 100W, with the hub reserving 10W for operational efficiency. (Note: Wall charger not included.)
  • Quick Data Transfers: Accelerate your productivity with rapid data transfers using a high-speed 5Gbps USB 3.0 port and two 480Mbps USB 2.0 ports.
  • 4K HDMI Display: Enhance your visual experience with a hub capable of delivering 4K resolution at 30Hz in both mirror and extend modes. Please note that this hub is compatible with MacBook (macOS 12 and newer), Windows 10 and 11, ChromeOS, and laptops equipped with DP Alt Mode and Power Delivery. Note: This device is not compatible with Linux.
  • What You Get: Anker USB-C Hub (5-in-1, 4K HDMI), welcome guide, 18-month warranty, and our friendly customer service.

Check every lesson’s streams and timing

Before changing the loop command, inspect each file with ffprobe. Compare the stream count and order, codecs, time bases, frame rates, dimensions, pixel formats, audio layouts, start times, and durations. A mismatch in stream layout or time base can make demuxer concatenation fail or produce bad transitions even when all files play individually.

ffprobe -v error -show_streams -show_format lesson-01.mp4
  • If the lesson files have matching streams, codecs, and time bases, test the concat demuxer with -c copy.
  • If they differ, create normalized intermediate files with consistent streams and settings, or use the concat filter with explicit stream mapping and re-encoding.
  • If errors appear only at file boundaries, inspect stream start times, audio and video durations, and muxer warnings. A successful playlist parse does not prove that packet parameters or timestamps are compatible.

Stream copy avoids encoding work, but it is not a universal fix. Re-encoding may be necessary to make heterogeneous lessons consistent.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #3
Sale
Anker USB C Hub, 7in1 Multi-Port USB Adapter, 4K@60Hz USBC to HDMI Splitter
  • Sleek 7-in-1 USB-C Hub: Features an HDMI port, two USB-A 3.0 ports, and a USB-C data port, each providing 5Gbps transfer speeds. It also includes a USB-C PD input port for charging up to 100W and dual SD and TF card slots, all in a compact design.
  • Flawless 4K@60Hz Video with HDMI: Delivers exceptional clarity and smoothness with its 4K@60Hz HDMI port, making it ideal for high-definition presentations and entertainment. (Note: Only the HDMI port supports video projection; the USB-C port is for data transfer only.)
  • Double Up on Efficiency: The two USB-A 3.0 ports and a USB-C port support a fast 5Gbps data rate, significantly boosting your transfer speeds and improving productivity.
  • Fast and Reliable 85W Charging: Offers high-capacity, speedy charging for laptops up to 85W, so you spend less time tethered to an outlet and more time being productive.
  • What You Get: Anker USB-C Hub (7-in-1), welcome guide, 18-month warranty, and our friendly customer service.

Loop the entire playlist as one input

Use -stream_loop -1 before the playlist’s -i. The -1 value means to loop indefinitely; FFmpeg documents this as an input option in its main options. A starting command for a real-time YouTube output is:

ffmpeg -re -stream_loop -1 -f concat -safe 0 -i lessons.ffconcat 
  -c:v libx264 -pix_fmt yuv420p -c:a aac 
  -f flv "$INGEST_URL/$STREAM_KEY"

-re paces file input in real time; it does not repair incompatible streams or bad timestamps. The example transcodes video and audio, but it is only a starting shape. Choose stream mapping, frame rate, bitrate, keyframe interval, output encoder, and destination to suit the source and YouTube’s current ingest guidance. Keep the stream key private; do not print it in logs or share it.

Rank #4
Sale
UGREEN USB to USB C Adapter Combo 4-Pack, 10Gbps USB C Converter Space Gray
  • Dual Converters, Infinite Potential:Includes 2× USB C male to USB A female adapters and 2× USB A male to USB C female adapters. Perfect for a wide range of uses—tablets with Bluetooth keyboards, expand USB ports on macbook, and more. Two different converters for all your daily needs
  • Next-Level 10Gbps & 3A Charging: No more slow 480Mbps, this usb to usb c adapter has a transfer speed of up to 10Gbps, allowing you to do more transferring in less time. This usb adapter fits both USB A and USB C charger, supporting up to 3A fast charging
  • Upgraded Exquisite Craftsmanship: With an aluminum alloy housing and metal connector, the usbc to usb adapter is extremely durable and sturdy. Rigorously tested to withstand more than 10,000 times of plugging and unplugging, ensuring long-lasting performance
  • Broad Compatible: The usb c to usb adapter widely supports all USB C/ USB A devices like laptops, tablets, cellphones, car chargers, and phone chargers. Such as compatible with MacBook Pro/Air 2023/2022, Thunderbolt 4/3 Devices,Apple MagSafe Watch 9/8/7/SE/Ultra, iPad Pro 2022/2021, Samsung Galaxy S23/S20/S10, and iPhone 17/16/15 Pro. Plug and play
  • Please Note: To reach 10Gbps speed, keep the cable under 3.3 ft. For USB A Male to USB C adapters, try flipping the USB C connector. USB C Male to USB A adapters support bidirectional 10Gbps transfer within 3.3 ft

If you intend to use -c copy, first confirm that the inputs and output muxer accept the packet streams and timestamp sequence. Test a finite run before leaving the output unattended. Looping does not remove hard cuts or source audio gaps, and it does not guarantee seamless transitions. Incorrect or missing duration metadata can also shift later timestamps; the concat demuxer supports per-file duration directives to override a duration that is wrong or absent. See the concat demuxer documentation.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Keep YouTube ingest settings separate from concat diagnosis

A playlist can parse and loop correctly while YouTube rejects or struggles with the outgoing stream. YouTube’s live encoder settings list RTMP/RTMPS, CBR, AAC or MP3 audio, and H.264, H.265, or AV1 video. YouTube recommends a two-second keyframe interval and says not to exceed four seconds. For H.264, its current guidance lists 10 Mbps for 1080p30 and 14 Mbps for 1080p60; these are YouTube recommendations for those resolution and frame-rate cases, not universal FFmpeg values.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Best Value
Anker USB C Hub, 5-in-1 USBC to HDMI Splitter with 4K Display
  • 5-in-1 Connectivity: Equipped with a 4K HDMI port, a 5 Gbps USB-C data port, two 5 Gbps USB-A ports, and a USB C 100W PD-IN port. Note: The USB C 100W PD-IN port supports only charging and does not support data transfer devices such as headphones or speakers.
  • Powerful Pass-Through Charging: Supports up to 85W pass-through charging so you can power up your laptop while you use the hub. Note: Pass-through charging requires a charger (not included). Note: To achieve full power for iPad, we recommend using a 45W wall charger.
  • Transfer Files in Seconds: Move files to and from your laptop at speeds of up to 5 Gbps via the USB-C and USB-A data ports. Note: The USB C 5Gbps Data port does not support video output.
  • HD Display: Connect to the HDMI port to stream or mirror content to an external monitor in resolutions of up to 4K@30Hz. Note: The USB-C ports do not support video output.
  • What You Get: Anker 332 USB-C Hub (5-in-1), welcome guide, our worry-free 18-month warranty, and friendly customer service.
  1. In YouTube Live Control Room, confirm the selected stream URL and stream key. YouTube documents reusable custom stream keys in its stream key help.
  2. Set the encoder to a supported protocol and codec, use CBR, and configure a keyframe interval within YouTube’s guidance.
  3. Test before going live with representative movement and audio, then monitor stream health during the broadcast.

Troubleshoot by the failure point

Symptom Likely cause What to check or change
Unknown directive or playlist parse error Header, whitespace, byte-order mark, or line syntax is wrong Use the exact first line ffconcat version 1.0; check quoting and each file directive.
FFmpeg cannot open a listed lesson Bad relative path, permissions, or path escaping Check the working directory, file access, and quoting. Use -safe 0 only for a trusted playlist when paths require it.
Concat fails on a particular file or at a boundary Streams, codecs, time bases, or stream timing differ Compare ffprobe output. Normalize the inputs or use the concat filter and re-encode.
Audio/video jumps, artifacts, or timestamps drift at transitions Duration metadata may be inaccurate, or stream durations and start times may differ Inspect durations and muxer warnings; correct duration metadata, use a per-file duration directive when appropriate, or test a normalized sequence.
FFmpeg sends data but YouTube shows an error or unstable stream Ingest URL/key, codec, bitrate mode, keyframes, or network delivery Check Live Control Room and YouTube’s encoder guidance independently of the playlist.
The stream stops after a finite period The loop option may not apply to the playlist input, or the process/output connection has failed Put -stream_loop -1 before that input’s -i; inspect FFmpeg output and YouTube stream health.

Or let it run in the cloud

If your goal is simply to keep recorded lessons playing on YouTube, StreamNeo removes the need to keep an FFmpeg process and home computer running: upload the video or build a playlist, add your YouTube stream key once, and go live. It runs in the cloud, automatically recovers if YouTube drops the stream, and streams uploads as made up to 4K 60fps for one flat price per slot. The first day is free with no card. Monthly billing is $9.99 per month. StreamNeo is for YouTube streams from uploaded videos, not camera broadcasts. Learn more at StreamNeo, or start the free first day.

What information is needed to pinpoint a specific error?

The exact command, FFmpeg version, operating system, full error text, and ffprobe output for each lesson determine which branch applies. FFmpeg’s online documentation is regenerated and may differ from an older installed build, so confirm option support against the version you are running.

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 Patch Notes

Recommended PC Tool
Recommended PC Tool
PC Slower Than It Used to Be?Free scan - under a minute
Outdated Drivers Are Slowing You DownFree scan - exact matches

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.