mirror of
https://github.com/l1npengtul/nokhwa.git
synced 2026-07-04 02:27:26 +00:00
8a1d220a14e014a38fdf8daf72b009f085036531
nokhwa
Nokhwa(녹화): Korean word meaning "to record".
A Simple-to-use, cross-platform Rust Webcam Capture Library
Example
// set up the Camera
let mut camera = Camera::new(
0, // index
Some(CameraFormat::new_from(640, 480, FrameFormat::MJPEG, 30)), // format
CaptureAPIBackend::AUTO, // what backend to use (let nokhwa decide for itself)
)
.unwrap();
// open stream
camera.open_stream().unwrap();
loop {
let frame = camera.get_frame().unwrap();
println!("{}, {}", frame.width(), frame.height());
}
They can be found in the examples folder.
Feature
The default feature includes nothing. Anything starting with input-* is a feature that enables the specific backend.
input-* features:
input-v4l: Enables theVideo4Linuxbackend (linux)input-uvc: Enables thelibuvcbackend (cross-platform)
Conversely, anything that starts with output-* controls a feature that controls the output of something (usually a frame from the camera)
output-* features:
output-wgpu: Copies a frame directly into a wgpu texture.
You many want to pick and choose to reduce bloat.
Issues
If you are making an issue, please make sure that
- It has not been made yet
- Attach what you were doing, your environment, steps to reproduce, and backtrace. Thank you!
Contributing
Contributions are welcome!
- Please
rustfmtall your code and adhere to the clippy lints (unless necessary not to do so) - Please limit use of
unsafe - All contributions are under the MPL 2.0 license unless otherwise specified
Minimum Service Rust Version
nokhwa may build on older versions of rustc, but there is no guarantee except for the latest stable rust.
Description
No description provided
avfoundationcameracamera-apicross-platformlinuxmacosmediafoundationrustv4l2webcamwebcam-capturewindows
Readme
136 MiB
Languages
Rust
99.5%
Nix
0.5%