Drives all four seams over a real WebRTC room against a live livekit-server: join under a minted token, gate each turn OUTSIDE the model (served vs refused for unheld-capability / over-ceiling), meter the model calls, seal one efficiency/1 that verifies under the steward key. examples/live_room.rs is the runnable proof (data-plane turns → gate/meter/seal, receipt verified). Clears two upstream blockers so `--features livekit` builds + runs on macOS: - vendor/libwebrtc: libwebrtc 0.3.38 omits user_data that webrtc-sys 0.3.36 requires (broken upstream release pair); patched additively + [patch.crates-io]. - build.rs: emit -ObjC so libwebrtc's ObjC categories force-load, else PeerConnectionFactory init crashes on an unrecognized selector. Default build + tests are unaffected (the feature stays off by default). Co-Authored-By: Claude Opus 4.8 <[email protected]>
110 lines
2.6 KiB
TOML
110 lines
2.6 KiB
TOML
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
|
|
#
|
|
# When uploading crates to the registry Cargo will automatically
|
|
# "normalize" Cargo.toml files for maximal compatibility
|
|
# with all versions of Cargo and also rewrite `path` dependencies
|
|
# to registry (e.g., crates.io) dependencies.
|
|
#
|
|
# If you are reading this file be aware that the original Cargo.toml
|
|
# will likely look very different (and much more reasonable).
|
|
# See Cargo.toml.orig for the original contents.
|
|
|
|
[package]
|
|
edition = "2021"
|
|
name = "libwebrtc"
|
|
version = "0.3.38"
|
|
build = false
|
|
autolib = false
|
|
autobins = false
|
|
autoexamples = false
|
|
autotests = false
|
|
autobenches = false
|
|
description = "Livekit safe bindings to libwebrtc"
|
|
homepage = "https://livekit.io"
|
|
readme = false
|
|
license = "Apache-2.0"
|
|
repository = "https://github.com/livekit/rust-sdks"
|
|
|
|
[features]
|
|
default = []
|
|
glib-main-loop = ["dep:glib"]
|
|
|
|
[lib]
|
|
name = "libwebrtc"
|
|
path = "src/lib.rs"
|
|
|
|
[dependencies.log]
|
|
version = "0.4"
|
|
|
|
[dependencies.serde]
|
|
version = "1"
|
|
features = ["derive"]
|
|
|
|
[dependencies.serde_json]
|
|
version = "1.0"
|
|
|
|
[dependencies.thiserror]
|
|
version = "2"
|
|
|
|
[dev-dependencies.env_logger]
|
|
version = "0.11"
|
|
|
|
[target.'cfg(any(target_os = "linux", target_os = "freebsd"))'.dependencies.glib]
|
|
version = "0.21.3"
|
|
optional = true
|
|
|
|
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.cxx]
|
|
version = "1.0"
|
|
|
|
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.lazy_static]
|
|
version = "1.4"
|
|
|
|
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.livekit-runtime]
|
|
version = "0.4.0"
|
|
|
|
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.parking_lot]
|
|
version = "0.12"
|
|
|
|
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.rtrb]
|
|
version = "0.3.3"
|
|
|
|
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.tokio]
|
|
version = "1"
|
|
features = [
|
|
"sync",
|
|
"macros",
|
|
]
|
|
default-features = false
|
|
|
|
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.webrtc-sys]
|
|
version = "0.3.35"
|
|
|
|
[target.'cfg(target_arch = "wasm32")'.dependencies.js-sys]
|
|
version = "0.3"
|
|
|
|
[target.'cfg(target_arch = "wasm32")'.dependencies.wasm-bindgen]
|
|
version = "0.2"
|
|
|
|
[target.'cfg(target_arch = "wasm32")'.dependencies.wasm-bindgen-futures]
|
|
version = "0.4"
|
|
|
|
[target.'cfg(target_arch = "wasm32")'.dependencies.web-sys]
|
|
version = "0.3"
|
|
features = [
|
|
"MessageEvent",
|
|
"RtcPeerConnection",
|
|
"RtcSignalingState",
|
|
"RtcSdpType",
|
|
"RtcSessionDescriptionInit",
|
|
"RtcPeerConnectionIceEvent",
|
|
"RtcIceCandidate",
|
|
"RtcDataChannel",
|
|
"RtcDataChannelEvent",
|
|
"RtcDataChannelState",
|
|
"EventTarget",
|
|
"WebGlRenderingContext",
|
|
"WebGlTexture",
|
|
]
|
|
|
|
[target.'cfg(target_os = "android")'.dependencies.jni]
|
|
version = "0.21"
|