Parse and encoding of data using the SCTE-35 standard.
Rafael Caricio
5d72027943
Add support for creating `SpliceTime` instances from anything that implements the trait `ClockTimeExt`. This makes redundant to implement the `From` trait for the `std::time::Duration` struct, since it implements the `ClockTimeExt` trait. Signed-off-by: Rafael Caricio <rafael@caricio.com> |
||
---|---|---|
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