Releases: atomozero/haiku-uvc-webcam
Releases · atomozero/haiku-uvc-webcam
v0.7.0 - MJPEG fix, audio improvements, crash workarounds
Critical Fixes
- MJPEG streaming now works - Fixed a bug where MJPEG frames were delivered empty (gray screen). The deframer was
reading from the wrong buffer for MJPEG data - SetAlternate crash workaround - Prevents crash on older Haiku versions caused by a double-free bug in
BUSBInterface::SetAlternate() - MJPEG size monitoring - Fixed false "bandwidth insufficient" alarms that triggered unnecessary resolution
fallbacks - Microdia stride quirk - Now only applies when data actually has padding, fixing diagonal line artifacts
Audio Improvements
- Fixed ReadAudioData blocking and delivery rate
- Fixed multiple race conditions in the audio ring buffer
- Proper semaphore cleanup on shutdown
New Features
- Camera Terminal relative controls (exposure, focus, zoom, pan/tilt)
- UVC Extension Unit support (SET_CUR/GET_CUR)
- Sonix LED control via BParameterWeb
- Extension Unit auto-discovery and selector probing
v0.6.0 - Improved MJPEG support and descriptor parsing
Changes since v0.5.0
Bug Fixes
- Improved VS descriptor parsing reliability - Added retry logic (up to 3 attempts with delay) for USB Video Streaming descriptor parsing. Fixes intermittent failures where cameras would fall back to hardcoded resolutions.
- Simplified audio node creation - Cleaner AudioProducer instantiation in AddOn.cpp.
Documentation
- Updated README with tested webcams and known limitations
- Added BubiCam 1280x720 MJPEG screenshot
Tested Webcams
- AUKEY PC-LM1E (1bcf:0001) - MJPEG 1280x720 @ 30fps ✓
- Microdia Motion Eye (0c45:6409) - YUY2 320x240
Installation
cp aukey_webcam_v4.media_addon /boot/home/config/non-packaged/add-ons/media/Then restart the media server or reboot.
Requirements
- Haiku R1/beta5 or later
- libturbojpeg (for MJPEG decompression)