16 releases

Uses old Rust 2015

0.5.5 May 7, 2019
0.5.4 Mar 21, 2018
0.5.3 Apr 26, 2016
0.5.2 Nov 4, 2015
0.3.9 Mar 27, 2015

#186 in Video

Download history 146/week @ 2025-05-22 37/week @ 2025-05-29 141/week @ 2025-06-05 220/week @ 2025-06-12 466/week @ 2025-06-19 305/week @ 2025-06-26 164/week @ 2025-07-03 345/week @ 2025-07-10 366/week @ 2025-07-17 304/week @ 2025-07-24 188/week @ 2025-07-31 259/week @ 2025-08-07 234/week @ 2025-08-14 285/week @ 2025-08-21 405/week @ 2025-08-28 346/week @ 2025-09-04

1,314 downloads per month
Used in 10 crates (5 directly)

MIT/Apache

87KB
2K SLoC

rscam

Build status Crate info Documentation

Rust wrapper for v4l2.

let mut camera = rscam::new("/dev/video0").unwrap();

camera.start(&rscam::Config {
    interval: (1, 30),      // 30 fps.
    resolution: (1280, 720),
    format: b"MJPG",
    ..Default::default()
}).unwrap();

for i in 0..10 {
    let frame = camera.capture().unwrap();
    let mut file = fs::File::create(&format!("frame-{}.jpg", i)).unwrap();
    file.write_all(&frame[..]).unwrap();
}

The wrapper uses v4l2 (e.g. v4l2_ioctl() instead of ioctl()) until feature no_wrapper is enabled. The feature can be useful when it's desirable to avoid dependence on libv4l2 (for example, cross-compilation).

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Dependencies