VisioForge

SDK de métadonnées KLV / MISB pour .NET

Lisez la télémétrie KLV d'un flux MPEG-TS, décodez les éléments MISB ST 0601, et enregistrez ou rediffusez des flux MISB en direct sans perdre les métadonnées — depuis C# et .NET.

À partir de €500/an · licence Lifetime à partir de €1,500

Ce que sont KLV et MISB

KLV (Key-Length-Value, SMPTE ST 336) est l'encodage binaire utilisé par les systèmes de drones, ISR et surveillance pour transporter la télémétrie à côté de la vidéo : horodatages, position et orientation de la plateforme et du capteur, et géolocalisation du centre de l'image. MISB ST 0601 (UAS Datalink Local Set) définit ces champs, et les flux MISB / STANAG 4609 les transportent comme un flux de métadonnées distinct à l'intérieur du MPEG-TS.

Ce que le SDK fait avec le KLV

Deux SDK VisioForge prennent en charge le KLV : Media Blocks SDK traite le KLV dans les fichiers MPEG-TS sous Windows, Linux et macOS, et Video Capture SDK transmet le KLV en direct d'une caméra IP ou d'une source UDP vers un enregistrement ou une rediffusion sous Windows.

  • Extraire : MPEGTSDemuxBlock expose le flux de métadonnées d'un fichier MPEG-TS sur son pad MetadataOutput, et KLVFileSinkBlock écrit les paquets KLV dans un fichier .klv
  • Décoder : KLVParser lit les éléments du local set MISB ST 0601 — plus de 90, de l'horodatage de précision aux coordonnées du capteur et du centre de l'image — et gère les longueurs encodées en BER utilisées par MISB
  • Intégrer (Media Blocks) : MPEGTSSinkSettings.Metadata accepte un objet KLVMetadata créé à partir d'un fichier .klv ou d'un tableau d'octets ; il est multiplexé comme une charge statique unique, et non comme une piste horodatée image par image
  • Enregistrer et rediffuser le KLV en direct (Video Capture SDK, Windows) : MPEGTSOutput.KLVEnabled multiplexe le KLV de la source dans le fichier MPEG-TS, et FFMPEGEXEOutput.KLVEnabled le transporte dans les sorties MPEG-TS, RTP MPEG-TS et HLS (pour l'enregistrement dans un fichier, activez aussi UsePipe)
  • Lire les paquets en direct : l'événement OnDataFrameBuffer fournit chaque paquet KLV avec sa taille et son horodatage (DataFrameType.KLV)

Exemples de code

Condensés à partir de KLV Demo et de l'exemple ip-camera-klv-mpegts-recorder.

Extraire le KLV d'un fichier MPEG-TS et décoder MISB ST 0601

C#

Enregistrer un flux MISB en direct en MPEG-TS avec le KLV

C#

Pipeline

Dans Media Blocks SDK, l'extraction du KLV tient en trois blocs — source fichier, démultiplexeur MPEG-TS et sink de fichier KLV — puis KLVParser décode le fichier .klv. Les pads vidéo et audio du démultiplexeur peuvent alimenter en même temps un moteur de rendu ou un encodeur.

BasicFileSourceBlock
MPEGTSDemuxBlock
KLVFileSinkBlock
KLVParser

Commencez à travailler avec le KLV

Téléchargez la version d'essai de 30 jours entièrement fonctionnelle et lancez les exemples KLV. Selon le moteur et la sortie, un filigrane ou une mention de version non enregistrée peut apparaître.

SDK prenant en charge le KLV

À partir de €500/an · licence Lifetime à partir de €1,500