Expand description
EVT 3.0 decoder library for Prophesee event cameras.
This crate provides a high-performance decoder for the EVT 3.0 raw data format used by Prophesee event cameras. It supports decoding CD (Change Detection) events and external trigger events.
§File decode
use evt3::Evt3Decoder;
let mut decoder = Evt3Decoder::new();
let result = decoder.decode_file("recording.raw").unwrap();
println!("Decoded {} CD events", result.cd_events.len());
println!("Sensor: {}x{}", result.metadata.width, result.metadata.height);§Streaming bytes
use evt3::Evt3Decoder;
let mut decoder = Evt3Decoder::new();
let mut cd_events = Vec::new();
let mut trigger_events = Vec::new();
let chunk1: &[u8] = &[];
let chunk2: &[u8] = &[];
decoder
.decode_bytes(chunk1, &mut cd_events, &mut trigger_events)
.unwrap();
decoder
.decode_bytes(chunk2, &mut cd_events, &mut trigger_events)
.unwrap();
decoder.finish_stream().unwrap();§Features
- Full EVT 3.0 specification support including vectorized events
- File header parsing for sensor metadata
- Multiple output formats (CSV, binary, Arrow IPC)
- Customizable field ordering for output
- Incremental byte-stream decoding for live camera pipelines
Re-exports§
pub use decoder::DecodeError;pub use decoder::Evt3Decoder;pub use file_reader::EventFileReader;pub use file_reader::DEFAULT_BATCH_BYTES;pub use output::FieldOrder;pub use output::OutputError;pub use sink::ColumnarEventSink;pub use sink::EventColumns;pub use sink::EventSink;pub use sink::TriggerColumns;pub use types::CdEvent;pub use types::ColumnarDecodeResult;pub use types::DecodeResult;pub use types::SensorMetadata;pub use types::TriggerEvent;