- merge /api/uptime + /api/version into /api/health and /api/stats - collapse RTMP per-codec dispatch into a single CodecParser path - dedupe STUN attribute walking (ufrag_pair / parse_xor_mapped_address) - dedupe StreamCodec <-> str0m Codec mapping via StreamCodec::from_str0m - dedupe bearer token extraction in WHIP handlers - replace regex charset validation with stdlib checks - flatten one-field wrappers (WebRtcProxyConfig, HttpServerConfig, ServerInfo) - remove SessionCookie extractor (only fed debug logs) - delete dead code: entity ActiveModel helpers, get_stream_session, WebrtcProxy::local_addr, _connected flag, commented-out blocks - drop unused deps: futures, rand, regex, serde_json
39 lines
1.1 KiB
TOML
39 lines
1.1 KiB
TOML
[package]
|
|
name = "server"
|
|
version = "0.5.4"
|
|
edition = "2024"
|
|
|
|
[target.x86_64-unknown-linux-gnu]
|
|
linker = "clang"
|
|
rustflags = ["-Clink-arg=-fuse-ld=/usr/local/bin/mold", "-Clink-arg=-Wl,--no-rosegment"]
|
|
|
|
[[bin]]
|
|
name = "rtmp-to-whip"
|
|
path = "src/main.rs"
|
|
|
|
[dependencies]
|
|
async-broadcast = "0.7.2"
|
|
bytes = "1"
|
|
dashmap = "6.2.1"
|
|
rml_rtmp = "0.8.0"
|
|
str0m = "0.20.0"
|
|
tokio = { version = "1", features = ["full"] }
|
|
axum = { version = "0.8", features = ["macros"] }
|
|
serde = { version = "1.0.228", features = ["serde_derive"] }
|
|
sea-orm = { version = "1", features = [ "sqlx-sqlite", "runtime-tokio-rustls", "macros" ] }
|
|
entity = {path = "../entity"}
|
|
migration = {path = "../migration"}
|
|
argon2 = "0.5.3"
|
|
uuid = { version = "1.23.3", features = ["v4"] }
|
|
tower-http = { version = "0.6", features = ["cors"] }
|
|
tracing = "0.1"
|
|
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
|
|
symphonia = { version = "0.5", features = ["aac"] }
|
|
opus = "0.3.1"
|
|
rubato = "3.0.0"
|
|
chrono = "0.4.45"
|
|
time = "0.3"
|
|
thiserror = "2.0.18"
|
|
sysinfo = "0.36"
|
|
axum-extra = { version = "0.12.6", features = ["cookie"] }
|