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 DealsPC HealthRecommendedCrashes, freezes, slowdowns? Check your PC nowSpot repairable issues before they interrupt work.Check PC×
Skip to content
DocumentaryTube
Admit one · Blog

How to Run a Local Video Playlist as a Continuous YouTube Live Stream on Hetzner with FFmpeg

Use FFmpeg on a Hetzner Cloud server to broadcast a local playlist of rights-cleared video files to YouTube Live. Understand ingest choices, egress costs, supervision, and recovery limits.
Opened Runtime6 min Written byDocumentaryTube Team
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

You can use a Hetzner Cloud server to send a continuous YouTube Live broadcast from a playlist of video files that you own or have permission to rebroadcast. The basic flow is to make those files available to FFmpeg, configure YouTube Live as the destination, run FFmpeg at real-time speed, and supervise the process. A YouTube watch-page playlist URL is not an established, supported FFmpeg input for this workflow.

This guide explains the setup and operational decisions, but not a tested, copy-and-paste command: the exact FFmpeg output options depend on your installed build, media formats, YouTube’s current ingest instructions, and whether you choose RTMP or HLS.

What “a YouTube playlist” means here

This method broadcasts local media files to YouTube Live. You first create a sequence of files that FFmpeg can read; YouTube is the destination, not the source. The official FFmpeg and YouTube material cited below does not establish that a YouTube watch-page playlist URL can be fed directly to FFmpeg as a supported, rights-cleared source. Do not treat a playlist URL as a substitute for media files you are entitled to use.

Use recordings you own or have permission to rebroadcast. Technical instructions about ingest and packaging do not grant rights to copy or retransmit videos from YouTube.

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

Plan the server and estimate outgoing traffic

Choose a Cloud server for the actual workload

Hetzner Cloud servers are virtual machines for running an operating system and programs. Hetzner distinguishes shared-resource and dedicated-resource server types; consider the CPU resources your workflow needs, especially if FFmpeg must encode rather than simply package compatible media. A public connection requires a Primary IP. Check current server and IP pricing for your chosen region and type: Hetzner’s overview page says it was last changed on 2022-06-28, so do not rely on it as a current price list. Hetzner Cloud server overview.

Estimate egress before choosing a plan

Hetzner bills outgoing traffic for Cloud servers. Its billing FAQ says overage is charged in blocks of 100 MB; notifications at 75% and 100% are informational and do not cap or stop traffic. Check the current included traffic for the server type and region you intend to use. Hetzner Cloud billing FAQ.

For a continuous stream, a rough planning calculation in decimal gigabytes is:

monthly GB ≈ encoded bitrate in Mbit/s × 0.45 × 24 × 30

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

This is an estimate, not a Hetzner-published statistic. Refine it for protocol overhead, reconnects, and the actual billing period. For example, use the bitrate of the output stream FFmpeg sends—not simply the size or resolution of the source files.

Understand the network and availability limits

Hetzner says Cloud bandwidth is not guaranteed and that users can expect about 300–500 Mbit/s; the host connection is shared among instances. That is an expectation from Hetzner, not a per-VM minimum or assurance of uninterrupted streaming. Hetzner Cloud technical FAQ.

Hetzner’s Cloud and vServer service agreement says it will use commercially reasonable efforts to provide monthly availability of 99.9% for each Cloud Server, measured during a calendar month. The agreement excludes, among other cases, failures caused by customer software or configuration and network interruptions outside Hetzner’s reasonable control. This applies to the Cloud Server, not to the whole path through FFmpeg and YouTube ingest, and it does not promise that your broadcast stays live. Hetzner Cloud and vServer service agreement.

Choose RTMP or HLS using YouTube’s current setup instructions

In YouTube Live’s setup flow, select the ingestion protocol and use the endpoint and stream key provided for that setup. Follow the current instructions shown in YouTube Studio; do not assume one protocol or endpoint applies to every stream.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Choice What matters
RTMP YouTube describes it as a continuous stream in contrast to HLS’s segmented delivery. If your media and encoder support the required format and you want lower latency, compare the current RTMP instructions in YouTube’s setup flow.
HLS YouTube says HLS has higher latency because it sends video segments rather than a continuous stream like RTMP. Its HLS guidance specifies segment durations of 1–4 seconds, Transport Stream segments, no byte range, HTTPS POST/PUT, and a rolling playlist with no more than five outstanding segments. Encryption beyond HTTPS is unsupported by that guidance.

These HLS requirements are for YouTube ingestion, not universal FFmpeg HLS settings. FFmpeg’s HLS muxer exposes playlist and segment controls, but using that muxer alone does not make an output acceptable to YouTube. Match FFmpeg’s output to the destination’s current requirements. YouTube Help: Set up an HLS stream · FFmpeg Formats Documentation.

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

