use cameleon::u3v::enumerate_cameras;
fn main() {
let mut cameras = enumerate_cameras().unwrap();
if cameras.is_empty() {
println!("no camera found!");
return;
}
let mut camera = cameras.pop().unwrap();
camera.open().unwrap();
camera.load_context().unwrap();
let payload_rx = camera.start_streaming(3).unwrap();
for _ in 0..10 {
let payload = match payload_rx.recv_blocking() {
Ok(payload) => payload,
Err(e) => {
println!("payload receive error: {e}");
continue;
}
};
println!(
"payload received! block_id: {:?}, timestamp: {:?}",
payload.id(),
payload.timestamp()
);
if let Some(image_info) = payload.image_info() {
println!("{:?}\n", image_info);
}
payload_rx.send_back(payload);
}
camera.close().ok();
}