Hardware FixRecommendedDevice not working? Your driver may be the problemCheck updates for common hardware issues.Fix DriversOctober 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 Now×
Skip to content
DocumentaryTube
Admit one · Blog

How to Run a YouTube Radio Livestream in Docker with FFmpeg

A practical guide to looping prerecorded audio and video into YouTube Live with FFmpeg in Docker, from stream-key setup and encoder settings to recovery and testing.
Opened Runtime7 min Written byDocumentaryTube Team
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

You can run a prerecorded radio program or playlist as a YouTube Live broadcast by running FFmpeg in a Docker container. FFmpeg supplies the audio and a video track—often a still image, visualizer, or looping video—while Docker packages the encoder and can restart its container after an exit. YouTube must have live streaming enabled for your channel, and the host needs reliable upload capacity for the stream’s total bitrate.

What you need before you start

  • A YouTube channel eligible for live streaming. YouTube says channels need verification and no live-streaming restriction in the preceding 90 days; its current guidance also says streamers must be at least 16. Check the channel’s eligibility and enablement before troubleshooting the encoder. YouTube: Get started with live streaming.
  • A prerecorded audio program or playlist, plus a video source for a conventional audiovisual live stream. A still image, visualizer, or looping video can accompany the audio; the right FFmpeg setup depends on which assets you have.
  • A host with Docker, an FFmpeg image or build that includes the codecs and protocols you need, and sufficient sustained outbound bandwidth.
  • The stream URL and key for the YouTube event. Treat the key like a password: YouTube describes stream keys as “your YouTube stream’s password and address.” YouTube: Manage live stream settings.

Enable the YouTube stream and protect its key

  1. In YouTube Studio, open Live Control Room and create or select the stream you plan to use.
  2. Open the stream settings and copy the server URL and the matching stream key. Use the details for the selected event; do not mix a URL or key from a different stream. YouTube’s encoder setup guide explains the workflow.
  3. Prefer RTMPS where available. YouTube recommends the encrypted protocol and explains how to reveal and copy its RTMPS URL in its RTMPS instructions.
  4. Store the key as a secret, not in a public repository, screenshots, or logs. If you expose it, reset it in stream settings. Docker supports secret mechanisms, but how the secret is delivered to the application depends on your deployment and image.

Choose the media and encoding settings

FFmpeg reads inputs, selects or maps streams, applies encoding options, and writes to the output URL. Option order matters: most options apply to the next input or output. The -stream_loop -1 option loops an input indefinitely. See the FFmpeg command documentation.

One audiovisual file

If a single file already contains both audio and video, loop it and map the desired streams explicitly. For a static radio visual, a modest resolution and frame rate may be sufficient; use the current YouTube bitrate guidance for the chosen codec, resolution, and frame rate.

Separate audio and visual inputs

For separate files, make sure FFmpeg creates a video track as well as the audio track. Map the intended streams explicitly; do not assume an audio-only input will create the standard video stream expected by your YouTube event. A still image requires a video stream with an appropriate duration and frame rate. Check timestamp and duration behavior in a short unlisted test before relying on it for a long broadcast.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
#1 Best Overall
Sale
KAMRUI Pinova P2 Mini PC, AMD Ryzen 7330U(4 Cores, 8 Threads, Up to 4.3GHz), 16GB RAM 256GB SSD, Zen3 Architecture 7nm Processor, 8MB L3 Smart Cache Mini Computers,Triple 4K Display Home/Business
  • 【AMD Ryzen 7330U】 – The Efficiency-Tuned Powerhouse,AMD Ryzen 7330U (Zen 3, SMT, 4C/8T) in KAMRUI P2 mini PC crushes rivals: Intel i3-10110U (2C/4T, 2019) and N95 (4 efficiency cores, no HT, single-channel memory). Vs predecessor Ryzen 3 4300U (4C/4T): ~50% faster single-core, ~46% multi-core, 8MB L3 cache (vs 4MB). Beats both Intel chips hugely in multi-core, making heavy multitasking, coding, data work smooth at just 15W TDP. High-end power in a cool, efficient box.
  • 【AMD Radeon Graphics】– Triple 4K Vision & Fluidity,The integrated Radeon Graphics (based on the modern Vega architecture with 6 CUs) is a visual beast, outclassing the iGPU offerings from both AMD's prior generation and Intel. The Intel UHD Graphics (i3-10110U/N95) struggles with single-channel memory and low execution units, crippling its gaming performance and barely handling basic 4K video without stuttering. While the older Radeon Vega 5 (4300U) was decent, our 7330U's Radeon Graphics (6 CUs) pushes the boundaries, delivering higher graphics clock speeds (up to 1.8GHz) and significantly better rendering capabilities. It can drive triple 4K@60Hz displays with zero lag, edit photos/videos.
  • 【Generous Storage & Easy Expansion】The KAMRUI Pinova P2 mini desktop computers comes with 16GB LPDDR4X RAM (higher frequency, lower power) for buttery‑smooth multitasking, and a 256GB M.2 SSD for blazing fast boot‑up, quick file transfers, and no more long loading screens. It also features two storage expansion slots (1x M.2 2280 SATA/NVMe PCIe 3.0 slot + 1x M.2 2280 SATA slot), supporting up to 4TB total (not included). You’ll have all the space you need for projects, media, and important data.
  • 【Triple 4K Display Output】The KAMRUI Pinova P2 mini desktop pc is equipped with HDMI 2.0 ×1 + DP 1.4 ×1 + USB 3.2 Gen2 Type‑C ×1 (with DP Alt Mode), enabling simultaneous triple 4K@60Hz output. Whether for home entertainment, remote work, or conference room presentations, it delivers an immersive visual experience. Two USB 3.2 Gen2 Type‑A ports (up to 10Gbps – 21x faster than USB 2.0) make data transfers and device expansion a breeze.
  • 【USB 3.2 Gen2 Type‑C: 10Gbps & Versatile Connectivity】The USB 3.2 Gen2 Type‑C port on the KAMRUI P2 small pc supports 10Gbps data transfer speeds and can also output DisplayPort 1.4 video. Together with Gigabit LAN, Wi‑Fi, and Bluetooth, you get a fast, flexible, and productive connected environment – wired or wireless.

Use YouTube’s current encoder guidance

YouTube currently lists H.264, H.265, and AV1 video support for RTMP/RTMPS ingestion, AAC or MP3 audio, constant bitrate encoding, and a recommended two-second keyframe interval that should not exceed four seconds. The bitrate depends on codec, resolution, and frame rate; use the values in YouTube’s encoder settings, rather than treating one bitrate as universal. For reference, the page lists H.264 at 720p/30 fps as 3 Mbps recommended, and H.264 at 1080p/30 fps as 5 Mbps minimum and 14 Mbps recommended. It recommends 128 Kbps AAC audio for stereo.

A broadly compatible starting point for standard dynamic-range video is H.264 video with AAC stereo audio. Confirm the actual FFmpeg build includes the encoder you choose—for example, libx264—and supports the protocol you intend to use. YouTube’s settings can change, so recheck its current table when configuring a stream.

Rank #2
Getorli Mini PC AMD Ryzen 5 3500U (4C/8T, Max 3.7GHz) Small Desktop Computer 16GB DDR4 RAM 512GB NVMe SSD Budget Micro Compact PCs 4K HD Dual HDMI WiFi 6 BT5.3 Prebuilt OS-Home Office Gaming Streaming
  • 【Great power in a small computer】Get fast performance from the AMD Ryzen 5 3500U ​CPU (2.1GHz-3.7GHz, 4 Cores 8 Threads) inside this mini pc, TDP 15W up to 25W. It's perfect for all your home office​ and business use, like daily computing, web browsing, and smooth media streaming. This small desktop computer​ handles everyday tasks easily and quietly.
  • 【Work on many things at once with lots of storage】This mini PC comes with 16GB of fast DDR4 RAM (expandable up to 32GB), allowing you to smoothly run multiple programs, dozens of browser tabs, and large files all at once. It also features a spacious 512GB NVMe SSD that provides ample storage and delivers dramatically faster boot-ups, app launches, and file transfers compared to a traditional hard drive.
  • 【See everything clearly on one or two 4K screens】Connect one or two monitors for more space to work or play. Dual HDMI ports​ on this mini pc​ support super sharp 4K Ultra HD​ video. It's great for doubling your work area for business​ or watching movies in high definition.
  • 【Fast modern connections in a tiny box】Enjoy a better and more stable internet connection with the latest WiFi 6. Use Bluetooth 5.3​ to connect wireless headphones, keyboards, and mice without wires. This small pc​ is very compact​ to save desk space and has extra USB ports (USB 2.0×2, USB 3.0×2, Type-c 2.0×1, Type-c 3.2 full featured×1, HDMI×2) for your printer, webcam, or other computer accessories.
  • 【Reliable Warranty and Support】We provides 1 year warranty for each Mini computers. So you don't need to worry about any product problems. If you have any questions about the product, please contact our customer service, we will provide 24-hour professional technical support and serve you at any time.

