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. Regards, Mark On Fri, Aug 24, 2018 at 4:27 PM Mark Farrugia <mark.farrugia@xxxxxxxxxxxxxxxx> wrote: > > Hi all, > > I am currently using the ALSA loopback driver to create a "virtual" > sound card to abstract underlying real sound cards. I capture from > the loopback in user-space, and then subsequently playback to a real > sound card. > > The issue with this is that there is a significant latency introduced > (~100ms) due to the number of transitions of the stream from user to > kernel space. I am seeking a way to avoid this. > > My question is this: is there any way of routing PCM substreams at the > kernel level, so that we can avoid the need to pipe audio back up to > user-space with the loopback capturer? If there is no current > solution that would achieve this, I would proposition to design and > implement a system that uses a top-level ALSA driver, which then > routes dynamically to one or many subscribed lower-level "audio path" > drivers. The system would also have the option to loopback upon > itself. > > Does anyone see any reason that I couldn't (or shouldn't) attempt such > a solution? All feedback is welcome. > > Regards, > Mark _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel