mirror of
https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs.git
synced 2024-11-26 21:41:03 +00:00
ab1ec12698
This is a first step where we try to replicate encoding conditions from the input stream into the discovery pipeline. A second patch will implement using input buffers in the discovery pipelines. This moves discovery to using input buffers directly. Instead of trying to replicate buffers that `webrtcsink` is getting as input with testsrc, directly run discovery based on the real buffers. This way we are sure we work with the exact right stream type and we don't need encoders to support encoding streams inputs. We use the same logic for both encoded and raw input to avoid having several code paths and makes it all more correct in any case. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1194>
87 lines
3.2 KiB
TOML
87 lines
3.2 KiB
TOML
[package]
|
|
name = "gst-plugin-webrtc"
|
|
version = "0.11.0-alpha.1"
|
|
edition = "2021"
|
|
authors = ["Mathieu Duponchelle <mathieu@centricular.com>", "Thibault Saunier <tsaunier@igalia.com>"]
|
|
license = "MPL-2.0"
|
|
description = "GStreamer plugin for high level WebRTC elements and a simple signaling server"
|
|
repository = "https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs"
|
|
rust-version = "1.66"
|
|
|
|
[dependencies]
|
|
gst = { git="https://gitlab.freedesktop.org/gstreamer/gstreamer-rs", package = "gstreamer", features = ["v1_20", "serde"] }
|
|
gst-app = { git="https://gitlab.freedesktop.org/gstreamer/gstreamer-rs", package = "gstreamer-app", features = ["v1_20"] }
|
|
gst-video = { git="https://gitlab.freedesktop.org/gstreamer/gstreamer-rs", package = "gstreamer-video", features = ["v1_20", "serde"] }
|
|
gst-webrtc = { git="https://gitlab.freedesktop.org/gstreamer/gstreamer-rs", package = "gstreamer-webrtc", features = ["v1_20"] }
|
|
gst-sdp = { git="https://gitlab.freedesktop.org/gstreamer/gstreamer-rs", package = "gstreamer-sdp", features = ["v1_20"] }
|
|
gst-rtp = { git="https://gitlab.freedesktop.org/gstreamer/gstreamer-rs", package = "gstreamer-rtp", features = ["v1_20"] }
|
|
gst-utils = { git="https://gitlab.freedesktop.org/gstreamer/gstreamer-rs", package = "gstreamer-utils" }
|
|
gst-base = { git="https://gitlab.freedesktop.org/gstreamer/gstreamer-rs", package = "gstreamer-base" }
|
|
uuid = { version = "1", features = ["v4"] }
|
|
|
|
once_cell = "1.0"
|
|
anyhow = "1"
|
|
thiserror = "1"
|
|
futures = "0.3"
|
|
tokio = { version = "1", features = ["fs", "macros", "rt-multi-thread", "time"] }
|
|
tokio-native-tls = "0.3.0"
|
|
tokio-stream = "0.1.11"
|
|
async-tungstenite = { version = "0.22", features = ["tokio-runtime", "tokio-native-tls"] }
|
|
serde = "1"
|
|
serde_json = "1"
|
|
fastrand = "1.0"
|
|
gst_plugin_webrtc_protocol = { path="protocol", package = "gst-plugin-webrtc-signalling-protocol" }
|
|
human_bytes = "0.4"
|
|
url = "2"
|
|
|
|
aws-config = "0.55.0"
|
|
aws-types = "0.55.0"
|
|
aws-credential-types = "0.55.0"
|
|
aws-sig-auth = "0.55.0"
|
|
aws-smithy-http = { version = "0.55.0", features = [ "rt-tokio" ] }
|
|
aws-smithy-types = "0.55.0"
|
|
aws-sdk-kinesisvideo = "0.28.0"
|
|
aws-sdk-kinesisvideosignaling = "0.28.0"
|
|
http = "0.2.7"
|
|
chrono = "0.4"
|
|
data-encoding = "2.3.3"
|
|
url-escape = "0.1.1"
|
|
|
|
[dev-dependencies]
|
|
tracing = { version = "0.1", features = ["log"] }
|
|
tracing-subscriber = { version = "0.3", features = ["registry", "env-filter"] }
|
|
tracing-log = "0.1"
|
|
clap = { version = "4", features = ["derive"] }
|
|
|
|
[lib]
|
|
name = "gstrswebrtc"
|
|
crate-type = ["cdylib", "rlib"]
|
|
path = "src/lib.rs"
|
|
|
|
[build-dependencies]
|
|
gst-plugin-version-helper = { path = "../../version-helper" }
|
|
|
|
[features]
|
|
static = []
|
|
capi = []
|
|
gst1_22 = ["gst/v1_22", "gst-app/v1_22", "gst-video/v1_22", "gst-webrtc/v1_22", "gst-sdp/v1_22", "gst-rtp/v1_22"]
|
|
doc = []
|
|
|
|
[package.metadata.capi]
|
|
min_version = "0.8.0"
|
|
|
|
[package.metadata.capi.header]
|
|
enabled = false
|
|
|
|
[package.metadata.capi.library]
|
|
install_subdir = "gstreamer-1.0"
|
|
versioning = false
|
|
|
|
[package.metadata.capi.pkg_config]
|
|
requires_private = "gstreamer-rtp-1.0 >= 1.20, gstreamer-webrtc-1.0 >= 1.20, gstreamer-1.0 >= 1.20, gstreamer-app-1.0 >= 1.20, gstreamer-video-1.0 >= 1.20, gstreamer-sdp-1.0 >= 1.20, gobject-2.0, glib-2.0, gmodule-2.0"
|
|
|
|
[[example]]
|
|
name = "webrtcsink-stats-server"
|
|
|
|
[[example]]
|
|
name = "webrtcsink-high-quality-tune"
|