[package]
name = "cros-codecs"
version = "0.0.6"
license = "BSD-3-Clause"
description = "Hardware-accelerated codecs for Linux"
repository = "https://github.com/chromeos/cros-codecs"
authors = ["The ChromiumOS Authors"]
edition = "2021"
[features]
default = []
backend = ["anyhow", "byteorder", "thiserror", "crc32fast", "nix", "gbm", "gbm-sys", "drm", "drm-fourcc", "zerocopy"]
vaapi = ["libva", "backend"]
v4l2 = ["v4l2r", "backend"]
[dependencies]
anyhow = { version = "1.0.75", optional = true }
byteorder = { version = "1.4.3", optional = true }
libva = { version = "0.0.12", package = "cros-libva", optional = true }
v4l2r = { version = "0.0.5", package = "v4l2r", optional = true }
log = { version = "0", features = ["release_max_level_debug"] }
thiserror = { version = "1.0.58", optional = true }
crc32fast = { version = "1.3.2", optional = true }
nix = { version = "0.28", features = ["fs", "event", "poll", "mman", "ioctl"], optional = true }
drm = { version = "0.12.0", optional = true }
drm-fourcc = { version = "2.2.0", optional = true }
gbm = { version = "0.15", default-features = false, features = ["drm-support"], optional = true }
gbm-sys = { version = "0.3.1", optional = true }
zerocopy = { version = "0.8.14", optional = true, features = ["derive"] }
[dev-dependencies]
argh = "0.1.12"
env_logger = "0.9.3"
serde_json = "1.0.96"
[lints.rust]
unexpected_cfgs = { level = "warn", check-cfg = ['cfg(fuzzing)'] }
[[example]]
name = "ccdec"
required-features = ["backend"]
[[example]]
name = "ccenc"
required-features = ["backend"]
[[example]]
name = "perf_test"
required-features = ["backend"]