Commit Graph

843 Commits (2622881e61abc1a3a4a530d3d09d5ea00f6863b5)

Author SHA1 Message Date
Mooneer Salem 2622881e61
Hide all modes except for RADE by default. (#1108)
* Hide all modes except for RADE by default.

* Enable legacy modes so fullduplex tests still work.

* Add PR #1108 to changelog.

* FreeDV Reporter: Hide RX Mode column if legacy modes are disabled.

* Remove offset and histogram plots due to low legacy mode use.

* Hide Squelch and Center RX if legacy modes are disabledd.

* macOS: Add additional required entitlements for Python 3.14.

* Move Frequency field up on the right hand side.

* Suppress at-spi2 warning in GH AppImage tests.

* Experiment: Try 'pulsing' level gauge when overdriving.

* Revert "Experiment: Try 'pulsing' level gauge when overdriving."

This reverts commit 527dbe2bb7.

* Use shorter label for clipping indicator.
2025-12-10 16:00:47 -08:00
Mooneer Salem 88ac98a370
Upgrade Python 3.14.0->3.14.2. (Windows/macOS only) (#1124)
* Upgrade Python 3.14.0->3.14.1. (Windows/macOS only)

* Actually, looks like 3.14.2 was just released.

* Add PR #1124 to changelog.
2025-12-07 18:26:53 -08:00
Mooneer Salem 846e33c9e9 Merge branch 'master' into v2.2-dev 2025-12-07 13:23:57 -08:00
Mooneer Salem 941f3fc01b
Emit VOX tone only when PTT is enabled. (#1122)
* Emit VOX tone only when PTT is enabled.

* Add PR #1122 to changelog.

* Fix GH Linux failure.

* Need to add to src/gui/controls as well.
2025-12-07 12:35:55 -08:00
Mooneer Salem bdeee46661
KA9Q: Need to divide read() rval with sizeof(short). (#1120)
* KA9Q: Need to divide read() rval with sizeof(short).

* Add PR #1120 to changelog.
2025-12-06 22:24:36 -08:00
Mooneer Salem d6b3f78bba
Enable mimalloc only on Windows and macOS. (#1118)
* Enable mimalloc only on Windows and macOS.

* Add PR #1118 to changelog.

* Enable mimalloc on AppImages.
2025-12-03 10:06:01 -08:00
Mooneer Salem 0e92274ca8 Merge branch 'master' into v2.2-dev 2025-12-03 08:23:44 -08:00
Mooneer Salem b17a74a61b
Suppress background for fake rightmost column. (#1116)
* Suppress background for fake rightmost column.

* Fix strerror crashes on macOS.

* Add PR #1116 to changelog.

* Fix CI build failures.
2025-12-02 14:03:35 -08:00
Mooneer Salem 43f3eec148 Merge branch 'master' into v2.2-dev 2025-12-02 08:16:48 -08:00
Mooneer Salem 7c81adb71a
Fix sanitizer warnings discovered during CI runs. (#1115)
* Fix sanitizer warnings discovered during CI runs.

* Add PR #1115 to changelog.
2025-12-01 12:56:42 -08:00
Mooneer Salem b023b97d11
Upgrade built-in Python to 3.14.0. (#1109)
* Upgrade built-in Python to 3.14.0.

* Need to update GH environment for Windows Python 3.14.

* Forgot to adjust path for pip.

* Additional forgotten change.

* TEST ONLY: Use non-main for RADE.

* Use Python 3.14 for AppImages.

* Need to exclude 3.14 DLL during installer step.

* Update ASAN suppressions for 3.14.

* Revert "TEST ONLY: Use non-main for RADE."

This reverts commit 14b711b5a9.

* Use rade_src instead of rade_integ_src.

* Update AppRun scripts.

* Upgrade custom PyTorch macOS wheel to 2.9.1 and Python 3.14.

* PYTHONOPTIMIZE doesn't seem to work on macOS now.

* Apparently PYTHONOPTIMIZE was in there twice.

* Reenable PYTHONOPTIMIZE, disable built-in mimalloc.

* Disable mimalloc in GH Actions as well.

* Try reenabling mimalloc just for Linux.

* Add PR #1109 to changelog.

* Remove mimalloc altogether.

* Forgot to clean up mimalloc code in source files.

* Lock PyTorch release inside GH Actions.
2025-11-30 19:02:40 -08:00
Mooneer Salem 51f79792cd Merge branch 'master' into v2.2-dev 2025-11-29 23:59:06 -08:00
Mooneer Salem 17e33dc7b3
Actually fix FreeDV Reporter disconnect crash once and for all. (#1112)
* Actually fix FreeDV Reporter disconnect crash once and for all.

* Prevent hangs on exit.

* Fix compiler error.

* Add missed initialization.

* Add PR #1112 to changelog.

* Add wait calls to all other ThreadedObject users.
2025-11-29 23:48:09 -08:00
Mooneer Salem 131d1b2f3f Branch new 2.2 development root. 2025-11-28 00:59:26 -08:00
Mooneer Salem f8f8497f15
Use same sample rate for both recording RX and TX. (#1107)
* Use same sample rate for both recording RX and TX.

* Add PR #1107 to changelog.
2025-11-26 11:04:20 -08:00
Mooneer Salem f90b473914
Reduce RADE RX losses due to resampling. (#1094)
* Reduce RADE RX losses due to resampling.

* Add PR #1094 to changelog.

* Tweak outputSize to see if the resampler can give us more audio.

* Add additional check due to test failures.

* Only make 2x the input size available for output.

* Update changelog to put fix in 2.1.1.
2025-11-24 23:35:59 -08:00
NespaLa 8c2dd0b070
Add /dev/rfcomm* usb over bluetooth to serial port list on Linux (#1106)
* Add files via upload

* Update dlg_ptt.cpp

added /dev/rfcomm* to populatePortList()

Is needed for usb over bluetooth rig controll.

* Update HamlibRigController.cpp

log_info which radio type on which serial line.

* Add changes to Easy Setup dialog.

* Add PR #1106 to changelog.

---------

Co-authored-by: Mooneer Salem <mooneer@gmail.com>
2025-11-24 15:19:41 -08:00
Mooneer Salem 69d249af93
Sort blank user messages after non-blank messages. (#1105)
* Sort blank user messages after non-blank messages.

* Trim whitespace from Msg before sorting.

* Add PR #1105 to changelog.
2025-11-24 07:13:42 -08:00
Mooneer Salem 9010d9be8a
Update VC Redistributable again. (#1102)
* Update VC Redistributable again.

* Add PR #1102 to changelog.

* Run brew directly due to GH failures.
2025-11-23 11:10:42 -08:00
Mooneer Salem d42e166686
Prepare for v2.1.0 release. (#1099)
* Prepare for v2.1.0 release.

* Fix libebur128 typo (thanks @ra1nb0w!)

* Fix lint error in CI process.

* Clear version restriction for torch package.

* Add random delay to hopefully avoid mpp failures.

* Undo VC++ Redistributable URL change.

* Experiment: increase PulseAudio thread priority.

Hopefully this will help avoid the issue where we intermittently lose sync within
the first few seconds of starting the modem.

* Delete .travis.yml as we don't actually use Travis for builds.

* Minimal changes needed to disable BW expander.

* Revert "Experiment: increase PulseAudio thread priority."

This reverts commit 816b493da7.

* Clean up changelog.

* strerror_r should be on separate line since it can return int depending on platform.

* Fix CI failures.

* Try forcing _DEFAULT_SOURCE to resolve warnings.

* Revert previous changes.

* Minimal changes to hopefully fix both macOS and Linux.

* Possible fix for macOS race condition during socket close.
2025-11-19 07:58:31 -08:00
Mooneer Salem a41737ad42
Update release month in changelog. (#1096) 2025-11-14 18:44:01 -08:00
Mooneer Salem c96c62b063
Always enable frequency dropdown, even if reporting and CAT are disabled. (#1093)
* Always enable frequency dropdown, even if reporting and CAT are disabled.

* [skip ci] Add PR #1093 to changelog.
2025-11-14 08:56:36 -08:00
Mooneer Salem fb2c311194
Flex waveform improvements (#1088)
* Flex: Improve handling of slice switching.

* Add missed semicolons.

* Add validation for stream IDs coming over VITA port.

* Fix AppRun generation bug introduced by previous PR.

* Enable PSK Reporter support.

* Fix issue where ThreadedTimer pegs the CPU on RPi/aarch64.

* Fix ThreadedTimer test failures.

* Send reports to PSK Reporter every five minutes.
2025-11-13 08:05:04 -08:00
Mooneer Salem e6e3e73932
FreeDV Reporter bug fixes (#1089) 2025-11-11 12:41:46 -08:00
Mooneer Salem 9a01a60843
CI: Enable code signing for macOS and Linux builds (#1078) 2025-11-09 20:32:02 -08:00
Mooneer Salem f938978a66
Enable clang-tidy during CI process (#1086)
* Enable clang-tidy during CI process and fix performance-* rule violations.

* Install clang-tidy package.

* Need to actually build to get all dependencies.

* Need to install minimum Python dependencies for linting.

* Build mimalloc too.

* Enable clang-analyzer rules.

* Enable concurrency rules.

* Add linting to macOS runner.

* Add macOS specific checks.

* Try different way of calling clang-tidy.

* Add clang-tidy to PATH.

* 'Build' using clang.

* Try LLVM 20.

* Use GitHub LLVM.

* LLVM 21 again.

* Use install-llvm action to install LLVM 20.

* Don't be so strict with version number.

* Suppress macOS specific lint errors.

* Fix missed errors.

* Fix Windows compiler error.

* Experiment: also enable clang-tidy for Windows build.

* Revert TcpConnectionHandler change.

* Another attempt at fixing Windows compiler error.

* Need to swap arguments on Windows.

* Add PR #1086 to changelog.

* Need run-clang-tidy on Windows.

* Disable clang-tidy for Windows builds.

* Remove commented code.

* Revert to master version of Windows CI script

* Try revert again
2025-11-08 15:20:57 -08:00
Mooneer Salem 8b02529e62
Enable frequency drop-down whenever CAT control is enabled, not just for reporting. (#1080)
* Enable frequency drop-down whenever CAT control is enabled, not just for reporting.

* Also show drop-down if CAT control isn't enabled but reporting is.

* Add PR #1080 to changelog.
2025-11-08 09:38:52 -08:00
Mooneer Salem 03d8bb987e
Hide Stats box by default. (#1081)
* Hide Stats box by default.

* Use resize hack to make sure Stats box reappears.

* Further increase wait time after creating virtual audio devices.

* Add PR #1081 to changelog.

* Try another way of waiting until the loopback cables come up.

* Forgot to check in fix.
2025-11-08 09:12:46 -08:00
Mooneer Salem 761d851188
FreeDV Reporter: Support new 'bulk_update' message from server. (#1079)
* FreeDV Reporter: Support new 'bulk_update' message from server.

* Fix TSan errors from other PR.

* Add PR #1079 to changelog.
2025-11-06 01:54:54 -08:00
Mooneer Salem add67c26c1
Tweaks to GenericFIFO to reduce cache misses. (#1077)
* Tweaks to GenericFIFO to reduce cache misses.

* Fix TSan warnings.

* Try a different way of implementing reset().

* Fix compiler errors due to uninitialized values.

* Add PR #1077 to changelog.

* Increment version to 2.1.0.
2025-11-04 11:52:36 -08:00
Mooneer Salem 4d4e556969
Force all compiler warnings to report as errors. (#1076)
* Force all compiler warnings to report as errors.

* Fix missed errors.

* Additional Linux and Windows compiler fixes.

* Additional macOS audio compiler error fixes.

* Fix Windows build once and for all.

* Fix remaining uninitialized warnings.

* Fix data race in Socket.IO handling.

* We want to immediately fail when running sanitizers, not re-attempt tests.

* Revert accidental removals in macOS CI config.

* Add PR #1076 to changelog.
2025-11-01 13:54:30 -07:00
Mooneer Salem 03b5d20b5c
CI build improvements (#1075)
* Attempt to address intermittent FreeDV Reporter-related crash on Windows.

* CI: Work around Azure outage.

* Additional tweaks to previous ThreadedObject fix.

* Enable UBSan test support in the CI process.

* Add missed UBSan flags for CI run.

* Fix sanitizers check to allow integrations to build.

* Initial pass at silencing UBSan warnings.

* Fix compiler errors.

* Allow tests to fully run before erroring.

* Add missed initializers for reporter dates.

* Revert "Allow tests to fully run before erroring."

This reverts commit 6a91e834a7.

* Initialize missed wxDateTime.

* Get remaining wxDateTime warnings in FreeDV Reporter window.

* Enable TSan and UBSan in macOS CI.

* Fix compiler error.

* Try making TabFreeAuiNotebook destructor virtual.

* Remove extra wxPanel for spectrum plot.

* Cleanup of notebook initialization.

* Add UBSan suppressions.

* Tweak UBSan suppressions to reflect GH environment.

* Increase the number of times to TX to improve mpp pass rate.

* Add PR #1075 to changelog.

* Increase MPP TX amount again.
2025-10-31 16:18:19 -07:00
Mooneer Salem 4118ae7bff
Update Visual Studio Redistributable link to the latest. (#1074)
* Update Visual Studio Redistributable link to the latest.

* Add PR #1074 to changelog.
2025-10-31 16:16:42 -07:00
Mooneer Salem c4bd1e5f52
Add support for BBWENet BW expander. (#1065)
* Prototype BBWNet BW expander.

* Add new Speaker Audio section in Filter window.

* Add PR #1065 to changelog.

* Add BBWENet to FreeDV rig integrations.

* Resolve compiler warnings in Flex waveform.

* Further warning cleanup while compiling Flex waveform.
2025-10-29 12:38:27 -07:00
Mooneer Salem 394dc76e4f
Add KA9Q radio integration to FreeDV source tree. (#1066)
* Reorganize FlexRadio integration so we can share code with KA9Q console app.

* Fix rtkit file path.

* Use same variable for both static and non-static Speex DSP library.

* Update Linux CI to reflect new paths.

* Refactor more common code for use by other integrations.

* Create skeleton KA9Q appplication, need to read/write from/to stdin/stdout to get basics up.

* Need to link against fdv_os_wrapper in common.

* Actually fix Linux linker failure in Flex waveform.

* Allow software name to be passed into ReportingController.

* Read audio from stdin and write to stdout.

* Fix crash on shutdown due to threads not being freed.

* Add pauses to make sure audio is handled live (i.e. not faster than RT).

* Add command line options to freedv-ka9q tool.

* Flesh out ka9q README.

* Clean up AppImage generation and enable CI for KA9Q integration.

* Add missed speex dependency.

* Forgot to change references to APPEXEC.

* Fix app paths for AppImages.

* Force AppImage file name.

* Use separate desktop files to avoid needing to override linuxdeploy.

* Use echo instead of ls for AppImage name generation.

* Fix test-appimage and enable verification on ARM targets.

* Need to use pattern, not glob.

* Need to use step ID.

* More fixes.

* Re-add accidentally deleted ./ from Fedora container execution.

* Add arm64 Fedora testing.

* Use RADE main again as a test.

* Revert "Use RADE main again as a test."

This reverts commit 60559ef0bc.

* Switch to raw file I/O.

* Update command line usage message.

* Add PR #1066 to changelog.

* Fix compiler error.

* Report RX only to FreeDV Reporter to indicate we can't TX.

* Fix crash on shutdown.

* Actually have audio process live.

* Fix typo in build_linux.sh.

* Enable ThreadSanitizer checks for CI builds.

* Make sure we're not actually checking for test results with tsan.

* Enable sanitizers on 22.04 and ARM runners.

* Suppress sanitizer errors in Ubuntu 22.04.

* We probably need Clang 22 to have Ubuntu 22.04 RTsan tests work properly.

* Use LLVM 22 for ASAN too to see if that will suppress the final leaks.

* Add missed lock in onRecvEnd.

* [no-ci] Update documentation.

* [no-ci] Further tweaks to user manual wording.
2025-10-29 08:42:48 -07:00
Mooneer Salem e17c357c62
Various cleanups in repo (#1068)
* macOS: Fix intermittent TCC update failure during CI runs.

* Clean up plot_spectrum.h override warnings.

* Prevent false cache sharing when using GenericFIFO.

* Remove unused db folder.

* -Winterference-size isn't known on Clang.

* Fix compiler errors on Ubuntu 22.04.

* Add delay to tests to make sure PulseAudio/pipewire actually create virtual cables.

* Add PR #1068 to changelog.
2025-10-23 09:55:28 -07:00
Mooneer Salem d716e41769
Flex waveform development (#1018)
* Create infrastructure to build freedv-flex binaries.

* Begin porting some ezDV Flex files to freedv-gui.

* Do not build Flex waveform for Windows.

* Port FlexVitaTask from ezDV, link to main() to print available radios.

* Fix Linux compiler error.

* Disable mimalloc for Flex waveform.

* Port FlexTcpTask from ezDV.

* Add beginning of initialization logic for waveform.

* Set up IRealtimeHelper for Flex waveform.

* Adjust FIFO usage to match what FlexVitaTask expects.

* Add linkage between TCP and VITA tasks.

* Use correct FIFO size calculation.

* Force single-threading for PyTorch/numpy.

* We don't need verbosity for RADE.

* Need to let the VITA task know about the radio IP too.

* Enable rtkit.

* Use rtkit for FlexVitaTask too.

* Fix issue causing minPacketsRequired_ to continually increase.

* Adjust MAX_VITA_SAMPLES to reflect no longer doing resampling itself.

* Fix spelling mistake.

* Update comment.

* Try previous TX scale factor to make a TX level 100 = ~100W.

* Tweak TX scale factor so we don't actually overdrive the signal.

* Don't build waveform by default.

* Enable AppImage generation for waveform.

* Update wrong script reference in CI build.

* Use correct filename generated by linuxdeploy.

* Warning cleanup.

* Tweaks to hopefully help reduce dropouts.

* timestamp_type defs from Flex SDK didn't work for some reason.

* Make sure we're always sending stuff back to the radio.

* Try ms-disable-python-gc again as it has a ~10% CPU usage reduction on RX.

* Try implementing timestamp type changes from Flex waveform SDK again.

* No difference with unconditional reads.

* Use Semaphore for pausing TX/RX threads.

* Actually eliminate audio dropouts.

* Connect UDP socket to slightly reduce system CPU consumption.

* Fix memory corruption from recent changes.

* Revert "Use Semaphore for pausing TX/RX threads."

This reverts commit cf7d076ef1.

* Normalize incoming audio so that we don't clip when converting to int16.

* Initial support for sending EOO.

* Add 40ms additional silence to ensure SmartSDR fully transmits EOO.

* Add the 40ms of silence elsewhere to avoid interference with regular freedv-gui.

* Add hooks to at least get FreeDV Reporter connections up and running.

* Add spotting support for FreeDV Reporter.

* Update README based on attempting to compile for rPi.

* Send waveform cleanup commands on startup (avoiding duplicate FDVU/FDVL entries in SmartSDR for Mac).

* Forgot to actually use report_wo role for FreeDV Reporter.

* Work around segfault when switchingn away from FDVU/FDVL.

* Fix stuttering issue on beginning TX.

* Integrate AGC to Flex waveform.

* Fix waveform compiler errors.

* Sleep for as long as it takes to find a radio on the network.

* Add support for processing SSDR_RADIO_ADDRESS envionrment variable.

* Fix compiler errors.

* Ephemeral ports for VITA don't actually work.

* Use same version number as FreeDV proper, cleanup FreeDV Reporter init.

* Support reporting the grid square if the radio has a built-in GPS.

* Add Speex noise reduction to TX pipeline.

* Code cleanup.

* Fix deadlock during radio discovery.

* src/os only needs wxWidgets if on Windows.

* Add missing packages for building Flex AppImage.

* GPS updates use a different delimiter than other update types.

* GitHub runner is forcing Ubuntu 24.04 for ARM.

* Revert "GitHub runner is forcing Ubuntu 24.04 for ARM."

This reverts commit e267fe216b.

* Add cleanup and logging to FreeDV Reporter logic.

* Need to capture newGridSquare.

* Bail out on empty grid square.

* Refactor ReportingController to separate file.

* Report RX prior to receiving callsign.

* Generate waveform Docker container.

* Need Docker Buildx action.

* Fix AppImage filename.

* Check for null before trying to report RX.

* Increment to 2.0.3.

* Fix compiler errors from previous merge.

* Fix typo from previous PR.

* Force mimalloc to be built in Release mode.

* Forgot to support universal macOS build for mimalloc.

* Switch Flex container to Ubuntu, install AppImage prerequisites.

* Remove add-apt-repository call.

* Can't rely on using FUSE, try --appimage-extract-and-run.

* Initialize sync_ variable to avoid spurious calls to FreeDV Reporter.

* Do appimage-extract during container build process.

* Extract AppImage prior to running Docker.

* Add debugging to make sure we're deploying the correct contents.

* Include mimalloc config from main FreeDV application.

* Add README for the Flex waveform.

* Fix typos in README.

* Add PR #1018 to changelog.
2025-10-20 12:34:40 -07:00
Mooneer Salem df704a0fab
Reduce CPU usage in Xwayland process when using AppImage. (#1064)
* Reduce CPU usage in Xwayland process when using AppImage.

* Reduce Xwayland CPU usage in the Spectrum plot as well.

* Have separate avmag arrays for each plot.

* Fix typo from previous PR.

* Avoid duplicate MoveToPoint calls.

* Remove spinlock for RX spectrum.

* Spectrum plot: reduce the number of lines drawn without affecting visual quality.

* Experiment: disable arch-specific optimizations for mimalloc.

* Use 5Hz steps.

* Fix typos in spectrum plot calculation.

* From Radio and similar: Use single filled path to represent plot.

* Remove 1 dB minimum difference requirement for Spectrum plot.

* Make sure spectrum plot arrays are cleared on start.

* Warning cleanup.

* Reenable mimalloc optimization flags for Macs.

* Use GenericFIFO for scalar plots.

* Reduce the amount of gray rendered in waterfall before actual RF spectrum is shown.

* Don't redraw text on Spectrum plot unless necessary.

* Add PR #1064 to changelog.

* Don't force Xwayland on AppImage.

* Add Xwayland instructions to Troubleshooting section of manual.
2025-10-19 09:03:03 -07:00
Mooneer Salem 61c05e895c
Hamlib: Add support for automatically displaying only the valid baud rates. (#1057)
* Hamlib: Add support for automatically display only the valid baud rates.

* Add support for baud rate dropdown updates to Easy Setup dialog.

* Add PR #1057 to changelog.
2025-10-14 01:36:42 -07:00
Mooneer Salem a1c59f1cd5
Fix issue preventing FreeDV Reporter from properly being restored to the correct display. (#1055)
* Fix issue preventing FreeDV Reporter from properly being restored to the correct display.

* Partially revert previous change, offset all comparisons by wxDisplay x/y coords.

* Re-add older wxDisplay creation code for Ubuntu 22.04.

* Experiment: force autosize of all but Msg column.

* Bring back previous macOS date/time workaround.

* Try auto-resizing columns on every update instead.

* Only resize columns on Windows and only when moving/sizing the window.

* Need to autoresize on item changes too.

* Fix compiler errors.

* Auto-resize on sort.

* Add PR #1055 to changelog.

* Auto-size on row add.

* Fix compiler errors.

* Fix Windows compiler errors.
2025-10-14 00:34:47 -07:00
Mooneer Salem a8bc59380b
Fix UBSan warnings. (#1061)
* Fix UBSan warnings.

* Fix macOS build failures.

* Force NaN to 0 in fast_sqrt.

* Add PR #1061 to changelog.
2025-10-13 08:52:05 -07:00
Mooneer Salem 730dd1b9eb
Divide displayed TX Attenuation level by 10 on startup. (#1060)
* Divide displayed TX Attenuation level by 10 on startup.

* Add PR #1060 to changelog.
2025-10-11 22:03:04 -07:00
Mooneer Salem 2349118f22
Reduce the number of context switches during heavy FreeDV Reporter load. (#1053)
* Reduce the number of context switches during heavy FreeDV Reporter load.

* Move recvEnd callback to TcpConnectionHandler instead.

* Only queue handler if actions are pending.

* Add missed memory ordering for atomics.

* Additional TSan cleanup.

* Auto-detect location of libasan et al for macOS builds.

* Fully stop macOS audio devices to prevent data race.

* Fix Hamlib-related ThreadSanitizer warnings.

* Fix TSan errors for fullduplex_700D.

* Fix TSan errors when running fullduplex_1600.

* ThreadedTimer: use dispatch timers on macOS.

* ThreadedTimer: use dispatch timers on macOS.

* Add PR #1053 to changelog.
2025-10-09 12:10:23 -07:00
Mooneer Salem 49bfd2f509
Print error if one attempts to use a stereo WAV file instead of a mono one. (#1052)
* Print error if one attempts to use a stereo WAV file instead of a mono one.

* Add PR #1052 to changelog.
2025-10-07 12:11:53 -07:00
Mooneer Salem 1941a50771
Use wxNumberFormatter for frequencies in application. (#1050)
* Partially revert previous wxUILocale change for non-Apple platforms.

* Revert "Partially revert previous wxUILocale change for non-Apple platforms."

This reverts commit dfa38c0907.

* Use wxNumberFormatter to format frequencies.

* Disable pause on audio device shutdown on macOS.

* Switch audio_spin_mutex to TTAS from TAS.

* Bring over changes from Flex devel branch.

* Fix compiler errors.

* Split microphone and speaker EQ locks.

* Properly format slider values based on current locale.

* Format numbers on FreeDV Reporter window according to locale.

* Properly format new frequencies when being added to the list.

* Use locale-specific number display for Filter window.

* Remove workaround as it's no longer needed.

* Add PR #1050 to changelog.
2025-10-07 09:30:00 -07:00
Mooneer Salem 2ef5d6c671
Further real-time code cleanup (#1039)
* Extend rtsan declarations to rest of pipeline and audio classes.

* Add construct for marking RT-unsafe code.

* Use realtime_fp instead of std::function for stuff that needs to happen real-time.

* Add realtime_fp wrapper to allow checking of lambdas in pipeline.

* Add annotations to lambdas.

* Add additional nonblocking assertions.

* Create wrapper around wxGetApp() to suppress warnings.

* mustStopWork needs to be non-blocking.

* Disable thread-local variables in PulseAudioDevice.

* Misc warning cleanup.

* Add missed file.

* Refactor EqualizerStep to not need shared_ptr.

* Annotate MacAudioDevice.

* Fix compiler errors.

* Add additional suppressions in src/pipeline and some dependent code.

* Increment version to 2.0.3 and reenable dev tag.

* Remove std::function from RADEReceiveStep.

* Additional codec2 annotation, missed reference to codec2_malloc in kiss_fft.

* Add additional codec2 annotations.

* Resolve remaining freedv_interface.cpp realtime compiler warnings.

* Minor TSan based cleanup.

* Use relaxed atomic semantics for GenericFIFO.

* Enable ability to instrument with TSan.

* Fix localtime-related data races in ulog.

* Fix g_State related data races.

* Fix memcpy related data races in GenericFIFO.

* Remove macos-13 from CI as it's about to go away.

* Add PR #1039 to changelog.

* test-app-folder isn't actually failing the CI run.

* Enable TSan support via build scripts.

* TSan warning cleanup on macOS.

* Add default virtual destructors for audio devices.

* Work around IAudioDevice destruction data race.

* Fix PlotWaterfall data race.
2025-10-05 21:21:46 -07:00
Mooneer Salem 2658af0b1a
Clean up wxWidgets warnings in Audio Config window. (#1044)
* Clean up wxWidgets warnings in Audio Config window.

* Add PR #1044 to changelog.
2025-10-03 13:24:32 -07:00
Mooneer Salem bbf32c4fd9
Prepare for version 2.0.2 release. (#1043) 2025-10-01 02:19:08 -07:00
Mooneer Salem 98045d189f
Fix codesign issues on macOS. (#1041)
* Fix codesign issues on macOS.

* [no ci] Add PR #1041 to changelog.
2025-09-29 13:20:53 -07:00
Mooneer Salem b36babd7b1
Fix issues with bottom RX callsign list (#1040)
* Make sure bottom dropdown is wide enough to show all columns when expanded.

* Flicker came back, disable color space switching altogether.

* [no ci] Add PR #1040 to changelog.

* Fix spelling error.
2025-09-28 11:25:51 -07:00