Hello,
I want to interface GNURadio to a software decoder. The output could be
regular audio, “discriminator” audio, or 12 KHz IF. I could hook up my
iMIC and jumper the line output to the line input but this is not a neat
way to do it.
Is there a loopback audio device, maybe using Jack? Maybe Jack can do
this directly? It also seems possible to create a sound driver in ALSA
that looks like a sound card with the output looped back to the input.
I tell GNURadio to output to DSP1 and the other program to input from
DSP1.
73 Eric
On Mon, Dec 11, 2006 at 10:37:33PM -0500, Eric A. Cottrell wrote:
I tell GNURadio to output to DSP1 and the other program to input from DSP1.
I think this is doable with either jack or ALSA. Probably easier with
jack.
Eric A. Cottrell wrote:
Is there a loopback audio device, maybe using Jack?
This is exactly the sort of thing jack was designed to do. You can
think of jack as providing virtual patchcords among the inputs
and/or outputs of all the audio applications you have running.
What you have to be aware of is that all the applications using
jack have to share a common sampling rate and fundamental buffer
size. An individual app that uses a different rate or internal
buffer size is reponsible for rebuffering and resampling. Jack
provides lock-free ringbuffers to smooth out things like that.
In addition, each link in a chain of jack-connected applications
increases the latency of the final output by one buffer. If you
want to minimize total latency, it’s best to put as many
processing steps as possible into a single jack application. For
that reason, some algorithms are better realized as plugins rather
than standalone applications. The plugin API’s are well-developed
and straightforward, and there are a number of existing
applications which act as little more than skeletons for plugins.
73
Frank
AB2KT