Parse and encoding of data using the SCTE-35 standard.
Find a file
Rafael Caricio 5d72027943
Use generic trait for SpliceTime creation
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>
2022-05-06 22:26:57 +02:00
src Use generic trait for SpliceTime creation 2022-05-06 22:26:57 +02:00
.gitignore Initial version 2022-04-24 00:05:28 +02:00
Cargo.toml Segmentation descriptor with upid types 2022-05-03 13:40:39 +02:00
LICENSE Add license file 2022-05-06 22:16:56 +02:00
README.md Update readme 2022-05-03 16:54:39 +02:00

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
  • CRC calculation