Example FFmpeg command

This example shows the shape of a looped audiovisual-file command, not a tested universal recipe. Replace the file, encoding values, and endpoint with your actual choices. Set the URL and key securely in your environment or deployment; never paste a real key into a shared command, source file, or log.

ffmpeg -re -stream_loop -1 -i /media/program.mp4 
  -map 0:v:0 -map 0:a:0 
  -c:v libx264 -preset veryfast -tune stillimage 
  -r 30 -g 60 -keyint_min 60 -sc_threshold 0 
  -b:v 2500k -maxrate 2500k -bufsize 5000k 
  -c:a aac -b:a 128k -ar 44100 
  -f flv "${YOUTUBE_RTMP_URL}/${YOUTUBE_STREAM_KEY}"

The example’s 30 fps, two-second GOP, and bitrate values are illustrative settings, not values appropriate for every resolution, codec, or connection. Pick the bitrate from YouTube’s table for your chosen output, including audio in your bandwidth planning. If your inputs are separate, adapt the input options, stream mapping, and duration handling accordingly.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #3
BOSGAME E5 11 Pro Mini PC, AMD Ryzen 5300U 4C/ 8T, Business Home Office PC
  • 【AMD Ryzen 3 5300U CPU: Outperforms N150 & 3500U】 BOSGAME E5 mini PC is powered by the TSMC 7nm FinFET architecture AMD Ryzen 3 5300U processor (4 Cores, 8 Threads, up to 3.8GHz boost, 6MB total cache). Compared to low-end Intel N150 or 3500U chips which only have 4 single threads and throttle under load, the 5300U delivers over 30% faster multi-core speed. Run 30+ browser tabs, large Excel sheets, and Zoom meetings simultaneously without system lag.
  • 【8GB DDR4 RAM & 256GB NVMe SSD Storage】 Installed with high-speed 8GB DDR4 dual-channel memory and a fast 256GB M.2 2280 SSD, eliminating slow boot times and application loading delays. To accommodate growing data requirements, the upgradeable hardware design features dual SODIMM slots that allow you to expand memory up to 64GB RAM, ensuring smooth operation during heavy multitasking.
  • 【High-Capacity Dual M.2 SSD Storage Expansion】 Never worry about running out of space for your business files. In addition to the pre-installed 256GB system drive, the motherboard houses an extra empty internal M.2 2280 NVMe PCIe 3.0 slot. This allows you to easily add a second solid-state drive for up to an additional 2TB of storage capacity (upgrades not included) without needing to remove or reinstall the original operating system.
  • 【Radeon 6-Core Graphics & Triple 4K Displays】 Integrated with official AMD Radeon Graphics (6 Graphics Cores, 1500 MHz frequency) for casual gaming, photo editing, and crisp 4K media decoding. Featuring 1x HDMI 2.0 port, 1x DisplayPort, and 1x Full-Function Type-C port, the E5 outputs true 4K@60Hz resolution to three monitors at once. This multi-screen setup eliminates constant window-switching for traders, programmers, and office workers.
  • 【Dual 2.5GbE LAN Ports for Advanced Networking】 Experience fast wired network transmission speeds up to 2500Mbps without lagging or buffering. The integration of dual 2.5 Gigabit Ethernet ports (powered by Realtek RTL8125 controller) makes this compact computer an exceptional hardware choice for tech enthusiasts. Easily configure it into software routers, hardware firewalls (pfSense, OpnSense), home NAS servers, or local homelabs.

Run FFmpeg in Docker Compose

Use a maintained image or build your own reproducibly with the FFmpeg codecs and protocol support you have verified. Run one foreground FFmpeg process per service, mount media read-only when practical, and configure the secret delivery to match how your image reads it. The following is only a structural sketch: it intentionally does not invent an image name or a complete secure command.

services:
  radio:
    image: your-tested-ffmpeg-image
    command: ["/bin/sh", "-c", "exec ffmpeg ..."]
    volumes:
      - ./media:/media:ro
    restart: unless-stopped
    secrets:
      - youtube_stream_key

secrets:
  youtube_stream_key:
    file: ./secrets/youtube_stream_key

Compose describes service images, commands, environment, and volumes in its service reference. Secret delivery and application access must be configured together for the image you use. Docker advises using secrets for sensitive data rather than environment variables; if you use an .env file for local development, keep it out of version control and restrict its permissions. See Docker’s environment-variable guidance.

