Added explicit checks in “CpuUse::UpdateCpuUse” to avoid division by zero; CPU usage and overhead are forced to 0 when times are zero
Validated audio driver CPU usage in “AudioHost::getJackStatus”, replacing non‑finite results with 0
The ALSA device scanner no longer inserts default sample rates when it cannot read them, preventing invalid frequency choices
Jack server settings now accept independent input and output devices during construction
The latency test utility was updated to handle separate input and output device parameters and display them accordingly
The help text for the latency tool documents the new usage with optional output device specification
Device lists in the configuration dialog are sorted to prefer devices supporting capture and playback, then USB devices, while refresh preserves existing selections
Added error checks around ALSA rate queries so that if querying the minimum rate fails, a warning is logged and 48 kHz is used as a default
When querying the maximum rate fails, the code now warns and falls back to 48 kHz; otherwise it populates valid rates and ensures a fallback if none are found
Buffer size retrieval now occurs after handling rate queries, maintaining previous behavior while supporting the new fallback logic
ntroduced helper functions to verify required fields in configuration structures, ensuring missing property names trigger a descriptive exception
Applied these checks when handling the “setJackServerSettings,” “setWifiConfigSettings,” and “setWifiDirectConfigSettings” messages to validate incoming data
Set alsa_device_name according to the capture and playback device when configuring streams so error messages reference the correct device
Ensure the device name is assigned before opening each stream to accurately report any ALSA errors
Added new fields to track ALSA device capabilities, letting the application know whether a device supports capture or playback
Updated serialization to include the new flags in the JSON data exchanged with the UI
Modified the dummy driver so test devices always indicate capture and playback support
Adjusted the TypeScript model and dialog to filter device choices based on the new flags, ensuring only valid options appear in selectors
Added helper functions to combine and intersect ALSA device capabilities, ensuring validation works across separate input and output devices
Updated buffer handling logic to use both selected devices and compute min/max sizes appropriately
Revised validation to check both ALSA input and output devices when enabling the OK button
Simplified rendering logic to intersect sample rates and buffer options for the chosen devices
AlsaDriver single device err calls fixed.
Added guidance on using USB audio interfaces or Raspberry Pi audio HATs and choosing separate ALSA input and output devices during setup
Clarified that the Audio Device Settings dialog allows independent configuration of input and output devices, with updated instructions for selecting audio channels
Summary
Ensured that checking for a query key now returns true when the key is found, allowing accurate existence checks
Added “&” separators when reconstructing query strings so that URIs are properly formatted with multiple parameters