On Monday, 3 January 2022 05:06:20 EET DAVID ABEL wrote:
> 
> Is there anything in the Audio Source block implementation
> that causes this behaviour, please?  Any
> likely problems in sound configuration? 
> Is there a simpler/better/less trouble-prone way of implementing the
> GRC-WSJT-X
> audio traffic?
> 
> Any assistance appreciated.
> 
>  Dave VK1DJA

Hi Dave,

I use WSJT-X regularly in combination with GNU radio flowgraphs to work modes 
like FT8 
and MSK144 on VHF+ bands. Although I don't use GRC nor the GNU radio audio 
sinks and 
sources for this purpose, I will share my experience of the last few years or 
so hoping it 
might be useful to you.

First, I would say that the easiest way is to use Pulseaudio as a sound system 
(it is 
provided by default on a lot of distributions) and not reference Alsa devices 
directly via 
"hw:0,0" or "plughw:0,0". 
Pulseaudio provides  sink/source output routing and can seamlessly resample 
between 
audio rates. The snd_aloop module once enabled will appear as a second virtual 
sound 
card. Even GNU radio's audio sinks and sources can use Pulseaudio instead of 
Alsa directly. 
I've always found that using Alsa is more tricky to configure correctly via 
.asoundrc while 
Pulseaudio is kind of plug and play.

In WSJT-X, the Pulseaudio sinks will look like this:
alsa_output.platform-snd_aloop.0.analog-stereo.monitor
alsa_output.pci-0000_04_00.6.analog-stereo


That said, Pulseaudio does not come without limitations. It uses more CPU 
(might be a 
problem on ARM platforms) and also adds some latency (can be configured in 
/etc/pulse/
daemon.conf by changing default-fragments and default-fragment-size-msec) to 
the audio 
stream. Whether this latency is a problem for you or not depends on which 
WSJT-X mode 
you want to work. I can tell from experience that FT8 is fine, and I never had 
a chance yet 
to try modes with a faster transmit/receive cycle like FT4. I've written about 
my 
experiences here:
http://qradiolink.org/ft8-plutosdr-2meters.html[1] 

Do note that in my application the audio rate is 8000 Hz and the resampling is 
handled in 
Pulseaudio to get to the rate that WSJT-X uses. Since writing that page, I've 
started to use 
the blocks for Continuous Envelope SSB (gr-cessb) written by Ron Economos, 
which made 
quite a big difference in the quality of the SSB signal. In addition to that I 
also have an 
audio compressor which I disable for WSJT-X signals.
Perhaps someone else on this list can also give their opinion regarding direct 
Alsa usage 
vs. Pulseaudio, in the context of GNU radio audio sinks and sources.

Adrian YO8RZZ



--------
[1] http://qradiolink.org/ft8-plutosdr-2meters.html

Reply via email to