[package]
name = "srt-runtime"
version = "0.4.0"
edition = "2024"
description = "SRT (Secure Reliable Transport, draft-sharabayko-srt-01) packet codecs + sans-IO HSv5 Caller-Listener and Rendezvous handshake state machines, an ARQ reliability engine, a TSBPD delivery scheduler, LiveCC packet pacing, FileCC window-based congestion control, optional (crypto feature) payload encryption, and an optional (tokio feature) async UDP socket adapter; no_std core."
license = "MIT OR Apache-2.0"
authors = ["Alex Fishlock <alex.fishlock@racingjag.com>"]
keywords = ["srt", "packet", "sans-io", "transport", "streaming"]
categories = ["parser-implementations", "multimedia", "network-programming", "no-std"]
repository = "https://github.com/fishloa/rust-broadcast"
readme = "README.md"
rust-version.workspace = true
exclude = ["docs/**"]
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]
[dependencies]
broadcast-common = { path = "../broadcast-common", version = "9.3", default-features = false }
thiserror = { version = "2", default-features = false }
serde = { version = "1", optional = true, default-features = false, features = ["derive", "alloc"] }
aes = { version = "0.8", default-features = false, optional = true }
ctr = { version = "0.9", default-features = false, optional = true }
aes-kw = { version = "0.2", default-features = false, optional = true }
pbkdf2 = { version = "0.12", default-features = false, optional = true }
hmac = { version = "0.12", default-features = false, optional = true }
sha1 = { version = "0.10", default-features = false, optional = true }
tokio = { version = "1", optional = true, default-features = false, features = ["net", "io-util", "rt", "macros", "time", "sync"] }
[dev-dependencies]
serde_json = "1.0"
tokio = { version = "1", default-features = false, features = ["net", "io-util", "rt", "macros", "time", "sync"] }
[features]
default = ["std"]
std = ["broadcast-common/std", "thiserror/std"]
serde = ["dep:serde"]
crypto = ["dep:aes", "dep:ctr", "dep:aes-kw", "dep:pbkdf2", "dep:hmac", "dep:sha1"]
tokio = ["dep:tokio", "std"]