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:
https://www.blackmagicdesign.com/ca/products/ultrastudiousb3
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
matter).
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
www.ovenwerks.net