Rank #4
GMKtec M5 Ultra Gaming Mini PC Ryzen 7 7730U 32GB RAM 512GB SSD Desktop
  • Office Gaming Mini PC - UPGRADED GMKtec Nucbox M5 Ultra Series is equipped with the powerful AMD Ryzen 7 7730U processor, 8 Cores/16 Threads, Base 2.00GHz (Power Saving Quiet Mode) with Turbo Boost up to 4.50GHz (Performance Mode) in BIOS settings, Based on the ZEN 3+ architecture, this small but powerful mini pc delivers satisfying results in productivity, office work, and gaming. 35% Performance increase over AMD Ryzen 5 7430U/ Ryzen 7 5700U, 5600U, 5560U, 5500U.
  • 32GB DDR4 RAM & 512GB PCIe SSD - Installed with DDR4 32GB RAM Dual Channel (2x16GB), the Nucbox M5 Plus mini pc support expansion to 64GB RAM. Featured with 512GB M.2 2280 PCIe 3.0 SSD, support dual slot expansion to 4TB SSD. (Upgrades not included)
  • DUAL NIC LAN 2.5G RJ45 - Fast Network Speeds: Enjoy up to 2500Mbps data transmission speed without worrying about lagging. Ideal for working, gaming, and surfing the internet. Great for Untangle, Pfsense or as a server office PC.
  • Mini Desktop Computer with 4K Triple Screen Display - Nucbox M5 Ultra integrates AMD Radeon Graphics 8 Cores 2000 MHz GPU to deliver powerful graphics processing power to easily handle the demands of complex design software, 4K@60Hz UHD video editing, and playback. It can connect to 3 display screens simultaneously.
  • Fast Internet WiFi 6E + BT5.2 Connection - GMKtec Mini PC with WiFi-6E Wireless, have 2.5G/5G/6G triple band, more faster and lower latency. Bluetooth 5.2 allowing you more quickly to connect other wireless devices (headset, mouse, keyboard, etc.) Interface features 2*USB3.2 ports, 2*USB2.0 ports, 1*HDMI 2.0 port(4K@60Hz), 1*USB-C port(PD/DP/DATA), 1*DP Port, 1*Audio 3.5mm (HP&MIC), 1*DC Power Port.

Understand what the restart policy does

restart: unless-stopped can restart an exited container and generally leaves it stopped after a deliberate manual stop, including after a daemon restart. Docker notes that restart policies apply after the container has started successfully. They manage container lifecycle; they do not prove that YouTube is receiving a healthy stream. Review Docker’s restart-policy documentation.

Test the broadcast and monitor it

  1. Start with a private or unlisted test event. YouTube recommends configuring the encoder in advance and checking the Live Control Room preview before going live. See its live streaming tips.
  2. Confirm the media decodes, the video is visible, and the audio is audible without clipping. Check that the correct event appears in Live Control Room.
  3. Watch YouTube’s stream health and encoder preview while the test is running. Try audio and motion representative of the real program rather than testing only a static screen.
  4. Ensure sustained upload capacity exceeds the combined stream bitrate. YouTube recommends 20% upload headroom; if you send primary and backup streams, account for their combined bitrate. Its streaming tips explain the recommendation.
  5. After the test is healthy, use the intended visibility and schedule. YouTube says streams under 12 hours are automatically archived; do not assume a longer session will be automatically archived. Follow the encoder workflow to stop the encoder and end the event appropriately.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Recover from network interruptions

