1[package]
2name = "gstreamer"
3authors = ["Sebastian Dröge <sebastian@centricular.com>"]
4description = "Rust bindings for GStreamer"
5license = "MIT OR Apache-2.0"
6readme = "README.md"
7keywords = ["gstreamer", "multimedia", "audio", "video", "gnome"]
8documentation = "https://gstreamer.freedesktop.org/documentation/rust/stable/latest/docs/gstreamer/"
9version.workspace = true
10categories.workspace = true
11repository.workspace = true
12homepage.workspace = true
13edition.workspace = true
14rust-version.workspace = true
15
16[dependencies]
17cfg-if = "1.0"
18libc = "0.2"
19gstreamer-sys.workspace = true
20glib.workspace = true
21num-integer = { version = "0.1", default-features = false, features = [] }
22num-rational = { version = "0.4", default-features = false, features = [] }
23futures-core = "0.3"
24futures-channel = "0.3"
25futures-util = { version = "0.3", default-features = false }
26log = { version = "0.4", optional = true }
27muldiv = "1"
28opt-ops = { package = "option-operations", version = "0.5" }
29serde = { version = "1.0", optional = true, features = ["derive"] }
30serde_bytes = { version = "0.11", optional = true }
31paste = "1.0"
32thiserror = "2"
33smallvec = { version = "1.0", features = ["write"] }
34itertools = "0.13"
35pin-project-lite = "0.2"
36once_cell = "1"
37
38[dev-dependencies]
39ron = "0.8"
40serde_json = "1.0"
41futures-executor = "0.3.1"
42gir-format-check = "0.1"
43
44[features]
45default = []
46v1_16 = ["gstreamer-sys/v1_16"]
47v1_18 = ["gstreamer-sys/v1_18", "v1_16"]
48v1_20 = ["gstreamer-sys/v1_20", "v1_18"]
49v1_22 = ["gstreamer-sys/v1_22", "v1_20"]
50v1_24 = ["gstreamer-sys/v1_24", "v1_22"]
51v1_26 = ["gstreamer-sys/v1_26", "v1_24"]
52serde = ["num-rational/serde", "dep:serde", "serde_bytes"]
53log = ["dep:log"]
54
55[package.metadata.docs.rs]
56all-features = true
57rustc-args = ["--cfg", "docsrs"]
58rustdoc-args = ["--cfg", "docsrs", "--generate-link-to-definition"]
59