Files
nokhwa/Cargo.toml
T
2022-09-13 08:41:03 -07:00

165 lines
3.9 KiB
TOML

[package]
name = "nokhwa"
version = "0.10.0"
authors = ["l1npengtul <l1npengtul@protonmail.com>"]
edition = "2021"
description = "A Simple-to-use, cross-platform Rust Webcam Capture Library"
keywords = ["camera", "webcam", "capture", "cross-platform"]
license = "Apache-2.0"
repository = "https://github.com/l1npengtul/nokhwa"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[workspace]
members = ["nokhwa-bindings-macos", "nokhwa-bindings-windows", "nokhwa-core", "examples/*"]
exclude = ["examples/jscam"]
[lib]
crate-type = ["cdylib", "rlib"]
[features]
default = ["flume", "decoding"]
serialize = ["serde", "nokhwa-core/serialize"]
decoding = ["nokhwa-core/mjpeg"]
input-v4l = ["v4l", "v4l2-sys-mit"]
input-msmf = ["nokhwa-bindings-windows"]
input-avfoundation = ["nokhwa-bindings-macos"]
# Re-enable it once soundness has been proven + mozjpeg is updated to 0.9.x
# input-uvc = ["uvc", "uvc/vendor", "usb_enumeration", "lazy_static"]
input-opencv = ["opencv", "opencv/rgb", "rgb"]
input-ipcam = ["input-opencv"]
input-gst = ["gstreamer", "glib", "gstreamer-app", "gstreamer-video", "regex", "parking_lot"]
input-jscam = ["web-sys", "js-sys", "wasm-bindgen-futures", "wasm-bindgen", "wasm-rs-async-executor"]
output-wgpu = ["wgpu"]
output-wasm = ["input-jscam"]
output-threaded = []
small-wasm = []
docs-only = ["input-v4l", "input-opencv", "input-ipcam", "input-gst", "input-msmf", "input-avfoundation", "input-jscam","output-wgpu", "output-wasm", "output-threaded"]
docs-nolink = ["glib/dox", "gstreamer-app/dox", "gstreamer/dox", "gstreamer-video/dox", "opencv/docs-only"]
docs-features = []
test-fail-warning = []
[dependencies]
thiserror = "1.0"
paste = "1.0"
[dependencies.nokhwa-core]
version = "0.1.0"
path = "nokhwa-core"
[dependencies.serde]
version = "1.0"
optional = true
[dependencies.flume]
version = "0.10"
optional = true
[dependencies.image]
version = "0.24"
default-features = false
[dependencies.v4l]
version = "0.13"
optional = true
[dependencies.v4l2-sys-mit]
version = "0.2"
optional = true
[dependencies.usb_enumeration]
version = "0.1.2"
optional = true
[dependencies.wgpu]
version = "0.13"
optional = true
[dependencies.opencv]
version = "0.67"
optional = true
[dependencies.rgb]
version = "0.8"
optional = true
[dependencies.nokhwa-bindings-windows]
version = "0.4"
path = "nokhwa-bindings-windows"
optional = true
[dependencies.nokhwa-bindings-macos]
version = "0.2"
path = "nokhwa-bindings-macos"
optional = true
[dependencies.gstreamer]
version = "0.18"
optional = true
[dependencies.gstreamer-app]
version = "0.18"
optional = true
[dependencies.gstreamer-video]
version = "0.18"
optional = true
[dependencies.glib]
version = "0.15"
optional = true
[dependencies.regex]
version = "1.4.6"
optional = true
[dependencies.web-sys]
version = "0.3"
features = [
"console",
"CanvasRenderingContext2d",
"CssStyleDeclaration",
"Document",
"Element",
"HtmlElement", "HtmlVideoElement", "HtmlCanvasElement",
"ImageData",
"MediaDevices", "MediaDeviceInfo", "MediaDeviceKind", "MediaStreamConstraints", "MediaTrackSupportedConstraints", "MediaStream", "MediaStreamTrack", "MediaTrackSettings", "MediaTrackConstraints", "MediaStreamTrackState",
"MimeType", "MimeTypeArray",
"Navigator",
"Node",
"Permissions", "PermissionDescriptor", "PermissionState", "PermissionStatus",
"Plugin", "PluginArray",
"Window"
]
optional = true
[dependencies.js-sys]
version = "0.3"
optional = true
[dependencies.wasm-bindgen]
version = "0.2"
optional = true
[dependencies.wasm-bindgen-futures]
version = "0.4"
optional = true
[dependencies.wasm-rs-async-executor]
version = "0.9"
optional = true
[dependencies.parking_lot]
version = "0.12"
optional = true
[dependencies.lazy_static]
version = "1.4"
optional = true
[profile.release]
lto = true
[package.metadata.docs.rs]
features = ["docs-only", "docs-nolink", "docs-features"]