What is KVR Audio? | Submit News | Advertise | Developer Account

Options (Affects News & Product results only):

OS:
Format:
Include:
Quick Search KVR

"Quick Search" KVR Audio's Product Database, News Items, Developer Listings, Forum Topics and videos here. For advanced Product Database searching please use the full product search. For the forum you can use the phpBB forum search.

To utilize the power of Google you can use the integrated Google Site Search.

Products 0

Developers 0

News 0

Forum 0

Videos 0

Search  

Host Audio Engine Logic

DSP, Plug-in and Host development discussion.

Moderator: Moderators (Main)

KVRist
 
207 posts since 23 Jan, 2008, from Hamburg, Germany

Postby Benutzername; Wed Nov 14, 2012 3:18 am

I've no experience with mono on a Mac but at least under Linux you'll get a long way with it.

Don't worry much about speed issues. .NET applications use optimized machine code on execution, just like any C++ application. The major difference is that it will be compiled just before it's executed by the user and not when the developer presses F7.

I've created a rendering engine with realtime raytracing in plain C# and it was not much slower than the highly optimized C++ version.

Just try to minimize PInvoke overhead whenever you can and try to avoid the garbage collection in realtime threads if possible (reuse objects, buffers etc.)
KVRer
 
26 posts since 26 Feb, 2010

Postby DougCox; Wed Nov 14, 2012 8:10 am

You could look at my program PianoRollComposer's source code. It's in C, for Windows, but it's very simple and should be easy to follow. Search for VSTthread. It sends MIDI input to a VST plugin and then sends the wave data to ASIO for audio output. http://jdmcox.com
KVRian
 
504 posts since 18 Jul, 2007, from Netherlands

Postby obiwanjacobi; Thu Nov 15, 2012 4:35 am

Benutzername wrote:I've no experience with mono on a Mac but at least under Linux you'll get a long way with it.

Don't worry much about speed issues. .NET applications use optimized machine code on execution, just like any C++ application. The major difference is that it will be compiled just before it's executed by the user and not when the developer presses F7.

I've created a rendering engine with realtime raytracing in plain C# and it was not much slower than the highly optimized C++ version.

Just try to minimize PInvoke overhead whenever you can and try to avoid the garbage collection in realtime threads if possible (reuse objects, buffers etc.)


+1

My thoughts exactly! I am also a lot more productive with C# compared to C++ - but thats just me :hihi:
Grtx, Marc Jacobi.
Blog | VST.NET | GMPI.NET | MIDI.NET
Previous

Moderator: Moderators (Main)

Return to DSP and Plug-in Development