For your information, I tried SpeechNote, but I find it less effective than Handy, which I use on my Mac.
I had an error message related to PipeWire when launching Handy, which I was able to resolve by following this advice: https://forum.zorin.com/t/microphone-not-detected-by-pipewire/20496/22
Specifically, I followed this tutorial (in French): https://fr.linux-terminal.com/?p=6316
Commands executed as root:
sudo apt install pipewire-audio-client-libraries libspa-0.2-bluetooth libspa-0.2-jack
sudo apt install wireplumber pipewire-media-session-
sudo cp /usr/share/doc/pipewire/examples/alsa.conf.d/99-pipewire-default.conf /etc/alsa/conf.d/
sudo cp /usr/share/doc/pipewire/examples/ld.so.conf.d/pipewire-jack-*.conf /etc/ld.so.conf.d/
sudo ldconfig
sudo apt remove pulseaudio-module-bluetooth
Commands executed as user:
systemctl --user --now disable pulseaudio.service pulseaudio.socket
systemctl --user --now enable wireplumber.service
PipeWire now works well. Handy recognizes my microphone properly, and I no longer get the error at launch.
However, it is not very stable. The app crashes regularly. For example, I get warning messages like "fast text entry is not possible on X11" or it just crashes outright.
(handy:236411): Gdk-ERROR **: 10:37:07.900: The program 'handy' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadImplementation (server does not implement operation)'.
(Details: serial 5744 error_code 17 request_code 20 (core protocol) minor_code 0)
(Note to programmers: normally, X errors are reported asynchronously;
that is, you will receive the error a while after causing it.
To debug your program, run it with the GDK_SYNCHRONIZE environment
variable to change this behavior. You can then get a meaningful
backtrace from your debugger if you break on the gdk_x_error() function.)