cam
(Coming soon) A standalone camera control library for interfacing with DSLR and mirrorless cameras
v1.0 Roadmap
- Packet serialization/deserialization
- Define
Packtrait for packing/unpacking binary fields - Procedural derive macro for
Pack - Special structs for variants and length-notated containers
- Macros for easy creation of enum variants
- Define
- PTP/IP transport implementation
- Opening/closing connections
- Transactions
- Minimal PTP implementation
- Operations
- Opening/closing sessions
- Basic DeviceInfo support
- Event system and error handling
- Vendor-specific extensions/logic
- Canon
- Discovery
- Connection
- Trigger shutter
- Change settings
- Notification of settings changes
- Notification of new image
- Ability to download image
- Live preview
- Sony
- Discovery
- Connection
- Trigger shutter
- Change settings
- Notification of settings changes
- Notification of new image
- Ability to download image
- Live preview
- Nikon
- Discovery
- Connection
- Trigger shutter
- Change settings
- Notification of settings changes
- Notification of new image
- Ability to download image
- Live preview
- Canon
Beyond v1.0
- Additional protocols
- PTP/USB
- Bluetooth
- HTTP APIs
- Infrared and shutter release?
- Additional brands (Fujifilm, Panasonic) and specific camera lines/models
- GUI integration (via Tauri or similar)
- Advanced features like touch-to-focus, additional settings, gallery view, etc.