Keyboard Shortcuts
Likes
Search
Pulseaudio based VOX PTT - Possible interest only
开云体育A little bit off topic. I have been chasing down an audio buffer underrun problem that
only happens with direwolf. I am also running pulseaudio despite
not being a good idea for direwolf! I am making some progress with
this, that I wont go into with this post though. What I wanted to
mention is that part of the problem seems to be that the PTT
window time shifts with respect to the audio out. I suspect a
hamlib (my rig only) issue rather than a variable audio ring
buffer/delay thing. Minimal problem for 30m APRS beacons, but a
real mess for 2m ISS passes or AX25 connected mode. Some time ago I wrote a pulseaudio VOX like PTT script to run
EasyDRF (under wine) that I though I would share for interest. I
recently reworked it for the fast turnaround needed for ARDOP. It
now works "perfectly" in replacing the use of the PTT RIG 2
localhost:4532 line in the direwolf conf file. It detects the
presence of flrig or rigctld as needed. Basically it just sits pushing an audio stream into a FIFO/pipe at 48kHz and samples that 1260 bytes at a time. Any deviation from audio "zero" asserts the PTT. The 1260 I got by first running the dd command without iflag=fullblock and a bs of 4800 odd, then seeing how many bytes were actually read (in stderr), adding maybe 20% and plugging it all back into the dd line. The audio stream is not perfectly synchronous hence the need for the iflag-fullblock. Doing the maths it looks like the worse case delay before PTT assert is in the order of 25-50mS which can easily be countered with an additional TXdelay. alsa_output.usb-Burr-Brown_from_TI_USB_Audio_CODEC-00.analog-stereo.monitor
is the pulse device name used for a few types of Icom
transceivers. pactl list shows all. This cured my direwolf PTT/audio window problem. Cheers Bob VK2YQA ============= #!/bin/bash
=========== hlppt1 #!/bin/bash hlppt0 #!/bin/bash flptt1 #!/bin/bash flptt0 #!/bin/bash |