Jump to content
  • Advertisement
Sign in to follow this  

Networked audio device running on localhost (C# - Low Level API)

This topic is 3171 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

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?

Share this post

Link to post
Share on other sites
Sign in to follow this  

  • Advertisement

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!