viva-gige
GigE Vision transport layer: GVCP discovery, GenCP-over-UDP register I/O, and GVSP streaming.
Implements the networking building blocks for communicating with GigE Vision cameras over Ethernet.
Disclaimer -- Independent open-source Rust implementation of GenICam-related standards. Not affiliated with, endorsed by, or the reference implementation of EMVA GenICam. GenICam is a trademark of EMVA.
Features
- GVCP discovery -- broadcast and unicast device discovery on selected network interfaces
- Register I/O -- read/write device memory via GenCP-over-UDP with retry and backoff
- GVSP streaming -- frame reassembly, packet resend with bitmap tracking, backpressure
- Multicast -- IGMP join/leave for multicast stream reception
- Events -- GVCP message channel for asynchronous camera events
- Action commands -- broadcast-triggered synchronized acquisition
- MTU negotiation -- automatic packet size detection from interface MTU
- macOS / Linux / Windows -- cross-platform async UDP with
tokio
Usage
[]
= "0.1"
use discover;
use Duration;
async
Documentation
Part of the viva-genicam workspace.