Professional playout no longer has to depend exclusively on dedicated hardware boxes. With software-defined media infrastructure, a standard x64 server can take scheduled file-based content, mix it with live sources, process the result as a continuous live stream, and deliver it into a broadcast SDI chain.
Nimble Streamer fits this model as a software-defined playout server through Nimble Playout. Nimble Playout turns local VOD assets and live input streams into a continuous live output, while SDI output support allows that stream to be sent to connected SDI hardware (Blackmagic or AJA) for downstream routing, production, monitoring, or distribution.
Nimble Playout uses the playlist configuration mechanism to define the source sequence, timing, looping behavior, and generated live stream. In operational terms, the workflow is best understood as hybrid playout from local storage and live sources to SDI.
What Nimble Playout does
Nimble Playout lets engineers organize local files and live streams into a controlled playout sequence. Instead of manually starting clips or switching sources outside the media server, Nimble Streamer reads a playlist definition and generates a live output from VOD files, live inputs, or a mix of both.
A playlist can include one or multiple blocks, scheduled start times, playback durations, file offsets, looped blocks, live stream references, and selected audio/video tracks when files contain multiple tracks. Read Playout config spec for more details. This makes it suitable for repeatable playout workflows such as demo channels, internal channels, signage feeds, event loops, training channels, live-program inserts, and 24/7 linear-style programming.
For SDI workflows, the key point is simple: files and live sources become a Nimble Playout live stream first, then Live Transcoder converts that stream into SDI output.
Requirements
This workflow requires:
- WMSPanel account for cloud-based management.
- Nimble Streamer installed on Ubuntu version 22.04 or later.
- Latest Live Transcoder package installed on the same server.
- Active Live Transcoder license registered for the Nimble instance.
- Supported SDI hardware, such as Blackmagic DeckLink or AJA devices, installed and visible to the operating system.
- Local media files and live input streams prepared with consistent technical parameters.
Step 1: Prepare local files and live sources
Start by placing the media files on the Nimble Streamer server. Use full local paths and make sure the Nimble process has read access to every file.
If the channel also needs live sources, prepare them as outgoing live streams in Nimble Streamer and reference them by stream name in the playlist. For a live source, the playlist uses the application and stream name, such as live/camera1 or incoming/feed1, rather than a file path.
For reliable playout, normalize the files and live streams before adding them to the playlist. In professional broadcast environments, mixed parameters often create downstream instability. Keep the content parameters consistent across all sources in a playlist, as described in “2. Prepare content” of Playout specification.
For VOD entries, Nimble Playout supports MP4 and MP3 containers for playlist input. For video playlists, supported codecs include H.264/AVC, H.265/HEVC, VP8, VP9, and AV1. For audio, supported codecs include AAC, MP3, Opus, FLAC, MP2, and AC-3/E-AC-3. Live stream entries use existing live streams available in Nimble Streamer.
Step 2: Create the Nimble Playout config
Nimble Playout uses a playlist configuration to describe the output live stream and the sequence of sources to play. You can create it manually as JSON, use the Playout Wizard or our ask our AI assistant to generate the playlist structure.
A typical playlist describes:
- Output application and stream name, such as
live/playlist. - One or more playlist blocks.
- Local file paths for VOD entries.
- Live stream names for live entries.
- Start time, if scheduled playout is required.
- Duration and offset, if only part of a file should play.
- Loop behavior for continuous operation.
- Sync interval for updates.
Once configured, Nimble Streamer reads the playlist and generates the Nimble Playout live stream from the selected files, live streams, or mixed source blocks.
The result of the setup is a JSON file stored either in a file system or on remote server accessible via HTTP(S) URL.
Read full specification to learn more what you can use for your scenario.
Step 3: Enable playlist processing
The playlist must be made available to Nimble Streamer through the Server Playlist configuration used by Nimble Playout. The playlist can be referenced as a local file or through an HTTP/HTTPS URL.
The core parameters for nimble.conf are:
server_playlist_sync_url = /home/user/config/server_playlist.json
server_playlist_sync_interval = 10000
The sync URL, as was described above, is either a local path or a URL.
The sync interval controls how often Nimble checks for playlist updates. This is useful for operational teams because playlist adjustments can be applied without rebuilding the entire playout chain.
Once the Playout is set, make sure it’s generating a live stream.
Step 4: Create SDI output in Live Transcoder UI
Now you need to create the SDI output in the Live Transcoder UI. In this stage, the Nimble Playout stream, whether built from files, live inputs, or both, becomes the input for a Live Transcoder scenario, and Live Transcoder forms the SDI output for the connected device.
The general pipeline is:
Nimble Playout output -> Live Transcoder scenario -> SDI video/audio encoders -> SDI device
The SDI output setup is described in SDI Decklink output setup article and in AJA SDI setup article in full details. Please refer to them for full details and all the nuances of setting up the SDI output.
Here we outline basic steps needed for this specific scenario.
First, verify that Nimble Streamer can see the SDI hardware. The SDI output setup documentation describes using the nimble_sdi tool to list available devices. The returned device name is later used in the SDI encoder settings.
In WMSPanel, open the Live Transcoder scenario editor and build the SDI output chain:
- Add the Nimble Playout stream as the scenario input by adding video and audio decoder elements for the incoming playout stream.
- Add filters if the SDI device requires a specific resolution or frame rate.
- Add a video encoder element and select
SDIas its type. - Set the SDI name to the device name shown by
nimble_sdi. - Add an audio encoder element, also using
SDIas its type and the same SDI device name. - Save the scenario.
As was mentioned above, please refer to SDI Decklink output setup and AJA SDI setup articles for full details.
Once the scenario is saved, the SDI device starts receiving content from the Nimble Playout source. The resulting SDI signal can then be routed to a switcher, monitor, encoder, production router, or other broadcast chain.
For example, a Nimble Playout output such as live/playlist may contain a sequence of local clips, live contribution feeds, or scheduled transitions between both source types. Live Transcoder decodes that generated stream, prepares it for the required SDI format, and sends it through SDI video and audio encoders to the selected DeckLink or AJA device.
Management remains web-based through WMSPanel. Engineers can configure the Nimble instance, manage Live Transcoder licensing, edit scenarios, control SDI-related settings, and update operational parameters from the same interface. The Transcoder settings are applied on-the-fly without streaming interruption, which reduces maintenance windows in live broadcast environments.
Economic benefits
The economic case is straightforward. Instead of purchasing a dedicated hardware playout server for every channel or workflow for SDI output, facilities can use standard x64 servers running Ubuntu and Nimble Streamer.
This reduces capital cost, simplifies scaling, and gives engineers a flexible platform that can support playout, transcoding, re-packaging, SDI, streaming protocols, and hybrid production workflows from the same software-defined environment.
For broadcasters and Pro-AV teams, this creates a practical migration path: keep professional SDI infrastructure where it is needed, while replacing fixed-purpose playout hardware with a more flexible software media server.
FAQ
Can I loop a playlist for 24/7 SDI broadcast?
Yes. Nimble Playout supports looped blocks through its Server Playlist configuration, so a prepared set of local files can run continuously as a 24/7 linear-style channel. For broadcast use, normalize all files first and monitor the output stream for timing, audio consistency, and file availability.
What video codecs are supported for local files in Nimble Playout?
For VOD input, supported video codecs include H.264/AVC, H.265/HEVC, VP8, VP9, and AV1. Supported audio codecs include AAC, MP3, Opus, FLAC, MP2, and AC-3/E-AC-3. MP4 and MP3 containers are supported for file-based playlist input. Nimble Playout can also reference live streams that are already available in Nimble Streamer.
Do I need Live Transcoder for playlist-to-SDI output?
Yes. SDI output is created through Live Transcoder. The workflow requires the Live Transcoder package and an active Live Transcoder license on the Nimble Streamer instance.
Can I update the playlist without stopping the stream?
Yes. Nimble Streamer checks the playlist according to the configured sync interval. Supported WMSPanel settings are applied on-the-fly without streaming interruption.
Can Nimble Playout use both files and live streams?
Yes. Nimble Playout can use VOD files and live streams as input sources through Server Playlist configuration. This allows hybrid playout, for example a loop of local programs with scheduled live inserts, a live feed followed by local fallback content, or a 24/7 channel that mixes prerecorded segments with real-time contribution streams.
How are live streams referenced in Nimble Playout?
Live streams are referenced by their Nimble Streamer application and stream name, using the application_name/stream_name format. These are the same outgoing live streams visible in WMSPanel. VOD entries use local file paths or supported HTTP(S) file sources, while live entries use stream names.
Why should all files have matching parameters?
Matching file parameters help preserve stable playout. Differences in codec, frame rate, resolution, audio format, color format, or profile can cause playback issues for downstream systems. For professional SDI output, consistent source preparation and optional output re-alignment through Live Transcoder are strongly recommended.
Is this a replacement for traditional playout hardware?
For many workflows, yes. Nimble Streamer can operate as a software-defined playout server, using standard server hardware and SDI I/O devices instead of dedicated proprietary playout appliances.
Install Nimble Streamer today and try the workflow above in action.