Prepare a local playlist and the YouTube destination

  1. Put rights-cleared media where the server can read it. Upload the files to the server or make them available from accessible storage. Keep filenames and paths organized, and verify the server account that will run FFmpeg can read every file.
  2. Create an FFmpeg-readable sequence. Build a local playlist or input sequence using a format and options supported by your installed FFmpeg build. The FFmpeg formats documentation describes the relevant formats and muxer options; it does not provide a complete, tested command for looping a concat playlist into YouTube Live. Consult the documentation for your chosen input and output method: FFmpeg Formats Documentation and FFmpeg Documentation.
  3. Set up the live broadcast in YouTube. In YouTube Live, select the intended ingestion protocol and obtain the endpoint and stream key from the live setup flow. Keep the key private. Do not expose it in public logs, screenshots, shell history shared with others, or published examples.
  4. Match the output to the selected ingest. Confirm that your media and FFmpeg output meet YouTube’s current requirements for the chosen protocol. If you select HLS, account for YouTube’s segment format, duration, transport, and rolling-playlist requirements. Do not assume generic FFmpeg defaults satisfy them.
  5. Run at real-time speed and supervise the process. Configure the broadcast to proceed in real time, then use an operating-system service manager or another process-monitoring arrangement to detect and restart an exited process. A restart arrangement can help with a stopped FFmpeg process; it cannot guarantee that YouTube accepts the stream or that every failure recovers cleanly.
  6. Verify the end-to-end broadcast. Check FFmpeg’s logs, YouTube’s live status, server resource use, and outgoing traffic. A process that starts successfully is not proof YouTube is receiving a valid broadcast.

There is no single safe command to give without knowing the installed FFmpeg build, source compatibility, and YouTube’s selected endpoint settings. Validate any command against those specifics before relying on it for a continuous broadcast.

Keep the stream observable and recoverable

  • Watch FFmpeg logs for input, encoding, muxing, and connection errors.
  • Check YouTube Live’s status to confirm it is receiving a usable stream, rather than relying only on FFmpeg’s process status.
  • Monitor CPU and memory use, especially if FFmpeg is encoding the media.
  • Track outgoing traffic against the selected server’s included allowance; billing notifications do not stop usage.
  • Arrange process supervision and a way to investigate failures. Hetzner’s availability-effort language does not cover customer software/configuration failures or every external network interruption.

Common problems and what to check

Symptom Likely area to check Action
FFmpeg cannot open a file or playlist Input path, permissions, playlist syntax, or unsupported media Check paths from the service account’s perspective, verify read permissions, and confirm the installed FFmpeg build supports the input format.
FFmpeg runs, but YouTube does not show a valid incoming stream Wrong endpoint/key, protocol mismatch, or output that does not meet ingest requirements Recheck the endpoint and protocol in the current YouTube Live setup flow, keep the key private, and compare the output format with YouTube’s instructions.
HLS ingest is rejected or unstable Segment or playlist behavior may not match YouTube’s HLS requirements Check segment duration, Transport Stream format, byte-range use, HTTPS method, and the rolling playlist limit against YouTube’s current guidance. FFmpeg’s generic HLS options are not a substitute for those requirements.
The stream stops after an error or disconnect FFmpeg process exit, server/network interruption, or YouTube ingest interruption Inspect logs and YouTube status to identify where the failure occurred; ensure process supervision is configured and verify whether a restart re-establishes a valid broadcast.
Traffic costs exceed expectations Continuous egress, bitrate, protocol overhead, reconnects, or plan allowance Recalculate from the encoded output bitrate, check current included traffic for the chosen region and server, and remember overage notifications are informational rather than a cap.

Or let it run in the cloud

If your goal is an always-on YouTube stream from uploaded videos, StreamNeo is a managed alternative: upload a recording or build a playlist, add your YouTube stream key once, and go live. It loops the uploaded videos from the cloud, so nothing has to stay on at home; it supports any uploaded quality up to 4K 60fps at one price per slot, automatically recovers if YouTube drops the stream, and the first day is free with no card. The monthly option is $9.99 per month. StreamNeo is for YouTube streams from uploaded videos, not camera broadcasts. See StreamNeo or start the free first 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.

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

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. Mexico’s Drug War BBC DocumentaryAdmit one · CrimeMexico's Drug War BBC DocumentaryOpened05 OCT 2026Runtime2 min
  2. Vincent Moon and Naná Vasconcelos: The World’s Hidden Music RitualsAdmit one · Personal TriumphsVincent Moon and Naná Vasconcelos: The World's Hidden Music RitualsOpened05 OCT 2026Runtime2 min
  3. 100 Greatest Discoveries – Origins And EvolutionAdmit one · Science100 Greatest Discoveries - Origins And EvolutionOpened05 OCT 2026Runtime3 min
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.