[package]
edition = "2021"
name = "dash-mpd"
version = "0.19.3"
authors = ["Eric Marsden <eric.marsden@risk-engineering.org>"]
build = false
publish = true
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Parse, serialize, download an MPD manifest for MPEG-DASH or WebM-DASH media streaming"
readme = "README.md"
keywords = [
"video",
"streaming",
"MPD",
"DASH",
"MPEG",
]
categories = [
"multimedia",
"multimedia::video",
"parser-implementations",
]
license = "MIT"
repository = "https://github.com/emarsden/dash-mpd-rs"
[features]
compression = [
"reqwest/gzip",
"reqwest/brotli",
"reqwest/zstd",
]
default = [
"fetch",
"native-tls",
"compression",
"socks",
"scte35",
"http2",
]
fetch = [
"data-url",
"reqwest",
"tokio",
"backon",
"governor",
"xot",
"tempfile",
"sanitise-file-name",
"ffprobe",
"file-format",
"bstr",
"hex-literal",
"pssh-box",
"humantime",
]
hickory-dns = ["reqwest/hickory-dns"]
http2 = ["reqwest/http2"]
http3 = ["reqwest/http3"]
libav = ["dep:ac-ffmpeg"]
native-tls = ["reqwest/native-tls"]
rustls-tls = ["reqwest/rustls"]
sandbox = [
"dep:landlock",
"dep:dir_spec",
]
scte35 = []
socks = ["reqwest/socks"]
warn_ignored_elements = ["dep:serde_ignored"]
[lib]
name = "dash_mpd"
path = "src/lib.rs"
[[example]]
name = "dash_stream_info"
path = "examples/dash_stream_info.rs"
[[example]]
name = "debug_mp4box_muxing"
path = "examples/debug_mp4box_muxing.rs"
[[example]]
name = "decrypt"
path = "examples/decrypt.rs"
[[example]]
name = "download_bbc"
path = "examples/download_bbc.rs"
[[example]]
name = "download_progressbar"
path = "examples/download_progressbar.rs"
[[example]]
name = "download_proxy"
path = "examples/download_proxy.rs"
[[example]]
name = "pprint_bbc_adaptive"
path = "examples/pprint_bbc_adaptive.rs"
[[example]]
name = "rewrite_xslt"
path = "examples/rewrite_xslt.rs"
[[example]]
name = "round_trip"
path = "examples/round_trip.rs"
[[example]]
name = "serialize"
path = "examples/serialize.rs"
[[test]]
name = "audio_video"
path = "tests/audio_video.rs"
[[test]]
name = "base_url"
path = "tests/base_url.rs"
[[test]]
name = "basic_auth"
path = "tests/basic_auth.rs"
[[test]]
name = "bearer_auth"
path = "tests/bearer_auth.rs"
[[test]]
name = "concat"
path = "tests/concat.rs"
[[test]]
name = "content_protection"
path = "tests/content_protection.rs"
[[test]]
name = "content_protection_containerized"
path = "tests/content_protection_containerized.rs"
[[test]]
name = "data_url"
path = "tests/data_url.rs"
[[test]]
name = "dynamic"
path = "tests/dynamic.rs"
[[test]]
name = "fetch_failures"
path = "tests/fetch_failures.rs"
[[test]]
name = "fetch_fault_injection"
path = "tests/fetch_fault_injection.rs"
[[test]]
name = "fetching"
path = "tests/fetching.rs"
[[test]]
name = "file_url"
path = "tests/file_url.rs"
[[test]]
name = "language"
path = "tests/language.rs"
[[test]]
name = "mpd_location"
path = "tests/mpd_location.rs"
[[test]]
name = "multiperiod"
path = "tests/multiperiod.rs"
[[test]]
name = "muxing"
path = "tests/muxing.rs"
[[test]]
name = "parsing"
path = "tests/parsing.rs"
[[test]]
name = "role"
path = "tests/role.rs"
[[test]]
name = "scte35"
path = "tests/scte35.rs"
[[test]]
name = "selecting"
path = "tests/selecting.rs"
[[test]]
name = "serializing"
path = "tests/serializing.rs"
[[test]]
name = "sidx"
path = "tests/sidx.rs"
[[test]]
name = "stream_ranking"
path = "tests/stream_ranking.rs"
[[test]]
name = "subtitles"
path = "tests/subtitles.rs"
[[test]]
name = "transcoding"
path = "tests/transcoding.rs"
[[test]]
name = "xlink"
path = "tests/xlink.rs"
[[test]]
name = "xslt"
path = "tests/xslt.rs"
[dependencies.ac-ffmpeg]
version = "0.19.0"
optional = true
[dependencies.backon]
version = "1.6.0"
features = ["tokio"]
optional = true
[dependencies.base64]
version = "0.22.1"
[dependencies.base64-serde]
version = "0.8.0"
[dependencies.bstr]
version = "1.12.1"
optional = true
[dependencies.byteorder]
version = "1.5.0"
[dependencies.bytes]
version = "1.11.0"
[dependencies.chrono]
version = "0.4.43"
features = ["serde"]
[dependencies.data-url]
version = "0.3.2"
optional = true
[dependencies.dir_spec]
version = "0.5.0"
optional = true
[dependencies.ffprobe]
version = "0.4.0"
optional = true
[dependencies.file-format]
version = "0.28.0"
features = ["reader"]
optional = true
[dependencies.futures-util]
version = "0.3.31"
[dependencies.governor]
version = "0.10.4"
optional = true
[dependencies.hex-literal]
version = "1.1.0"
optional = true
[dependencies.humantime]
version = "2.3.0"
optional = true
[dependencies.hxdmp]
version = "0.2.1"
[dependencies.iso8601]
version = "0.6.3"
[dependencies.lazy_static]
version = "1.5.0"
[dependencies.num-traits]
version = "0.2.19"
[dependencies.pssh-box]
version = "0.2.2"
optional = true
[dependencies.quick-xml]
version = "0.39.0"
features = [
"serialize",
"overlapped-lists",
]
[dependencies.regex]
version = "1.12.2"
features = [
"std",
"unicode-perl",
]
default-features = false
[dependencies.reqwest]
version = "0.13.1"
features = [
"cookies",
"charset",
"system-proxy",
]
optional = true
default-features = false
[dependencies.sanitise-file-name]
version = "1.0.0"
optional = true
[dependencies.serde]
version = "1.0.228"
features = ["derive"]
[dependencies.serde_ignored]
version = "0.1.14"
optional = true
[dependencies.serde_path_to_error]
version = "0.1.20"
[dependencies.serde_with]
version = "3.16.1"
features = ["base64"]
[dependencies.tempfile]
version = "3.24.0"
optional = true
[dependencies.thiserror]
version = "2.0.18"
[dependencies.tokio]
version = "1.49.0"
features = [
"rt-multi-thread",
"time",
"macros",
"fs",
"io-util",
]
optional = true
[dependencies.tracing]
version = "0.1.44"
features = [
"attributes",
"std",
]
[dependencies.url]
version = "2.5.8"
[dependencies.webm-iterable]
version = "0.6.4"
[dependencies.xot]
version = "0.31.2"
optional = true
[dev-dependencies.anyhow]
version = "1.0.100"
[dev-dependencies.approx]
version = "0.5.1"
[dev-dependencies.assert_cmd]
version = "2.1.2"
[dev-dependencies.axum]
version = "0.8.8"
[dev-dependencies.axum-auth]
version = "0.8.1"
[dev-dependencies.axum-server]
version = "0.8.0"
[dev-dependencies.clap]
version = "4.5.54"
[dev-dependencies.colored]
version = "3.1.1"
[dev-dependencies.hex-literal]
version = "1.1.0"
[dev-dependencies.http]
version = "1.4.0"
[dev-dependencies.image]
version = "0.25.9"
[dev-dependencies.indicatif]
version = "0.18.3"
[dev-dependencies.jzon]
version = "0.12.5"
[dev-dependencies.mp4]
version = "0.14.0"
[dev-dependencies.pretty_assertions]
version = "1.4.1"
[dev-dependencies.proptest]
version = "1.9.0"
[dev-dependencies.reqwest]
version = "0.13.1"
features = [
"cookies",
"json",
"blocking",
]
default-features = false
[dev-dependencies.roxmltree]
version = "0.21.1"
[dev-dependencies.serde_json]
version = "1.0.149"
[dev-dependencies.sha2]
version = "0.10.9"
[dev-dependencies.time]
version = "0.3"
features = ["macros"]
[dev-dependencies.tokio]
version = "1.49.0"
features = [
"rt-multi-thread",
"time",
"macros",
]
[dev-dependencies.tracing-subscriber]
version = "0.3"
features = [
"env-filter",
"local-time",
"ansi",
"tracing-log",
]
[dev-dependencies.xmlem]
version = "0.3.3"
[target.'cfg(target_os="linux")'.dependencies.landlock]
version = "0.4.4"
optional = true
[target."cfg(unix)".dependencies.xattr]
version = "1.6.1"