[arm-allstar] one-time non-local parrot?

Patrick Perdue borrisinabox at gmail.com
Thu Nov 24 12:27:06 EST 2022


Greetings:

As some know, I run an "enhanced parrot" node on 55553. However, I'm 
looking for a better way to capture audio for statistics reporting purposes.

Currently, I am using archiveaudio, writing the node audio to ram, which 
is later deleted. I have a script which gets the newest file in the 
archive directory, assumes that's the recorded audio, which is then 
passed to another function which gets the RMS value of the incoming 
audio, then does things based on what value is returned. I also have a 
mechanism for determining when the node is re-transmitting audio to make 
sure the script doesn't run while this is going on.

However, I'm running into a situation where sometimes, the parrot either 
hears itself reporting back a previous report, returns nothing at all, 
or some other odd condition happens.

What I would rather do is use the normal parrot function, capture it's 
buffer, delay the playback by a second or so, during which time the 
audio is sent to SoX for stats reporting, and an appropriate audio file 
reporting the state of the audio level is played, followed by the 
original audio.

What I have works well about 92% of the time, until something confuses 
it for a couple of transmissions. Admittedly, it's pretty messy code.

My question is, how do you get a one-time parrot that isn't just local 
to your node and it's connected radio? I see that there is a way to 
delay the parroted audio in rpt.conf, and there is a parrotmode, but I'm 
not sure what that does. It doesn't seem to be documented anywhere. I've 
tried various things, but have yet to get the internal parrot to, well, 
parrot globally.

I've noticed that other public parrot nodes fire off a command every 
time the audio is parroted. My node doesn't do that, since it is 
executing a shell script that basically parrots what a parrot is 
supposed to do, along with some extra stuff.

Any help appreciated.

73

N2DYI



More information about the ARM-allstar mailing list