- New Features
- Wrap log output with flockfile/funlockfile to guarantee atomic writes.
- Add LOG_PERROR macro to report messages with errno details.
- Enhancements
- Include <errno.h> and <string.h> for robust error handling.
- Remove unused errorf declaration.
- Bug Fixes
- None.
Introduce API to load sound configurations and expand SoundPack with richer audio data for multi‑key mappings and generic press handling, enabling more flexible audio management.
New Features
- Added `load_sound_config` prototype in `include/audio/config.h`.
Enhancements
- Extended `SoundPack` with generic press arrays, release data fields, and multi‑key mapping structs.
- Added `AudioVoice` struct and `MAX_MIXER_VOICES` for voice management.
- Added `generic_press_data`, `generic_press_samples`, `release_data`, and `release_samples` fields.
Implement configurable system volume following and replace JSON IPC with binary struct.
- New Feature: Introduce `system_volume_following` CLI and runtime option.
- Enhancement: Extend CLI options, reload, and user‑config APIs to propagate the new flag.
- Enhancement: Add `VbxEvent` binary IPC struct and logging macros for better performance.
- Enhancement: Add helper to persist system volume following state.
- Bug Fix: Remove stale `parse_keyboard_event` prototype.