   Networked audio device running on localhost (C# - Low Level API)
  I have a C# application which needs access to low-level audio features (basically, filling a buffer for playback) and would prefer to avoid interop-code.My first inclination was to go with SlimDX and use that; but I thought about how I may want to support ASIO/DirectX/waveOut, etc. (ASIO for sure, down the road - for now I'm just trying to get some realtime audio happening) as well as handle some MIDI information. C# just doesn't seem to be the best choice for this. So I was thinking, instead, create a server application in C++ and run it on localhost as a virtual "device" - but I'm not sure if this would have decent performance characteristics, or if it's just straight up bad design. Basically, the "Client" will be streaming data to the server, the server would mix all streams, place into buffers for DirectSound/ASIO/waveOut to play and emit audio.This also opens up the possibility of clustering - since I'm rendering tons of audio and will want to use my application for performing music live (It's a modular soft-synth) I may want multiple machines to handle the rendering of the voices, and then stream each voice to one master server that is connected to the PA system/mixer; but have it all responding to the same MIDI data (which would be output from the server)Thoughts?   
  maybe this will helphttp://www.codeproject.com/KB/audio-video/Asio_Net.aspx   