Skip to main content

0.21.2

0.21.2.0 (October 23, 2026)​

OvenMediaEngine​

[Compatibility]​

  • Compatible with the Server.xml configuration 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, and fadeOutColor attributes.
  • 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 codecs string 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 /apps now rejects * with a clear error.
  • Fixed LLHLS chunks being cut shorter than ChunkDuration when the stream contains B-frames, and improved rendition alignment in synced segmentation mode.
  • Fixed the ome_track_has_bframes metric 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 set RetryCount.
  • 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> to nv,default so 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_total and ome_session_transmit_bps are 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 session protocol label is renamed to publisher and stream metrics gain a provider label, so dashboards and queries using these labels must be updated.
  • ome_track_keyframe_interval_seconds now 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.