[package]
name = "gstreamer"
version = "0.19.2"
authors = ["Sebastian Dröge <sebastian@centricular.com>"]
categories = ["api-bindings", "multimedia"]
description = "Rust bindings for GStreamer"
repository = "https://gitlab.freedesktop.org/gstreamer/gstreamer-rs"
license = "MIT OR Apache-2.0"
readme = "README.md"
homepage = "https://gstreamer.freedesktop.org"
documentation = "https://gstreamer.pages.freedesktop.org/gstreamer-rs/stable/latest/docs/gstreamer/"
keywords = ["gstreamer", "multimedia", "audio", "video", "gnome"]
edition = "2021"
rust-version = "1.63"

[dependencies]
bitflags = "1.0"
cfg-if = "1.0"
libc = "0.2"
ffi = { package = "gstreamer-sys", version = "0.19", path = "sys" }
glib = { git = "https://github.com/gtk-rs/gtk-rs-core", branch = "0.16", version = "0.16.2" }
num-integer = { version = "0.1", default-features = false, features = [] }
num-rational = { version = "0.4", default-features = false, features = [] }
once_cell = "1.0"
futures-core = "0.3"
futures-channel = "0.3"
futures-util = { version = "0.3", default-features = false }
muldiv = "1"
opt-ops = { package = "option-operations", version = "0.5" }
serde = { version = "1.0", optional = true, features = ["derive"] }
serde_bytes = { version = "0.11", optional = true }
paste = "1.0"
pretty-hex = "0.3"
thiserror = "1"

[dev-dependencies]
ron = "0.8"
serde_json = "1.0"
futures-executor = "0.3.1"
gir-format-check = "0.1"

[features]
default = []
v1_16 = ["ffi/v1_16"]
v1_18 = ["ffi/v1_18", "v1_16"]
v1_20 = ["ffi/v1_20", "v1_18"]
v1_22 = ["ffi/v1_22", "v1_20"]
dox = ["ffi/dox", "glib/dox", "serde"]
serde = ["num-rational/serde", "dep:serde", "serde_bytes"]

[package.metadata.docs.rs]
features = ["dox"]
