A Rust and FFmpeg-based 24/7 broadcasting solution for playing video/audio clips from folders or JSON playlists.
ffplayout is a 24/7 broadcasting solution built with Rust and FFmpeg that plays audio or video clips from folders or JSON playlists. It solves the need for reliable, continuous media playout for TV channels, radio stations, or digital signage without requiring expensive proprietary hardware or software. The system supports dynamic playlist editing, filler management, and multiple output formats including streaming, HLS, and desktop playback.
Broadcast engineers, media operators, and developers setting up TV/radio stations, digital signage, or continuous streaming services who need a self-hosted, customizable playout solution.
Developers choose ffplayout for its lightweight, resource-efficient design using Rust and FFmpeg, offering professional features like live ingest, multi-channel support, and a web frontend without GPU dependencies or high costs.
Rust and ffmpeg based playout
Uses minimal system resources with no GPU dependency, as the README emphasizes normal requirements and CPU-only processing for reliable 24/7 operation.
Supports editable JSON playlists on the fly with filler clips and dummy generation for missing content, ensuring continuous broadcast without gaps.
Offers streaming to servers, desktop playback, HLS generation, and null output for debugging, catering to diverse broadcasting needs from TV to digital signage.
Leverages FFmpeg filters like deinterlacing, scaling, and custom filters for professional-grade video processing, with support for live ingest and remote sources.
Many features such as multi-channel, audio-only radio mode, and subtitles are marked experimental in the README, with potential instability and future breaking changes.
Primarily designed as a Linux system service, requiring additional effort for cross-platform use, which may hinder adoption in Windows or macOS-heavy environments.
Requires FFmpeg v5.0+ with specific libraries like libzmq for full functionality, and setup involves multiple configuration files and CLI commands, increasing initial overhead.
The Sofie TV Studio Automation System, used in live TV news production by the Norwegian public service broadcaster NRK since September 2018
SPX is a graphics control client for live video productions and live streams using CasparCG, OBS, vMix, or similar software.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.