[alsa-devel] Possibility of routing at the kernel level

Mark Farrugia mark.farrugia at fiberdyne.com.au
Tue Sep 4 02:39:10 CEST 2018


On Mon, Sep 3, 2018 at 11:01 PM Takashi Iwai <tiwai at suse.de> wrote:
>
> On Mon, 27 Aug 2018 07:57:00 +0200,
> Mark Farrugia wrote:
> >
> > Hi all,
> >
> > Following my initial proposition on Friday for kernel-space audio
> > routing, we at Fiberdyne Systems have since published our initial
> > source for such a solution, which we are calling ALSA Virtual Driver,
> > or simply AVIRT.
> >
> > Please find the source here for your perusal:
> > https://github.com/fiberdyne/avirt
> >
> > Currently we use module parameters for the kernel module, however, we
> > will be porting configuration to another system, such as
> > configfs/sysfs.
> >
> > We are completely open to suggestions and constructive criticism.
>
> Did you try snd-aloop driver?  I'm not advocating it (as it doesn't
> mean a better latency), but it's often an option.
>
>
> thanks,
>
> Takashi

We have tried snd-aloop, and this would otherwise be our adopted
solution, if not for the following issues:
1. The latency involved when looping back to user-space. We would
prefer to avoid unnecessary latency altogether if possible.
2. We wish to hold each input in a different SMACK security context -
aloop does not give a PCM device per input, but rather one PCM device,
with a substream per input. This is an issue since SMACK can only
apply one label per PCM device.
3. We want to dynamically construct the sound card PCM devices based
on user configuration.


More information about the Alsa-devel mailing list