discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: WSJT-X and Gnuradio audio, usrp sink underflows


From: Adrian Musceac
Subject: Re: WSJT-X and Gnuradio audio, usrp sink underflows
Date: Mon, 03 Jan 2022 11:12:26 +0200

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 


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




reply via email to

[Prev in Thread] Current Thread [Next in Thread]