Commit Graph

374 Commits

Author SHA1 Message Date
Robin E. R. Davies e6733ec036 Patch Properties in Plugin Settings 2025-09-05 06:31:51 -04:00
Robin E. R. Davies ac194fbbb5 Fixes to handling of path properties in presets. 2025-09-04 15:20:56 -04:00
Robin E. R. Davies faca1d1ea1 Misc bug fixes
Alsa trace, NAM legacy flag,
2025-09-02 09:50:14 -04:00
Robin E. R. Davies 5434f40ca1 TooB Parametric EQ UI 2025-09-01 15:59:29 -04:00
Robin E. R. Davies d604da0855 Missing i/o volume controls; TooB NAM preset upgrade. 2025-08-24 13:46:30 -04:00
Robin E. R. Davies d149577cd8 v1.4.89 TInternal 2025-08-21 19:02:59 -04:00
Robin E. R. Davies cde0e3f9e0 25.04 Hotspot parameters. 2025-08-18 08:03:27 -04:00
Robin E. R. Davies bdaab55edf Add group/pairwise/proto settings to Hotspot connection. 2025-08-18 07:41:13 -04:00
Robin Davies f7d9802780 25.04 compatibility 2025-08-18 07:10:28 -04:00
Robin E. R. Davies 088bbe868a Sdbus-C++ upgrade. 2025-08-16 16:29:31 -04:00
Robin E. R. Davies cb70bc82d5 Log message cleanup 2025-08-15 06:18:41 -04:00
Robin E. R. Davies 57d112e616 Hotspot Manager tidying 2025-08-15 06:17:40 -04:00
Robin Davies b30cccfa84 Merge pull request #371 from rerdavies/dev
1.4.87 dev merge.
2025-08-10 10:15:57 -04:00
Robin E. R. Davies f607aec6c0 Support for USB devices with 48-frame buffers. 2025-08-07 22:23:40 -04:00
Robin Davies 19d0f71693 Merge 1.4.86 Dev branch.
1.4.86 Dev merge.
2025-08-06 19:16:08 -04:00
Robin E. R. Davies 5383a55ebd Tidying up. 2025-08-06 05:36:27 -04:00
Robin E. R. Davies b1f80785a1 Checkpoint 2025-08-01 20:21:55 -04:00
Robin E. R. Davies aa13301b84 Checkpoint 2025-08-01 18:24:54 -04:00
Extremesecrecy 553bcdee5c Update PiPedalAlsa.cpp
err and brackets fix
2025-07-28 14:00:02 -07:00
Extremesecrecy d91d278919 alsaDevice_ Check 2025-07-28 13:16:48 -07:00
Extremesecrecy 0532193647 Commit Request - Step 1 Restore Files
Restored files.
2025-07-28 12:31:16 -07:00
Extremesecrecy 9353503833 Revert 2025-07-27 16:08:10 -07:00
Robin E. R. Davies e71c4f3f02 v1.4.85 versioning 2025-07-26 18:42:52 -04:00
Extremesecrecy c753b8fc7f Update JackServerSettings.hpp
Declared Equals as a const method in JackServerSettings so it can be called on const instances without compiler errors

SetJackServerSettings now checks for changes before restarting audio, preventing redundant restarts
2025-07-26 14:20:14 -07:00
Extremesecrecy 8b3cdcf3f3 Handle multiple server restarts
Trying to decrease by only taking steps if different.
2025-07-26 13:49:19 -07:00
Extremesecrecy c7bcc7c240 Reverting waits
Waits are still overlapping. Will discuss with Robin for advice on how he wants to manage them. My attempt stopped the over lap but broke the loading.
2025-07-26 12:56:30 -07:00
Extremesecrecy d2e489cdf4 Reverted
Reverted errors. Tonex is not working becasue proprietary x86 plug‑ins such
  as **IK Multimedia ToneX**.
2025-07-26 12:31:56 -07:00
Extremesecrecy 54d47a8ded ...Default48 after trying best.
Added better fallback logic when computing the optimal sample rate. If no common sample rate is found, the code now defaults to 48 kHz or the desired rate when provided. The intersection list is sorted before evaluating the best match
2025-07-26 11:52:42 -07:00
Extremesecrecy be06a28798 Reference errors
Fixing reference errors.
2025-07-26 11:21:07 -07:00
Extremesecrecy 79c32b5dcd Freq Bug
Temporary default frequency causing crash when the frequency is not available.
2025-07-26 11:01:30 -07:00
Extremesecrecy 530277ed71 Wait going mad.
Pressing ok/apply/refresh all were starting a cascade o waits. A restart request now cleans up any previous restart thread so multiple restarts cannot overlap
2025-07-25 21:41:49 -07:00
Extremesecrecy 2ae24f0b32 Update PiPedalModel.cpp
Correcting typo while trying to figure out what to do when the audio does not start the first time.
2025-07-25 21:10:13 -07:00
Extremesecrecy c33c69899c Adding persist - T2
Adding model persist so that the apply can be used for testing. Previous did not  persist as intented.
2025-07-25 19:58:43 -07:00
Extremesecrecy 703e517baf RAM usage +
Introduced a new field to track memory usage in the backend status structure, allowing the server to report memory utilization as a percentage

