mirror of
https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs.git
synced 2024-12-29 21:40:31 +00:00
635a83a8d7
We want to enable passthrough internally, and only notify that
internally it has been enabled once the transcriber has been unlinked.
This way applications connected to the notify handler can synchronously
update the properties and attempt to disable passthrough again.
Doing so properly requires a refactoring of the transition to the
passthrough state, with the currently set passthrough mode maintained
separately from the target passthrough state.
This commit also finishes the work left incomplete in
17d7997137
by moving the passthrough
property to the sink pad class, making each transcriber passthrough
state independent from the others.
Also adds an example to demonstrate the behavior
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1856>
68 lines
1.8 KiB
TOML
68 lines
1.8 KiB
TOML
[package]
|
|
name = "gst-plugin-closedcaption"
|
|
version.workspace = true
|
|
authors = ["Sebastian Dröge <sebastian@centricular.com>", "Jordan Petridis <jordan@centricular.com>", "Matthew Waters <matthew@centricular.com>"]
|
|
license = "MPL-2.0"
|
|
edition.workspace = true
|
|
rust-version.workspace = true
|
|
description = "GStreamer Rust Closed Caption Plugin"
|
|
repository.workspace = true
|
|
|
|
[dependencies]
|
|
anyhow = "1"
|
|
either = "1"
|
|
uuid = { version = "1.0", features = ["v4"] }
|
|
chrono = "0.4.23"
|
|
atomic_refcell = "0.1"
|
|
cairo-rs.workspace = true
|
|
pango.workspace = true
|
|
pangocairo.workspace = true
|
|
byteorder = "1"
|
|
serde = { version = "1.0", features = ["derive"] }
|
|
serde_json = { version = "1.0", features = ["raw_value"] }
|
|
cea708-types = "0.3.2"
|
|
cea608-types = "0.1.1"
|
|
gst = { workspace = true, features = ["v1_20"]}
|
|
gst-base = { workspace = true, features = ["v1_22"]}
|
|
gst-video = { workspace = true, features = ["v1_16"]}
|
|
winnow = "0.6"
|
|
smallvec = "1"
|
|
bitstream-io = "2.3"
|
|
|
|
[dev-dependencies]
|
|
pretty_assertions = "1"
|
|
rand = { version = "0.8", features = ["small_rng"] }
|
|
gst-check.workspace = true
|
|
clap = { version = "4", features = ["derive"] }
|
|
|
|
[lib]
|
|
name = "gstrsclosedcaption"
|
|
crate-type = ["cdylib", "rlib"]
|
|
path = "src/lib.rs"
|
|
|
|
[build-dependencies]
|
|
gst-plugin-version-helper.workspace = true
|
|
|
|
[features]
|
|
# We already use 1.16 which is new enough for static build
|
|
static = []
|
|
capi = []
|
|
doc = ["gst/v1_18"]
|
|
v1_26 = ["gst-base/v1_26"]
|
|
|
|
[package.metadata.capi]
|
|
min_version = "0.9.21"
|
|
|
|
[package.metadata.capi.header]
|
|
enabled = false
|
|
|
|
[package.metadata.capi.library]
|
|
install_subdir = "gstreamer-1.0"
|
|
versioning = false
|
|
import_library = false
|
|
|
|
[package.metadata.capi.pkg_config]
|
|
requires_private = "gstreamer-1.0, gstreamer-base-1.0, gstreamer-video-1.0, gobject-2.0, glib-2.0, gmodule-2.0, pango, pangocairo, cairo-gobject"
|
|
|
|
[[example]]
|
|
name = "passthrough-notify"
|