Hardware FixRecommendedDevice not working? Your driver may be the problemCheck updates for common hardware issues.Fix DriversHalloween DealsAmazon USHalloween week deals: useful picks before month-endAmazon 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 Now×
FREEDOM251

Freedom251 › Blog › church technology

How to Use FFmpeg to Stream a Church’s Prerecorded Sermons from a CSV Playlist to YouTube

By Freedom251 Team · · 8 min read

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

FFmpeg cannot read an ordinary CSV as a playlist. First parse the CSV and turn its validated file paths into an FFmpeg concat list; then send that sequence to the stream URL and key for a YouTube Live event. This guide shows the workflow, the compatibility checks that determine whether stream copying is safe, and how to preview and monitor the broadcast.

What you need before starting

  • An eligible YouTube channel and a scheduled or created event in YouTube Studio’s Live Control Room.
  • FFmpeg installed on the computer that will run the broadcast. The exact commands can vary by operating system and FFmpeg build.
  • A CSV playlist and the sermon video files it refers to, stored in a stable location for the event.
  • Permission to publicly stream every sermon, including any music, readings, or other material covered by third-party rights.
  • A reliable upload connection with capacity beyond the stream’s total bitrate, plus someone available to watch the preview and respond if the process stalls or exits.

YouTube’s current eligibility guidance says a channel must be verified and must not have had a live-streaming restriction in the preceding 90 days. It also states that the minimum age to live stream is 16. Confirm eligibility on the channel before scheduling a service: YouTube’s live-streaming eligibility guidance.

As an Amazon Associate I earn from qualifying purchases.

Inspect the CSV and sermon files

Check the playlist’s actual format

CSV does not define one fixed set of column names or rules. Inspect your file to identify its header, delimiter, quoting conventions, path column, and whether paths are relative to the CSV’s folder or absolute. The examples below assume the path column contains one video path per row; adapt them to your file rather than assuming a church-specific schema.

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

Check that every listed file exists, is readable, and appears in the intended order. Keep the CSV and media in a stable location while the event runs. If filenames contain commas, quotes, apostrophes, or other unusual characters, use a real CSV parser and correctly escape paths for FFmpeg’s concat-list syntax; do not build a shell command by interpolating raw CSV cells.

#1 Best Overall
KOTIN Prebuilt Gaming PC RTX 5070 12GB, Ryzen 7 9700X, 32GB DDR5, 1TB SSD | 11.3in Smart Display, 850W 80+ Gold PSU, 360mm Liquid Cooler, WiFi 7, 1440p 4K ARGB Windows 11 Gaming Desktop Computer
  • POWERED BY RTX 5070 12GB + RYZEN 7 9700X - The GeForce RTX 5070 12GB GDDR7 graphics card pairs with an 8-core AMD Ryzen 7 9700X processor to drive smooth 1440p and 4K gameplay, giving this gaming PC the headroom for modern titles, streaming, and creative work.
  • 32GB DDR5 6000MHz MEMORY & 1TB NVMe SSD - 32GB of high-speed DDR5 memory and a 1TB PCIe 4.0 NVMe solid state drive deliver quick load times, smooth multitasking, and generous storage, keeping this prebuilt gaming desktop responsive under heavy workloads.
  • BUILT-IN 11.3-INCH Smart DISPLAY - An integrated smart screen shows real-time CPU and GPU temperatures, usage, and weather while you play, adding a distinctive and functional touch to your battlestation.
  • 850W 80+ GOLD POWER SUPPLY, 360MM LIQUID COOLING & WiFi 7 - An 850W 80 Plus Gold certified power supply provides stable, efficient power with headroom for future upgrades, while a 360mm AIO liquid cooler, WiFi 7, and an ARGB mid-tower case keep the Ryzen 7 CPU cool and connected in a clean build.
  • READY TO PLAY OUT OF THE BOX - Arrives fully assembled and tested with Windows 11 Home pre-installed, so your prebuilt gaming computer is ready to set up in minutes. Assembled in the USA, and backed by a one-year limited warranty and lifetime free technical support.

Confirm streaming rights

Having a recording does not necessarily mean the church has permission to broadcast every element in it. Check that the church has rights for public live streaming of the sermon and any embedded music, slides, video clips, or readings. YouTube may interrupt or restrict a stream when content-rights rules are triggered.

Convert the CSV into an FFmpeg concat list

FFmpeg’s concat demuxer reads a text file in its own format, not a comma-separated spreadsheet. After parsing and validating the CSV, generate a separate text file such as sermons.ffconcat. For two compatible videos, it can look like this:

ffconcat version 1.0
file 'media/sermon-01.mp4'
file 'media/sermon-02.mp4'

