Rafael Caricio
6b13875150
Using the Deku library we can implement a `no_std` compatible read and write structs/enums. We don't need to write manually encoding code and rely completely on the Deku derive macros to do the right job. I've implemented the SpliceTime part of the spec as a proof of concept of the use of Deku. It worked great for this small structure. |
||
---|---|---|
src | ||
.gitignore | ||
Cargo.toml | ||
LICENSE | ||
README.md |
SCTE-35 lib and parser for Rust
Work in progress!
This library provide access to parse and encoding of data using the SCTE-35 standard. This standard is used by cable providers and broadcasters to insert signaling information into the video stream for advertising and other purposes. More information can be found at Digital Program Insertion Cueing Message for Cable.
Main Features
- Parsing of SCTE-35 data (not yet implemented)
- Encoding of SCTE-35 data
- Serde integration for serialization into JSON or any other serde supported formats.
Implementation Overview
Implemented parts of the standard are:
- Splice Info section
- Splice Commands:
- Splice Null
- Splice Insert
- Splice Schedule
- Time Signal
- Bandwidth Reservation
- Splice Time
- Splice Descriptors:
- Avail
- DTMF
- Segmentation Descriptor
- MPU
- MID
- Encryption Information section
- Encryption Algorithms:
- DES – ECB mode
- DES – CBC mode
- Triple DES EDE3 – ECB mode
- Customized encryption algorithm
- CRC encryption calculation
- Encryption Algorithms:
- CRC calculation