klv-uas
A library for extracting KLV data from transport stream packet payloads. This library is not indented to be used for injecting KLV data into video streams.
Example
extern crate klv_uas;
use env;
use Tag;
use TSReader;
use File;
use BufReader;
use KlvPacket;
Goals
- Support parsing all value types from KLV fields.
- int
- int8
- int16
- int32
- uint
- uint8
- uint16
- uint32
- uint64
- IMAPB
- Byte
- DLP
- VLP
- FLP
- Set
- UTF8
- Support converting all types of KLV value to actual values.
- Such as converting KLV Tag 5 (Platform Heading Angle) to the actual floating point angle represented by the integer value stored in the KLV value.
Testing
TEST_FILE="$HOME/Truck.ts" cargo run --features search --example klv_timestamp
Reference Material
- A sample TS stream with KLV data can be found here.
- The standards for KLV metadata can be found here. Find
MISB ST 0107.Xand clickFILE. The current link is here but is likely to change. - The standards for the UAS Datalink Local Set can be found here. Find
MISB ST 0601.Xand clickFILE. The current link is here but is likely to change.