The header must be exactly ffconcat version 1.0 on the first line for automatic format recognition. Each file entry names one video; entries play in order. Relative paths are interpreted from the process’s working directory, so run FFmpeg from a predictable directory or generate paths with that in mind.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #2
Skytech Gaming PC Shadow 5, Ryzen 7, RTX 5060 Ti 8GB, 16GB RAM, 1TB SSD | Windows 11, AMD 8700F, NVIDIA 5060 Ti 8G, NVMe SSD, DDR5 6000, 750W GOLD PSU, Wi-Fi 5, Desktop
  • AMD Ryzen 7 8700F 4.1GHz (5GHz Turbo Boost) CPU Processor | 1TB NVMe M.2 SSD – Up to 30x Faster Than Traditional HDD | High-Performance Air Cooler
  • NVIDIA GeForce RTX 5060 Ti 8GB GDDR7 Graphics Card (Brand may vary) | 16GB DDR5 RAM 6000 Non-RGB Gaming Memory with Heat Spreader | Windows 11 Home
  • WI-FI 5 802.11ac | No Bloatware | Graphic output options include 1 x HDMI, and 1 x Display Port Promised, Additional Ports may vary | USB Ports Including 2.0, 3.0, and 3.2 Gen1 Ports | HD Audio & Mic | Free Gaming Keyboard & Mouse
  • High-Performance Air Cooler: Maximum Airflow & ARGB Fans | Skytech Shadow 5 Gaming Case with Tempered Glass, Black | 1 Year Warranty on Parts and Labor | Free Technical Support | Assembled in the USA
  • This powerful gaming PC is capable of running all your favorite games such as Elden Ring Nightreign, Baldur's Gate 3, Cyberpunk 2077, Hogwarts Legacy, Helldivers 2, Diablo IV, Starfield, Valorant, Counter-Strike 2, Forza Horizon 5, Resident Evil 9, Alan Wake 2, Warhammer 40,000: Space Marine 2, God of War Ragnarök, Overwatch 2, Dragon's Dogma 2, Marvel's Spider-Man, Clair Obscur: Expedition 33,, more at Ultra settings, detailed 1080p Full HD resolution, and smooth 60+ FPS gameplay.

Keep FFmpeg’s safe-path handling enabled when practical. Its concat demuxer rejects certain unsafe paths by default. Setting -safe 0 allows any filename and can expose files beyond the intended media folder if untrusted CSV content reaches the list. Use it only when a trusted workflow genuinely requires paths rejected by safe mode, and validate and constrain every input first. See FFmpeg’s concat demuxer documentation.

Check whether the videos can be concatenated without re-encoding

Stream copying avoids decoding and encoding the video again, but it is not a universal fix for a mixed folder of recordings. FFmpeg’s concat demuxer expects the files to have compatible streams, codecs, and time bases. Compare representative files before choosing the output method; inspect stream details with a media probe such as ffprobe, which is distributed with many FFmpeg builds.

Use the concat demuxer for compatible sources

If the inputs have matching stream layouts and compatible codecs and time bases, the concat demuxer can feed them consecutively without re-encoding. Later timestamps are adjusted using earlier file durations. If a duration is missing or inaccurate, transitions may have gaps, timing problems, or audio/video artifacts. Test the complete playlist or a representative sequence before the service.

Rank #3
msi Codex Z2 Gaming Desktop, AMD R7-8700F, RTX 5070, 32GB DDR5, 2TB SSD | NVIDIA GeForce RTX 5070, USB Type-C, VR-Ready, Windows 11 Home. Model A8NVP-436US
  • POWERHOUSE 8-CORE GAMING PERFORMANCE — Driven by the AMD Ryzen 7 8700F with 8 cores and 16 threads, boosting up to 5.0 GHz for smooth, responsive gameplay and the ability to handle AAA titles, streaming, and background tasks all at once
  • NEXT-GEN BLACKWELL ARCHITECTURE — The NVIDIA GeForce RTX 5070 is powered by NVIDIA's cutting-edge Blackwell GPU architecture, delivering a massive generational leap in rasterization and ray tracing performance so you can experience your games the way they were meant to be played.
  • Simplistic Design: Enjoy the latest generation of Windows 11 Home for your everyday needs. *MSI recommends Windows 11 Pro for business use.
  • Cool While Gaming: In conjunction with an ARGB fan Air Cooler, the Codex R2 features four system cooling fans; three in the front and one in the rear to pull in cool air and push heat out of the PC.
  • Turn on the Bright Lights: With the built-in RGB lighting, take your gaming experience to the next level by pressing the MSI LED button to cycle through lighting options. Customize lighting even further with MSI Center software.

Use a re-encoding workflow for incompatible sources

If files differ in resolution, frame rate, codecs, stream layout, or other relevant properties, normalize them to a common format or use FFmpeg’s concat filter and re-encode to consistent output parameters. The filter is the appropriate concat approach when re-encoding is required; it involves more processing and should be tested on the actual recordings. FFmpeg distinguishes these approaches in its concatenation FAQ. Neither method guarantees seamless joins across arbitrary files without checking the results.

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

Create a YouTube Live event and protect its key

  1. In YouTube Studio, open Live Control Room and create or schedule the live event.
  2. Open the event’s stream settings and copy the stream URL and stream key shown there. Use that event’s actual values; do not assume a sample endpoint applies to every account or event.
  3. Use RTMPS where available. RTMPS is RTMP protected by TLS/SSL, and YouTube recommends it for encoder streams.
  4. Keep the stream key secret. YouTube describes stream keys as like the stream’s password and address. Do not put a real key in a public script, repository, screenshot, or article.

See YouTube’s encoder setup instructions for the event workflow and current account guidance, and its RTMPS guidance for the protected protocol.

Choose encoder settings for the source and event

For RTMP or RTMPS, YouTube’s current encoder guidance lists H.264, HEVC, and AV1 as supported video codecs, with format-specific conditions; it lists AAC or MP3 audio and supports up to 60 frames per second. For a straightforward SDR sermon feed, H.264 video with AAC audio is a practical example, not a requirement that overrides the event’s format or the current YouTube guidance.

Rank #4
YAWYORE Gaming PC Desktop Computer AMD R5 5600GT 16GB 1TB NVMe Towers WiFi | 16GB DDR4 3200MHz, 1TB M.2 NVMe PCIe, 550W 80PLUS PSU, WiFi BT, Game Design Office Console
  • Powerful Processor: AMD Ryzen 5 5600GT 3.6GHz (4.6GHz Turbo) 6-Core 12-Thread processor brings faster response time to easily handle multi-threaded tasks
  • Motherboard Specification: MSI A520M-A PRO motherboard provides reliable performance and expandability for your computing needs
  • Integrated Graphics: AMD Radeon Vega Graphics (CPU Integration) enables you to play 1080P mainstream games at quality frame rates
  • Memory and Storage: 16GB DDR4 3200MHz RAM paired with 1TB M.2 NVMe PCIe SSD for fast multitasking and quick data access
  • Power Supply: 550W 80PLUS Bronze certified power supply ensures stable and energy-efficient operation

YouTube recommends constant bitrate (CBR) and a 2-second keyframe interval, and says not to exceed 4 seconds. Its guidance gives bitrate recommendations by resolution, so choose a value for the actual output resolution and frame rate rather than treating one bitrate as universal. Match the resolution to the source and the desired viewing quality; avoid upscaling a low-resolution recording merely to select a higher bitrate. Review YouTube’s current live encoder settings and bitrate table before the event, since recommendations can change.

Send the playlist to YouTube with FFmpeg

The command shape below uses stream copying and is only appropriate if the playlist’s media streams are compatible and already meet the selected YouTube output requirements. The environment variables keep the secret out of the command text, but they are not a complete secret-management system: avoid shared accounts and inspect your shell’s history and process visibility. The exact output URL syntax depends on the URL YouTube provides and the installed FFmpeg build.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
export YT_URL='paste-the-event-URL-shown-by-YouTube-here'
export YT_KEY='paste-the-event-stream-key-here'

ffmpeg -re -f concat -safe 1 -i sermons.ffconcat 
  -c copy -f flv "${YT_URL}/${YT_KEY}"

This is a shell example for environments such as Linux and macOS; shell syntax differs on Windows. It assumes the event endpoint is suitable for the shown URL form and that the concat list’s relative paths resolve from the current directory. Do not publish the event URL or key. If YouTube supplies an endpoint/key arrangement that does not fit that form, follow the endpoint format shown for the event and the output options supported by your FFmpeg build.

Best Value
Sale
suevery Gaming PC Desktop Computer Ryzen 5,16GB DDR4 512G SSD, RX 560 4G | 6-Core Up to 4.1GHz | RGB Prebuilt Tower | Wi-Fi 6 Gamer for Student Home Office Black
  • 【6-Core Ryzen 5 Prebuilt Gaming PC | Smooth Large Game & Streaming Performance】 The Suevery prebuilt gaming PC features an Ryzen 5 6-Core processor (3.6GHz Base, 4.1GHz Boost) and Radeon RX 560 4GB Graphics Card. It delivers lag-free gameplay for large games, seamless high-definition streaming, and smooth creative software operation, meeting gamers and content creators' reliable performance needs.
  • 【16GB DDR4 RAM + 512GB NVMe SSD | Blazing-Fast Boot & Load Speeds】 16GB DDR4 RAM supports simultaneous operation of multiple games, browser tabs and office apps without slowdowns. The 512GB NVMe SSD (up to 30x faster than traditional HDDs) enables fast boot-ups, instant game loads and quick file transfers, with ample storage for games, videos and work files.
  • 【Wi-Fi 6 Gaming Tower | Versatile Connectivity for Multi-Scenarios】 This tower gaming desktop has Wi-Fi 6 for fast, stable wireless internet, ideal for online gaming and high-definition streaming. It also includes 2× USB 3.0 and 4× USB 2.0 ports to connect peripherals, storage and office devices, suitable for gaming, home and office use.
  • 【RGB Cooling System | Stable Operation】 The advanced air cooling system with customizable RGB fans keeps the gaming tower PC cool and quiet during intense gaming. Optimized airflow maintains optimal component temperatures, preventing overheating and ensuring stable performance for long gaming sessions or heavy office workloads. Sleek RGB lighting adds a gaming-inspired aesthetic.
  • 【Prebuilt Tower PC | Adapt to Gaming/Work/Home/Office】 This prebuilt tower gaming PC is versatile for streaming, work, home and office tasks—from video editing and design software to daily office work and browsing. Ready to use with no extra setup, it meets the needs of gamers, remote workers and home users.

