Efficient tools to build your streaming infrastructure


KLV processing in Nimble Streamer


KLV (Key-Length-Value) is a binary encoding standard defined by SMPTE 336M, widely used in broadcast and security industries to embed structured metadata into video streams. It allows ancillary data – such as geospatial coordinates, sensor readings, camera parameters, and timestamps – to travel in sync with the video content within the same transport stream. Nimble Streamer supports KLV metadata handling as part of its streaming pipeline, giving engineers precise control over how this data is ingested, processed, and delivered to end points.

KLV metadata passthrough

Nimble Streamer supports KLV metadata passthrough. It works for the following protocols:

  • MPEG-TS-based input: MPEG-TS over UDP and over HTTP, SRT and RIST.
  • Supported outputs are HLS, MPEG-TS over HTTP/UDP, SRT and RIST.

So if your MPEGTS input has KLV streams in it, you’ll be able to pass them through.

KLV pass through Transcoder

If you need to carry KLV through Live Transcoder content transformation, you can do it as well.

Just enable “Forward KLV metadata” option in decoder and encoder blocks.

KLV in DVR

KLV can also be recorded to DVR and then provided in HLS DVR output. Notice that you need to enable “Keep KLV metadata” in DVR setting to make it work.


Enabling KLV processing

To enable this feature, you need to add max_forwarded_klv_streams parameter into Nimble config file to set the maximum number of expected streams.

max_forwarded_klv_streams=4

Free trial of WMSPanel included