[package]
edition = "2021"
name = "pssh-box"
version = "0.2.2"
authors = ["Eric Marsden <eric.marsden@risk-engineering.org>"]
build = "build.rs"
publish = true
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Parsing and serialization support for PSSH boxes used in DRM systems"
readme = "README.md"
keywords = [
"PSSH",
"DRM",
"DASH",
"streaming",
"ContentProtection",
]
categories = [
"multimedia::video",
"parser-implementations",
]
license = "MIT"
repository = "https://github.com/emarsden/pssh-box-rs/"
[features]
vendored-protoc = ["dep:protobuf-src"]
[lib]
name = "pssh_box"
path = "src/lib.rs"
[[example]]
name = "decode-pssh"
path = "examples/decode-pssh.rs"
[[example]]
name = "fetch-pssh-data"
path = "examples/fetch-pssh-data.rs"
[[example]]
name = "find"
path = "examples/find.rs"
[[test]]
name = "finding"
path = "tests/finding.rs"
[[test]]
name = "generate"
path = "tests/generate.rs"
[[test]]
name = "parsing"
path = "tests/parsing.rs"
[[test]]
name = "roundtrip"
path = "tests/roundtrip.rs"
[[test]]
name = "serializing"
path = "tests/serializing.rs"
[dependencies.anyhow]
version = "1.0.100"
[dependencies.base64]
version = "0.22.1"
[dependencies.bstr]
version = "1.12.1"
[dependencies.byteorder]
version = "1.5.0"
[dependencies.bytes]
version = "1.11.0"
[dependencies.hex]
version = "0.4.3"
[dependencies.hex-literal]
version = "1.1.0"
[dependencies.hxdmp]
version = "0.2.1"
[dependencies.num_enum]
version = "0.7.5"
[dependencies.prost]
version = "0.14.3"
features = ["derive"]
[dependencies.prost-types]
version = "0.14.3"
[dependencies.quick-xml]
version = "0.39.0"
features = [
"serialize",
"overlapped-lists",
"serde-types",
]
[dependencies.serde]
version = "1.0.228"
features = ["derive"]
[dependencies.serde-xml-rs]
version = "0.8.1"
[dependencies.serde_json]
version = "1.0.149"
[dependencies.serde_path_to_error]
version = "0.1.20"
[dependencies.serde_with]
version = "3.16.0"
features = ["base64"]
[dependencies.tracing]
version = "0.1.44"
features = ["attributes"]
[dependencies.zerocopy]
version = "0.8.33"
features = ["derive"]
[dev-dependencies.clap]
version = "4.5.54"
features = [
"cargo",
"unicode",
"wrap_help",
]
[dev-dependencies.pretty_assertions]
version = "1.4.1"
[dev-dependencies.reqwest]
version = "0.13.1"
features = ["blocking"]
[dev-dependencies.test-log]
version = "0.2.19"
features = ["trace"]
[dev-dependencies.tokio]
version = "1.49.0"
features = [
"rt-multi-thread",
"time",
"macros",
]
[dev-dependencies.tracing-subscriber]
version = "0.3"
features = [
"env-filter",
"time",
]
[build-dependencies.prost-build]
version = "0.14.3"
[build-dependencies.protobuf-src]
version = "2.1.1"
optional = true
[profile.release]
opt-level = "s"
lto = true