[LAD] [LAU] Open Source Audio Interface

Len Ovens len at ovenwerks.net
Thu Sep 11 15:33:42 UTC 2014

On Thu, 11 Sep 2014, Robert Jonsson wrote:

>> - Really low latency available (even if a lot of uses don't need it)
>> - Really stable operation. On a desktop/rack computer where the user has
>> access to a PCIe slot, it is obvous that a second NIC would be the best
>> solution. Laptops should work too.
>> - Normal network traffic will make it through this mess without ever
>> disturbing the audio. A laptop may be used with only one NIC and still need
>> to access network traffic.
> If it complicates stuff I would be all for removing this requirement,
> instead have a dedicated NIC. Laptops have wireless and potentially
> having an additional NIC in a desktop should be low cost.

Any development will start with a dedicated link (NIC). However, leaving 
the posibility of network traffic as well would be worthwhile and I 
suspect in the end, not that difficult. The hard part of the kernel net 
driver, dealing with the HW, has already been done. Adding another net 
device is a matter of accepting and dispensing data as if it was another 
audio channel. Because we have complete control of the link, any data can 
be sent as is, even chopped up packets, so long as they get put back 
together at the end... yes I make it sound more trivial than it is :)

>> All control will be MIDI-able. Because there is two NICs and one of them
>> expects to do real IP based networking, OSC is possible as well as web based
>> control. IN the end this is also a general computer running Linux that can
>> be SSHed into (even ssh -Y) almost anything is possible... but I would guess
>> the first box that has a real DIY digital CODEC, S/pdif, ADAT or MADI IF
>> will be pretty basic.... but looking at the R-Pi, basic seems to be pretty
>> powerful anymore.
> I see, so the "box" will be a dedicated computer. There would need to
> be some custom hardware to wire in AD/DA?

All USB and FW AUdio IFs already are a dedicated computer with custom 
codec wiring. The thing is, these dedicated computers have gotten much 
more powerful at the price we are looking at. There is actually already 
work being done on this kind of HW. and there are many audio projects of 
the standalone variety as well (notably with the RP). embeded linux is 
quite popular and often is already available for much of this lowcost HW.

> 8 or more is where it starts to get interesting, below that I think
> USB suffices.
> I'm guessing this is early days for this project, is there anything
> you know you want help with?

Karl has already started working on HW. He has set up a project for it. 
Mostly getting to know the HW. I do not know if he has started on the 
CODEC IF yet. I think He is planning on running a jack server on it. The 
plan being to use netjack for his first trial. However, If I can have a 
jack client ready by the time he has other things done, raw enet could be 
used from the start. I am pretty sure I can do the jack client to raw 
ethernet driver. The other end, I am sure of the ethernet part, but less 
sure of the ALSA part. The other way to go would be a jack backend... but 
the problem with that is the whole jack1/2 thing. I do not know if a jack 
client can be a sync master (in free run mode maybe?).

Very much early days. Because of the changes in computer hardware, Linux 
audio is very much drying up in the (semi)pro area. ALSA has done a great 
job keeping up with internal audio, but the PCIe cards that are about are 
mostly not supported and the USB AIs are having problems that are really 
not related to the alsa drivers anyway. I have seen one USB3 device:
Which has 4 analog i/o, 1 pair aes3 and 8 more from audio embedded on the 
video for a total of 14 i/o. It also accepts 8 channels of HDMI audio 
input, but I do not know if they replace the video lines or not. I also do 
not know if there is any hardware that takes 8 audio lines and drops them 
onto HDMI. I am pretty sure there are no Linux drivers (or OSx for that 

My thought is that if there is a very high quality way of using the NIC 
for this, and if it was open and works with any OS, that Audio IF 
manufacturers might pick it up and use it because it doesn't cost them 
anything to do so. Much the same as many small boxes use linux as an OS. 
My thought is that if the comtrol method uses an open protocol like midi, 
even if the AI has a mixer in it, it would not be hard to figgure out what 
midi command does what inside the box even if it was not published and if 
a sysex midi was used to load plugins to the AI (many AIs use plugins now) 
it would not matter if windows or linux was used to transfer the plugin... 
even if it is a binary blob. This has been the dream paragraph BTW  :)

Anyway, there is a very alive DYI community. The audio IF seems to be a 
hole. There are CODEC projects (audio in or out, to from s/pdif), but not 
the computer IF. This could fill that hole. I think there are two possible 
ways to forward with an Audio IF. USB3 might be a possibility if there was 
a standard for audio... thing is there will be and whatever I could come 
up with will not be it. PCIe is not out of the question either, but would 
limit the use to desktop. ethernet is wide open.... though what happens in 
the next gen laptops if they decide that ethernet port isn't needed? How 
good would ethernet through USB3 be? Or through bluetooth? The comment 
about people can use wireless for networking is a thought that is not lost 
on laptop makers trying to cut costs I am sure. Are there enough people who 
demand wired net to keep it there?

USB3 network adapters: This is not so bad as it seems. If there is a USB3 
client port on a project, the ethernet over USB3 stuff should be pretty 
standard anyway and could be used straight over for audio in the same way 
as USB MIDI has. This would sidestep the USB3 audio standard thing.

In the long run, I could see most of the audio work being done on the 
"box" itself and the host computer being more of a display/control thing. 
Again, the easiest thing to point to is the R-pi projects which are 
already doing this. It is a move from using the desk/laptop for audio to a 
specialized box. This idea is not new either, many of the digital FOH 
mixers are exactly that (including multi track recording). The real 
difference in what we are trying to do is "open". It used to be that 
anything electronic came with a schematic... we are lucky any more to get 
a block diagram. This is an audio IF that come with the schematic, both 
hard and soft.

Len Ovens

More information about the Linux-audio-dev mailing list