Parse and encoding of data using the SCTE-35 standard.
Find a file
Rafael Caricio 501e060979
Serialize TimeSignal with additional fields
Move all code related to the "serde" feature to a separated module. Add
missing getter methods to some structs. Add missing derive to public
structs. Makes all tests pass.

Signed-off-by: Rafael Caricio <rafael@caricio.com>
2022-05-06 23:56:17 +02:00
src Serialize TimeSignal with additional fields 2022-05-06 23:56:17 +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