Implemented a Linux-specific routine to read /proc/meminfo and calculate the memory usage percentage, and integrated this into the status query

Added serialization for the memory usage field so it is included in JSON responses

Updated the frontend class to deserialize and display memory usage alongside CPU usage on the status readout
2025-07-25 14:24:10 -07:00
Extremesecrecy 56d66ef7db Tabs and check script and dependency
Removed tabs (tabs to spaces). Remove the check_deps.sh. removed libwebsocketpp-dev from dependencies. BTW, this is in cmake.yml.
2025-07-24 20:31:40 -07:00
Extremesecrecy 874d859916 Email Changes - Backwards Compatibility
Introduce legacy alsaDevice_ field in JackServerSettings to preserve compatibility with older configs. Include this field in serialization to allow old config files to load. Add migration logic in Storage::GetJackServerSettings to copy the legacy device value to new separate input/output fields and clear the legacy value after migration.

Update frontend validation so that device selections are only validated when the user presses OK. Improve buffer selection logic to prioritize 32×4, then other x4, x3, or x2 options, falling back to 64×3 if none match.

Use standard MUI styling for device selectors. Labels stay above the field and no longer animate. Dropdown labels now use background padding to prevent underline overlap.

Add a compactWidth flag to adjust layout on narrow screens. Stack device selectors vertically in compact mode while keeping the refresh button on the right. Refreshing ALSA info sets unknown device IDs to a blank value.

Add real-time status updates with a polling timer. Separate Apply and OK handlers so settings can be tested without closing the dialog. Add an Apply button alongside Cancel and OK.

Update the UI summary logic to show “Input → Output” when devices differ and “Not selected” when config is incomplete. Filter out internal devices like HDMI and bcm2835 from the device list.

Retain the legacy alsaDevice_ field in the JSON for backward compatibility, with helper accessors and documentation for legacy constructor behavior. Update latency text calculation to show when sample rate and buffer size are defined, even if the config is invalid.

Removed libsdl2-dev from dependency checking and dependencies.
2025-07-24 19:27:39 -07:00
Extremesecrecy fb974f5af5 Legacy Modifications
Added legacy integration so that upon upgrade, the device does not fail.
2025-07-24 16:59:17 -07:00
Extremesecrecy b3853e1bdb CPU Usage Dive by Zero Issue (Chrome Console Error Reported)
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
2025-07-24 07:50:33 -07:00
Extremesecrecy 43cc758d18 Revise device configuration logic and settings
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
2025-07-24 07:45:02 -07:00
Extremesecrecy 059922f71f Update PiPedalAlsa.cpp
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
2025-07-23 22:48:22 -07:00
Extremesecrecy 2b5f614625 Update PiPedalSocket.cpp
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
2025-07-23 22:44:37 -07:00
Extremesecrecy dbeefe341f Update AlsaDriver.cpp
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
2025-07-23 20:04:09 -07:00
Robin E. R. Davies 7050710b76 SplitIO Uri.cpp fix. 2025-07-23 22:28:40 -04:00
Robin Davies 77d8672ca6 Revert "Split IO" 2025-07-23 22:25:07 -04:00
Robin Davies 7830b27bb2 Merge pull request #350 from extremesecrecy/SplitIO
Split IO
2025-07-23 17:09:30 -04:00
ExtremesecrecyOne 6ac8968583 Devices with only I or O Fix
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
2025-07-23 12:18:19 -07:00
Robin E. R. Davies 9848adad10 Misc restrict declarations for fast-math 2025-07-23 15:06:28 -04:00
Robin E. R. Davies 090ffc9a9e Rework audio thread restart. 2025-07-23 15:06:06 -04:00
Robin E. R. Davies d5ec594957 Merge remote-tracking branch 'origin/main' into dev 2025-07-23 14:19:25 -04:00
Jiri Popek e22493b4ae add -ffast-math to speed up the execution
+ src/CMakeLists whitespace cleanup
2025-07-23 15:07:26 +02:00