[package] name = "nokhwa" version = "0.5.0" authors = ["l1npengtul "] edition = "2018" description = "A Simple-to-use, cross-platform Rust Webcam Capture Library" keywords = ["camera", "webcam", "capture", "cross-platform"] resolver = "2" license = "MPL-2.0" repository = "https://github.com/l1npengtul/nokhwa" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [lib] crate-type = ["cdylib", "rlib"] [features] default = ["decoding", "flume"] decoding = ["mozjpeg"] input-v4l = ["v4l", "v4l2-sys-mit"] input-msmf = ["nokhwa-bindings-windows"] input-avfoundation = ["nokhwa-bindings-macos"] input-uvc = ["uvc", "uvc/vendor", "ouroboros", "usb_enumeration"] input-opencv = ["opencv", "opencv/clang-runtime"] input-ipcam = ["input-opencv"] input-gst = ["gstreamer", "glib", "gstreamer-app", "gstreamer-video", "regex"] input-jscam = ["web-sys", "js-sys", "wasm-bindgen-futures", "wasm-bindgen"] output-wgpu = ["wgpu"] output-wasm = ["input-jscam"] output-threaded = ["parking_lot"] small-wasm = ["wee_alloc"] docs-only = ["input-uvc", "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"] test-fail-warning = [] [dependencies] thiserror = "1.0.26" paste = "1.0.5" [dependencies.flume] version = "0.10.8" optional = true [target.'cfg(not(target_family = "wasm"))'.dependencies.mozjpeg] version = "0.8.24" optional = true [dependencies.image] version = "0.23.14" default-features = false [target.'cfg(target_os = "linux")'.dependencies.v4l] version = "0.12.1" optional = true [target.'cfg(target_os = "linux")'.dependencies.v4l2-sys-mit] version = "0.2.0" optional = true [dependencies.ouroboros] version = "0.12.0" optional = true [dependencies.uvc] version = "0.2.0" optional = true [dependencies.usb_enumeration] version = "0.1.2" optional = true [dependencies.wgpu] version = "0.10.1" optional = true [dependencies.opencv] version = "0.54.0" features = ["clang-runtime"] optional = true [dependencies.nokhwa-bindings-windows] version = "0.3.0" optional = true [dependencies.nokhwa-bindings-macos] version = "0.1.0" optional = true [dependencies.gstreamer] version = "0.17.0" optional = true [dependencies.gstreamer-app] version = "0.17.0" optional = true [dependencies.gstreamer-video] version = "0.17.0" optional = true [dependencies.glib] version = "0.14.0" optional = true [dependencies.regex] version = "1.4.6" optional = true [dependencies.web-sys] version = "0.3.51" # why 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.52" optional = true [dependencies.wasm-bindgen] version = "0.2.75" optional = true [dependencies.wasm-bindgen-futures] version = "0.4.25" optional = true [dependencies.wee_alloc] version = "0.4.5" optional = true [dependencies.parking_lot] version = "0.11.2" optional = true [profile.release] lto = true [package.metadata.docs.rs] features = ["docs-only", "docs-nolink"]