Docker’s restart policy can restart FFmpeg if the process exits, but it cannot necessarily detect an encoder process that is still running after a connection failure. FFmpeg’s FIFO muxer documents recovery options for temporary RTMP failures. Its documentation gives an example using -f fifo, -fifo_format flv, -attempt_recovery 1, and -recovery_wait_time 1; the example attempts recovery every second indefinitely. Consult the FFmpeg all-options documentation, check that your installed version supports the options, and test actual recovery on your host and connection. Neither method is an end-to-end uptime guarantee.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Best Value
GMKtec Mini PC, G3 PRO Intel Core i3-10110U (Beats 4300U/N150), 16GB DDR4 RAM (Dual Channel) 512GB Storage Drive, Desktop Computer 4K Dual HDMI/USB3.2/WiFi 6/BT5.2/2.5GbE for Office, Business
  • WHY CHOOSE CORE I3-10110U - Better single-core performance: The Core i3-10110U has a higher peak boost clock (4.1 GHz) compared to the Ryzen 3 4300U and the Intel Alder Lake N150 series, making it better for tasks that rely on fast single-core performance (e.g., web browsing, office apps). Better multi-thread performance via Hyper-Threading: the Core i3-10110U offers better performance in multi-threaded workloads compared to the Ryzen 3 4300U, especially for light productivity work and multitasking.
  • 16GB RAM MEMORY & 512GB SSD STORAGE - GMKtec Nucbox G3 PRO mini pc is prebuilt with 16GB DDR4 RAM SO-DIMM DUAL CHANNEL, you will enjoy a speedier experience with Built-in 512GB M.2 Hard Drive. Our mini desktop pc boots up in seconds, work on multiple browser tabs, software applications and quickly transfers files. There is a primary slot and secondary expansion storage. Primary slot is M.2 2280 PCIE/SATA and secondary slot is M.2 2242 SATA .
  • RICH INTERFACE - Nucbox core i3 mini computer is equipped with USB 3.2*4,up to 5Gbps/S, HDMI(4K@60Hz)×2, 3.5mm Audio Jack. Supports WiFi 6, and Gigabit Ethernet RJ45 2.5GbE network connectivity, Bluetooth 5.2. This Mini PC supports multiple device connection and can be used with servers, monitoring equipment, office equipment, displays, projectors, televisions, etc.
  • 4K DUAL SCREEN DISPLAY - Mini desktop computer is equipped with upgraded Intel Graphics(max 1000MHz), supports 4K video playback and AV1 decoding, connect the pc with a projector as a home theatre, enjoy a variety of entertainments. Two HDMI 2.0 ports allows you to multi-task efficiently on two 4K@60Hz displays.
  • UPGRADED COOLING FAN - The G3 PLUS has upgraded the cooling fan to reduce fan noise and thermals. We are using an upgraded thermal paste as well to help reduce heat on the CPU.

Troubleshooting

Symptom Likely checks and fixes
FFmpeg cannot connect to YouTube Verify the event’s server URL and matching key, check whether you configured RTMP or RTMPS as intended, confirm host egress and firewall access, and verify that the FFmpeg build supports the protocol. If the key may be invalid or exposed, replace it from Live Control Room. See YouTube RTMPS troubleshooting and YouTube stream troubleshooting.
Live Control Room shows no video Make sure the output includes a video stream. For separate audio and image inputs, create the video track and map it alongside audio; inspect the command’s input indexes and stream mappings.
Audio or video ends unexpectedly Check which input is being looped, whether the inputs have different durations, and how timestamps and end-of-file behavior are handled. Test the exact media combination briefly before deploying it for a long event.
Stream health is unstable Check sustained outbound capacity against the total audio and video bitrate, including any backup stream, and leave YouTube’s recommended 20% headroom. Lower the chosen output bitrate or resolution if the connection cannot sustain it; validate the result in Live Control Room.
Container restarts but stream still does not recover A restart policy only acts when the process exits; it is not a stream-health monitor. Inspect FFmpeg output and YouTube stream health, then test whether FFmpeg’s FIFO recovery options work with the installed build and the actual RTMP/RTMPS path.
Container exits immediately Check the image’s FFmpeg build and codec availability, command quoting, mounted file paths and permissions, and whether the selected inputs can be opened. Review logs carefully to ensure they do not disclose the key.

Or let it run in the cloud

If managing a Docker host, media mounts, key handling, upload capacity, and reconnect behavior is more work than you want, StreamNeo is a cloud service for keeping a YouTube channel live from uploaded videos. Upload a recording or build a playlist, add your YouTube stream key, and go live. Nothing has to stay on at home; it streams the uploaded quality up to 4K 60fps at one flat price per slot, automatically recovers if YouTube drops the stream, and the first day is free with no card. Monthly is $9.99 per month. StreamNeo is for YouTube and plays uploaded videos; it does not stream from a camera. Learn more at StreamNeo, or start the free first day.

For rights checks before broadcasting, use the copyright safety checklist. A prerecorded music stream still needs content you are entitled to use; running it through FFmpeg or a cloud service does not establish permission or guarantee YouTube monetization.

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 Screening Room

  1. Strange Secrets In the Amazon RainForestAdmit one · EnvironmentalStrange Secrets In the Amazon RainForestOpened05 OCT 2026Runtime2 min
  2. Secret Societies of Hollywood: Fact, Allegation, and FictionAdmit one · LifestyleSecret Societies of Hollywood: Fact, Allegation, and FictionOpened05 OCT 2026Runtime4 min
  3. Can GM Food Save The World?Admit one · HealthCan GM Food Save The World?Opened05 OCT 2026Runtime4 min
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.