-re reads the files at their native rate rather than sending the entire recording sequence as fast as possible. -f concat selects the concat demuxer, -safe 1 keeps safe-path checks enabled, and -c copy avoids re-encoding. The example does not force a resolution, bitrate, frame rate, or keyframe interval; copied streams retain their existing encoding. If they do not meet the event’s requirements or are incompatible with one another, use a tested re-encoding workflow with explicit video and audio settings instead of assuming this command will work.

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

Preview, start, and monitor the broadcast

  1. Start FFmpeg and wait for the event’s Live Control Room preview to show the incoming feed.
  2. Check video, audio, the first transition, and the sequence order in the preview before making the stream public or starting the event.
  3. Confirm the live page is accessible as intended, then monitor Live Control Room’s stream health during the broadcast.
  4. Keep an operator available to investigate a stalled feed, stop or restart FFmpeg, and confirm which sermon should play next if the process exits.

Leave upload headroom beyond the stream’s total bitrate so other network use and connection variation do not consume the whole available capacity. YouTube says streams under 12 hours are automatically archived; confirm current account and event settings, and do not assume an archive will be available for a longer stream.

Plan for a finite playlist, not an automatic 24/7 schedule

The concat demuxer plays the listed files in sequence and then reaches the end of the list. It does not automatically repeat the CSV, watch for new rows, restart itself after a failure, or schedule a new day’s playlist. Continuous unattended operation requires a separately designed wrapper or scheduler that handles looping or playlist updates, process failures, logging, and supervision. The right implementation depends on the church’s operating system and schedule; those details are not specified here.

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

Troubleshoot common problems

  • FFmpeg says a file cannot be opened: Check the spelling, permissions, working directory, and whether each relative path is based where you expect. If safe mode rejects a path, prefer generating safe relative paths; only consider -safe 0 for validated, trusted inputs.
  • The list is treated as malformed: Confirm it is a text concat list rather than the original CSV, that the header is exact and on line one, and that every entry uses file 'path' syntax. Escape unusual path characters correctly.
  • FFmpeg reports mismatched streams or the joins glitch: Probe the files for differences in streams, codecs, time bases, and durations. Use compatible files with the demuxer, or normalize/re-encode with a concat-filter workflow; test transitions before going live.
  • YouTube does not receive a signal: Recheck that the event is live or ready to receive an encoder, that the stream URL and key belong to that event, and that the URL form matches YouTube’s endpoint. Keep the key private while correcting it.
  • The feed is rejected or has poor quality: Compare the actual codec, bitrate, resolution, frame rate, audio format, and keyframe interval with YouTube’s current recommendations for that format. A stream-copy command cannot change those properties.
  • The stream drops or stops early: Check the upload connection and FFmpeg’s output, then have an operator restart or investigate the process. A finite list ending normally is different from a crashed process; neither behavior creates a repeating schedule by itself.

Or let it run in the cloud

If the goal is to keep prerecorded sermons looping on a YouTube channel without leaving a church computer running, StreamNeo is a cloud alternative to operating FFmpeg locally. Upload a recording or build a playlist, add the YouTube stream key once, and go live. StreamNeo plays uploaded videos rather than broadcasting from a camera, and its service streams to YouTube only.

  • Nothing has to stay powered on at the church; the stream runs from the cloud.
  • Videos stream as uploaded, up to 4K 60fps, at one flat price per slot rather than quality-based tiers.
  • StreamNeo automatically recovers if YouTube drops the stream.
  • The first day is free with no card required; it is one free day per account.
  • Monthly: $9.99 per month.

Try StreamNeo’s free day by creating a StreamNeo account.

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.

church technologyCSV PlaylistFFmpeglivestreamingYouTube Live

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.

Recommended PC Tool
Recommended PC Tool
Outdated Drivers Are Slowing You DownFree scan - exact matches
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.