Hi everyone,
I wanted to share an open-source GStreamer plugin suite I have been developing for KLV metadata workflows:
It is aimed at practical MPEG-TS / STANAG 4609 style pipelines and currently provides:
- JSON ↔ KLV conversion
- MISB ST 0601.8 support (93 tags)
- frame-synchronous KLV injection alongside H.264 / H.265
- PMT rewriting for KLVA metadata signaling
- Python and C++ examples for local, UDP, and SRT workflows
The current elements are:
klvmetaencklvmetadecklvframeinjecttspmtrewrite
The project is written in C11 for the plugin side, uses Meson as the recommended build/test path, and includes extra documentation for installation, packaging, testing, Docker usage, and design decisions.
I built it to cover the full path from metadata generation/decoding to actual transport-oriented integration inside GStreamer pipelines.
I would be glad to get feedback from the community, especially regarding:
- element design
- caps and negotiation
- MPEG-TS metadata signaling choices
- interoperability with existing GStreamer tooling
Hopefully it can also be useful to others working with KLV metadata in real pipelines.
I also shared a short overview on LinkedIn:
