baadc0de,
you are definitely right. One might need a physical layer ethernet chip in the converters interface. But the interfacing on PC (or MAC) side is, where it gets interesting really, esp. from the financial POV...
It didn't let me sleep, I wanted to know how hard it would be to do a driver for, say Win XP...(hardest one first...)
Actually I investigated and came up with the following on my machine:
- I found a simple open source raw packet driver for xp. It has to be installed as a protocol for the physical ethernet port and accepts a (predefined) number of bytes raw data.
I installed it thru the network devices property page and disabled all other protocols.
After a reboot, I launched a test app that was able to identify the device that the protocol was applied to and sent some twenty bytes of raw data directly to the ethernet. Voila, it was way more easy as I ever expected to bypass all those nasty network layers, cool!
I found a similar driver for linux, even more easy I guess. Did not test it...
-Now, that I grew more confident, that the computer side is doable without aeons of development time, I got heroic and installed the latest WINDDK.
(I had no good feelings from my last try in developing a driver, has been a while ago...)
Starting the development environment I found they have a new virtual audio sample driver - WDM with full support for waveformatextensible !!
(Was a big issue in development once, noone ever shared sources on this kind of drivers really....remember the difficulties to obtain drivers from several companies for NT and upward some yesars ago?)
Exactly what is needed for developing a multi channel driver with more than 16 bit!
I instandly built that thing (yes it worked flawlessly from command line and compiled with just 2 warnings...) and got a driver file (sys).
I installed that one with the 'New Hardware Wizard', because it has no hardware relation. Guess what, an example .inf was included by MS and exactly worked like it should. Great.
Fired up my Sonar DAW: The WDM driver was tested working with the specs defined in the driver as an 8-channel device. OK, it actually does nothing right now, but it was flawlessly loaded, identified and exposed itself exactly like any other multichannel card driver would do.
Wow, much more than I expected from a few hours of investigation...
TODO's:
-expanding the virtual audio driver with I/O functions to communicate to the raw data NDIS driver.
-Decide on a lightweight audio data protocol and implement.
-setup another machine with the same drivers.
-Test 2 daws communicating to each other and measure roundtrip latency! BTW this would be a cool application even with no converters involved - each daw would see the other one as a soundcard thru their ethernet cards.
I really hope it works in the region of 'realtime'...
After tests with WDM/KS, I will try to test the same with Asio4All, so everyone will take a look at this point latest ;D.
Well, now I am more than surprised that the seemingly hard parts (bypassing network layers/functional multi channel wdm audio driver skeleton) actually are no rocket science anymore....like it seemed to be some years ago.
I hope someone will try his digital hardware skills on the converter side of things (something I am not nearly that deep into)....
Kind regards and feel free to drive this project further,
Martin