0.21.2
0.21.2.0 (October 23, 2026)
OvenMediaEngine
[Compatibility]
- Compatible with the
Server.xmlconfiguration format used in version 0.12.6 or later. - Compatible with Origin and Edge versions 0.21.0.0 or later.
[Added]
- Introduced OVT 2.0 for Origin-Edge relay, so Origin and Edge servers can be upgraded independently without relay compatibility issues. Existing Edges keep working with no configuration changes.
- WHIP publishers now start at a higher initial bitrate (1000 kbps by default) for a faster quality ramp-up after publishing starts. Adjust via the
<StartBitrateHint>setting of the WebRTC Provider (0 disables it). - Added Fade In and Fade Out transitions (to or from black or white) for Scheduled Channel items. Configure per item with the
fadeIn,fadeOut,fadeInColor, andfadeOutColorattributes. - Alert notifications can now be sent to multiple webhook destinations via
<Alert><Webhooks><Webhook>. The single-URL settings directly under<Alert>are deprecated and will be removed in a future release. - Added official support for Ubuntu 26.04. The GPU Docker image now uses CUDA 13 and requires an NVIDIA R580 or newer driver and a Turing or newer GPU.
- The REST API, transcode webhook, and Alert payloads now report the codec profile, level, tier, bit depth, and
codecsstring of each video track. - Added a
<ScaleMode>option (fit,crop,stretch) to video and thumbnail output profiles to preserve the aspect ratio when the input differs from the output resolution.
[Fixed]
- Fixed Simulcast WebRTC ingest streams failing to become ready on bandwidth-constrained uplinks when RTX is enabled.
- Fixed WebRTC ingest freezes on high-latency or lossy networks when RTX is enabled. The default
<Rtx><MaxHoldMs>is raised from 400 to 600 ms. - Fixed stuttering and dropped frames when a transcoded Scheduled Channel switches from a VOD file to a live source.
- Fixed LLHLS Dump failing with HTTP 500 when the stream has subtitles enabled.
- Fixed Shaka Player stalling at DRM key rotation during LLHLS playback.
- Fixed Whisper real-time speech-to-text subtitles filling up with endlessly repeated words or phrases.
- Fixed LLHLS segments exceeding the target duration in synced segmentation mode when the source keyframe interval does not evenly divide
SegmentDuration. - Fixed the REST API not showing a dynamic application template (
*) in the virtual host response;POST /appsnow rejects*with a clear error. - Fixed LLHLS chunks being cut shorter than
ChunkDurationwhen the stream contains B-frames, and improved rendition alignment in synced segmentation mode. - Fixed the
ome_track_has_bframesmetric reflecting only the first video track of a stream, and falsely reporting B-frames on some OVT pull tracks. - Fixed Multicast streams stalling, jumping ahead in time, or being deleted when the encoder sending to the multicast group is replaced; the stream now continues with the new encoder. If the gap between encoders can exceed
NoInputFailoverTimeout(default 3000 ms), raise it, make the stream persistent, or setRetryCount. - Fixed corrupted video and stalled streams when 10-bit input (HEVC Main10, AV1 10-bit, H.264 High10) was transcoded with the NVIDIA decoder. The NVIDIA decoder now refuses 10-bit input; set
<HWAccels><Decoder><Modules>tonv,defaultso these streams fall back to software decoding.
[Improved]
- OpenMetrics now exposes per-track frame latency histograms (
ome_track_ingest_latency_seconds,ome_track_relay_latency_seconds,ome_track_egress_latency_seconds,ome_track_end_to_end_latency_seconds) showing where latency builds up between Origin and Edge. Enable via<Modules><FrameLatency><Enable>on both Origin and Edge. - AV1 software decoding is about 3x faster, enabling real-time 4K 60 fps AV1 decoding. For 4K 60 fps, set
<Decodes><ThreadCount>to 6. ome_session_transmit_bytes_totalandome_session_transmit_bpsare now reported for SRT and OVT sessions (previously always 0).- Added RTT metrics (
ome_stream_rtt_seconds,ome_session_rtt_seconds) for SRT and OVT. The sessionprotocollabel is renamed topublisherand stream metrics gain aproviderlabel, so dashboards and queries using these labels must be updated. ome_track_keyframe_interval_secondsnow reports the actual keyframe interval of the stream and follows mid-stream changes promptly.- Improved LLHLS request handling so a single server can serve roughly 2.5 to 3 times more concurrent LLHLS viewers before playback stalls.
- MPEG-TS based inputs (SRT, MPEG-TS, Multicast) now verify the CRC of PAT, PMT, and SCTE-35 sections and drop sections with a wrong CRC. An encoder that writes an invalid CRC can no longer start a stream.
[Changed]
- MPEG-TS based inputs (SRT, MPEG-TS, Multicast) now verify the CRC of PAT, PMT, and SCTE-35 sections and drop sections with a wrong CRC. An encoder that writes an invalid CRC can no longer start a stream.
Web Console
[Fixed]
- Fixed the stream preview always defaulting to LL-HLS; it now offers only the protocols the selected playlist can serve and automatically falls back to a playable one.
[Improved]
- Log download can now include configuration files and only the logs since the last startup.
- The log viewer can now scroll back through older log lines, including rotated log files.
- Alert Settings now supports multiple notification webhooks, each with its own secret key, hash algorithm, and timeout, with one-click migration from the deprecated single-URL settings.