You can use Docker to run an NGINX RTMP relay that accepts a live feed from an encoder and forwards it to YouTube Live. The relay does not create the video or guarantee a 24/7 broadcast: your source, host, network connection, and recovery plan must all keep working. This guide covers the relay setup, YouTube settings, validation, and the operational work behind a continuous stream.
How the relay works
The setup has three parts: a source that continuously produces video and audio, an NGINX server with the third-party RTMP module, and YouTube’s ingest endpoint. Your encoder publishes to the relay; the relay pushes that feed to YouTube using the server URL and stream key shown in YouTube Live Control Room.
NGINX Open Source does not include this RTMP functionality by default. The arut/nginx-rtmp-module project provides RTMP support and documents stream relay with a push target. NGINX documents compiling Open Source with a third-party module using --add-module=<PATH>; its separate RTMP package for NGINX Plus is not a free Open Source package. See NGINX’s configure documentation and NGINX Plus RTMP module page.
Choose a Docker image or build your own
Community image for a smoke test
The tiangolo/nginx-rtmp repository documents this basic container command:
Free tools Windows power users keep installed
One-click scans. No signup required.
#1 Best Overall
- Compact but Powerful Design: ZowieBox is smaller than a phone, featuring a tally light and LCD screen for streaming status. Capture console gameplay in up to 4K with zero-lag HDMI passthrough, while the built-in video encoder converts video for IP streaming. The IP stream can also be decoded back to a 4K HDMI signal.
- Standalone Game Streaming: Just plug and play—ZowieBox enables PC-free live gaming without affecting gameplay. As an RTMP hardware encoder and HDMI streamer, it delivers stable streaming directly from your source, making it ideal for gaming, live events, and professional broadcasting.
- NDI|HX3 Converter Technology: ZowieBox converts HDMI signals to NDI|HX3/HX2/HX, functioning as an NDI video encoder, or NDI Video Decoder for flexible IP workflows. Certified NDI technology enables low-latency gameplay streaming through OBS/vMix. Note: Encoder and decoder modes cannot run simultaneously; full NDI signals are not supported.
- UVC to HDMI Conversion: Supporting up to 4K@30fps and 1080p@60fps decoding, ZowieBox enables flexible conversion for webcam and video workflows. As a video decoder and HDMI to IP converter, it expands connectivity options for professional video devices. Note: USB capture card functionality is not currently supported.
- All-around Configuration Options: Control ZowieBox through its web UI on a PC, phone, or tablet. Manage connected PTZ cameras, tally light, video/audio, OSD, work mode, streams, network, and system settings. Support for VISCA over IP encoder workflows enables flexible PTZ control, while the dashboard provides video preview and system status.
docker run -d -p 1935:1935 --name nginx-rtmp tiangolo/nginx-rtmp
This exposes RTMP on port 1935. The repository demonstrates publishing from OBS to the container and playing the local stream in VLC, making it useful as a basic relay test. It is a community image, not an official NGINX image. Before relying on it for a long-running service, review whether it is maintained and whether its base image and bundled module match your requirements.
Build NGINX with the RTMP module
Building gives you more control over NGINX, module, and base-image versions, but you are responsible for maintaining a compatible build. NGINX’s documented third-party module build option is --add-module=<PATH>. Pin the versions you select and rebuild when you need security updates; the available sources do not establish a universally suitable version combination.
Rank #2
- 【Rich Connection Ports】 The Osee GoStream Deck video switcher comes with 4 HDMI inputs and 2 HDMI outputs, allowing you to connect four different media sources and two displays for MultiView and monitoring. It also includes 2 Type-C ports (input/output) for webcam input/output, SSD connection, and PC connectivity, 1 Ethernet port for live streaming, 2 audio inputs and 1 headphone output for monitoring audio quality or recording, and 1 SD card slot for recording or playing files directly.
- 【Audio Control, Recording and Playback 】 The Osee GoStream Deck video switcher features various audio control buttons and adjustable knobs. It comes with headphone and microphone input for your live-streaming audio system. Additionally, it provides professional audio effects, including EQ, Limiter, Fader, etc. The GoStream Deck can record your PGM to an SD card or USB SSD while simultaneously playing back MP4 files for intros, breaks, etc.
- 【3 Streaming & Landscape / Portrait streaming】 This live streaming video switcher can simultaneously stream to 3 platforms like YouTube, Facebook, Zoom, or any RTMP server via the Ethernet port. Alternatively, you can use the USB output to stream through PC software like OBS or vMix. In addition, it supports both landscape and portrait modes to suit your various needs.
- 【Efficient Control】 The GoStream Deck features a hard control panel with PVW/PGM buses, T-Bar, and Macros - perfect for broadcast-quality streaming in education, conferences, worship, live events, and weddings. With its built-in menu system, you can control your live production without a PC. Additionally, we provide free PC control software and a companion control module for expanded functionality.
- 【Convenient Graphics Overlay】 This video mixer supports MultiSource functionality with dual video windows, background options, and graphics overlay - ideal for church broadcasts, podcasts, online meetings, panel discussions, and TV-quality live productions. Downstream keyer for logo and lower-third overlays. Upstream keyer supporting green screen, chroma key, PIP (Picture-in-Picture), and pattern effects.
Configure the RTMP application and destination
The module’s documented pattern is an RTMP application with live on; and a push target. Conceptually, an encoder publishes to rtmp://relay-host/live/stream-name, and the module relays that stream to the configured YouTube destination. The exact configuration depends on the image or build you chose, so use its configuration path and syntax rather than assuming every image uses the same file.
- Get the destination from YouTube. In YouTube Live Control Room, copy the server URL and stream key for the broadcast. Use the exact ingest endpoint supplied for that stream; do not hard-code an assumed regional endpoint. YouTube explains the server URL and key workflow in its live encoder setup guidance.
- Configure the relay. Add an RTMP application using the module’s
live on;andpushpattern. Set the push destination to the supplied ingest URL with the stream key in the destination path, as required by the endpoint. - Keep the key secret. Do not commit a key in a public repository, share it in a public configuration example, or expose it in logs. Use a secret-aware deployment method appropriate to your container host and restrict access to the configuration and logs.
- Publish to the relay. Set your encoder’s server to the relay address and its stream name/key to the path expected by your RTMP application. The source must stay active and continue sending video and audio.
YouTube recommends RTMPS: “We recommend streaming to YouTube Live with RTMPS, a secure extension to the popular RTMP streaming video protocol.” A plain RTMP push configuration is not encrypted merely because YouTube supports RTMPS. Confirm that your selected relay and destination configuration actually negotiate TLS before treating the outbound connection as secure. YouTube’s live encoder settings guidance covers its protocol recommendations.
The Tool Desk
Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →Rank #3
- 【Innovative Product with Leading Technology】- Equipped with an advanced H.265 /H.264 dual encoding chip, supports 4K UHD (3840x2160) video input and output, with a maximum frame rate of 30fps at 4K resolution and up to 120fps at 2K and lower resolutions, delivering a smooth and detailed visual experience. It also supports HDCP 1.4 decryption, easily decoding various HDMI ultra HD video sources, delivering a cinematic visual experience for both professional live streaming and 4K ultra HD content transmission.
- 【Multi-protocol and Multi-platform Compatibility】- Fully compatible with streaming protocols such as HTTP, RTSP, RTMP(S), SRT, HLS(M3U8), MP4, Multicast(UDP, RTP, PTL), FLV, WebRTC, TRTC, ICECAST, it can simultaneously output 4 video streams with different protocols and push them to live streaming platforms such as YouTube, Facebook, Twitch, and Vimeo with one click. Simultaneous live streaming across multiple platforms can be achieved without additional equipment.
- 【Highly Customizable Settings to Meet Individual Needs】- It supports adding static text, scrolling captions, brand logos, and timestamps. Users can freely adjust core parameters such as video resolution, frame rate, and bitrate, and also perform personalized editing functions such as video cropping, rotation, flipping, and mirroring. It supports dual input of HDMI embedded audio and line-in audio, with adjustable sound quality, making your live stream content more distinctive and allowing you to create a unique brand live stream style.
- 【Stable and Efficient Transmission, Easy Operation】- Employing HDMI to Ethernet core connection technology, it ensures stable and reliable network transmission with low latency and no lag, adapting to various network environments. Equipped with an intuitive user interface and detailed instruction manual, no professional technical background is required; setup can be completed quickly after connecting the device. It is also compatible with multiple terminals such as computers and mobile phones for management, and the video stream status can be viewed in real time via a URL.
- 【Lifetime Free Warranty and Technical Supports】- All URayCoder video codecs come with a lifetime free warranty and technical supports, supporting secondary development and feature customization to meet enterprise-level personalized needs. Meanwhile, we providing many kinds of customization services such as shell pattern printing, logo addition, hardware and function development, ensuring reliable quality and worry-free after-sales service.
Set encoder quality for YouTube
Choose settings for the resolution, frame rate, and codec you intend to send. YouTube’s bitrate guidance varies across those choices, so there is no single bitrate that suits every stream. Check the current table in YouTube’s encoder settings guidance and use the row that matches your output.
- Codec: YouTube’s current guidance includes H.264, H.265/HEVC, and AV1 among its options. Confirm that your chosen encoder and relay support the intended format end to end.
- Rate control: YouTube recommends constant bitrate (CBR).
- Frame rate: YouTube supports frame rates up to 60 fps; choose a rate appropriate to the source and output.
- Keyframes: YouTube recommends a two-second interval and says it should not exceed four seconds.
- Audio: YouTube’s advanced settings recommend stereo AAC at 128 Kbps and 44.1 kHz.
Test with representative motion and audio, then monitor YouTube’s stream health messages. A static test image may not reveal problems that appear with fast motion, detailed scenes, or the actual audio mix.
Rank #4
- The UGREEN HDMI Capture Card supports YCbCr 4:2:0 color sampling, accepts input resolutions up to 4K@60Hz, outputs up to 1080P@30Hz, and features a USB 2.0 high‑speed transmission port for connectivity. This product is connected to audio and video signal sources, such as cameras, and camcorders through the HDMI interface, and transmits it to a device with a USB or type C interface for the recording. Note: This product does not support capture and recording if the signal source is HDCP encryption protocol
- Dual Interface Apply to both Phone and Computer: With USB-A & USB-C dual interface design, this capture card for streaming can be compatible with most current laptops, tablets, mobile phones, cameras, webcams, Kindle, and other devices. It can be used for camera live broadcasts, mobile game live streaming, console game live streaming, and computer live streaming. Note: iPadOS devices need to be updated to 17 or higher to use it
- Plug and Play, Driver free: No driver required and no external power supply, just connect and start high-definition reproduction of videos. Aluminum-alloy shell, make sure a longer use life. This 4k capture card weighs only 19.9g, making it light and portable. Switch/Switch 2/Xbox/PS5/PS4 support this capture card when HDCP is turned off
- HDMI Low Latency Screen Share: With Smart Chip, this HDMI video capture transmission rate is up to 480Mbps, low latency, and no caton. Real-time recording and collection of important meetings or courses for easy review. The latest design of the 4K capture card allows you to enjoy ultra-low latency during live gaming or video recording, avoiding freezing and blue screens
- Wide Compatibility: This HDMI capture card is compatible with Windows 8.1/10, Linux, iOS17, and Android. The USB capture card is suitable for live streaming, recording, editing, and transferring video in high resolution on OBS, XSplit, Potplayer, QuickTime Player, USB Camera Viewer, and more. Please note: iPadOS devices need to be updated to 17 or higher to use it. This product does not support capture and recording if the signal source is HDCP encryption protocol
Test the relay before depending on it
- Check local ingest first. Start the container and publish from OBS or another RTMP source to the relay. The Docker example’s OBS-to-container and VLC playback flow is a useful local smoke test. Confirm that the relay receives and plays a stable feed before adding YouTube to the path.
- Check the outbound connection. Configure the YouTube destination and start the relay. Look at container and application logs for connection failures, while ensuring that logs do not reveal the stream key.
- Check YouTube’s preview and health. Open Live Control Room and verify that the preview appears and that stream-health messages do not indicate a problem. Do not treat a successful local VLC playback as proof that YouTube is receiving the stream.
- Test recovery deliberately. In a controlled test, interrupt the source or relay connection and observe what happens. Confirm which component reconnects and whether a person must restart anything; the module and image documentation does not establish a universal automatic recovery policy.
What continuous operation requires
An RTMP relay is only one link in a continuous broadcast. The source must keep generating content; the Docker host and container must remain available; the network path to YouTube must work; and the encoder or relay must recover appropriately after interruptions. The module documents mechanisms such as static pulls and external program execution on events, but these are building blocks—not an uptime guarantee.
- Keep the source running: Decide how the video and audio are generated continuously and what should happen when the source ends or fails.
- Plan for container and host failures: Choose a restart and recovery approach, monitor the host and container, and arrange alerts for failures that need attention.
- Protect connectivity: Monitor the host’s network path and available upload capacity; a working local relay cannot compensate for a failed upstream connection.
- Maintain the deployment: Pin the image or build components, review maintenance and compatibility, and update them deliberately.
- Account for YouTube archives: YouTube Help says streams under 12 hours are automatically archived. Do not assume that one archive will cover a broadcast running beyond that threshold; consult YouTube’s live stream archiving guidance.
Copyright and reused-content checks
A technically healthy relay does not establish that you have the rights to broadcast its content or that a channel complies with YouTube policies. Before scheduling a continuous stream, confirm that you have permission for the video, music, and other material, and review YouTube’s applicable rules for live content and monetization. For a practical preflight, use the copyright safety checklist; it does not replace YouTube’s policies or legal advice.
Do these 3 things before closing this tab:
1Scan for outdated or missing drivers - takes under a minute2Repair Windows errors before they cause bigger problems3Fix the driver behind crashes, sound loss and screen glitchesBest Value
- Up max to 1080P@60fps HDMI Video
- H.265, H.264 high/main/baseline profile video code and AAC/MP3 audio code
- RTMP/RTMPS/SRT/RTSP/UDP/HTTP/Multicast/Unicast Protocols
- Support text and image OSD management
Troubleshoot common failures
| Symptom | Likely area to check | What to do |
|---|---|---|
| Encoder cannot connect to the relay | Container availability, port exposure, host firewall, relay address, or application path | Confirm the container is running, port 1935 is reachable where intended, and the encoder is publishing to the correct relay and application path. |
| Local playback works, but YouTube has no preview | Outbound push URL, stream key, or connection protocol | Copy the current server URL and key from Live Control Room, check the destination path and logs, and verify TLS if configuring RTMPS. |
| Video arrives but stream health reports problems | Encoder settings or source quality | Match bitrate to YouTube’s current table for the selected resolution, frame rate, and codec; check CBR, keyframe interval, and representative audio and motion. |
| Stream stops after a source or network interruption | Recovery behavior in the source, container, relay, or host | Identify which component failed, test its restart or reconnect behavior, and add monitoring and alerts. Do not assume the RTMP module itself guarantees recovery. |
| Key appears in logs or configuration history | Credential handling | Restrict access, remove the exposed secret from public locations, and rotate the YouTube stream key in Live Control Room before resuming. |
Or let it run in the cloud
If the goal is a continuous YouTube stream from uploaded video rather than operating a relay host, StreamNeo is a managed alternative: upload a recording or build a playlist, add your YouTube stream key once, and go live. It loops uploaded videos in the cloud, so nothing has to stay on at home. Every slot streams the upload as made, up to 4K 60fps, at one flat price per slot; it also automatically recovers if YouTube drops the stream. The first day is free with no card, one free day per account. Monthly billing is $9.99 per month. StreamNeo is for YouTube streams from uploaded videos, not camera broadcasts. Start your free day with StreamNeo.
Quick Recap
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.




