[Stk] audio glitches, drivers and being a beginner

Forwinder forward@forwind.net
Tue, 29 Mar 2005 01:06:26 -0800


Hi Gary,
thanks for the reply
I have dug through aload of my compile errors tonight and with alot of 
success.
It seems .net IDE requires semicolons to separate the preprocessor 
definitions in the list instead of commas.
it now looks like
NDEBUG;__LITTLE_ENDIAN__;__WINDOWS_MM__;WIN32;_CONSOLE;__WINDOWS_ASIO__

However compiling with ms vs.net 2002 with the asio identifiers and src 
included is not happy. It seems it wants some precompiled lib or dll of 
the asio folder. Do i need to precompile the asio folder as a separate 
project and set it up as a dependency.
Is there any simple .net workspace available so as i can take a look at 
how the whole setup looks like :?

regards,
Cj




Gary Scavone wrote:

> Hi Conor,
>
>      I'm very new to STK but have managed to run the demo's app...
>      However I find the audio when playing back glitches period...
>      output from the score audible (quality is good but the gli...
>      
>     Too many errors encountered; the rest of the message is ignored:
>      pretty annoying). Is this due to the audio drivers? I have an echo
>      Layla
>      24 soundcard as the default windows audio device. Should I then use
>      Asio or Direct Sound inorder to run the Layla properly?
>
>
> By default, the demo program is using the DirectSound API. While the 
> ASIO API usually provides better performance, I wouldn't attempt to 
> use it unless you have an ASIO driver from the soundcard manufacturer. 
> With DirectSound, you will probably have to "mess" with the audio 
> parameters to achieve more robust performance (this is typical with 
> Windoze). You might try both increasing and decreasing the buffer size 
> and the number of buffers parameters passed to the RtAudio instance.
>
>       I must say the fact that realtime scores were readily audible on
>     the
>      layla through msdev.net immediately was very promising. . I want to
>      get into doing some audio dev and this looks perfect. I know this
>      sounds like a total novice question but where do i query the OS
>     as to
>      how many audio drivers i have installed. I recently wiped the
>     machine
>      so i don't know where to check in the registry. the control panel
>      "sound audio devices" section only displays options for the Layla
>     and
>      the onboard intel sound driver. I don't even think i have installed
>      the default driver for the sound card that came on the laptop. would
>      any of these make a difference my setup?
>
>
> Using the driver provided by the manufacturer is a good idea. The 
> "Control Panel" can provide some info about your soundcards ... also, 
> right-clicking on "My Computer" (or whatever that icon is in the top 
> left corner) and looking at the system properties could help. The 
> RtAudio class can also probe your system but with the DirectSound API, 
> there's not a lot of information. Even if you have a multichannel 
> soundcard, DirectSound breaks it down into 2-channel pairs and reports 
> those as separate devices. I haven't had the energy to attempt to 
> combine these pairs into a single device from RtAudio's perspective 
> because I consider the DirectSound API to be broken and designed by 
> idiots.
>
>      I find that when i set the identifiers for asio instead of default
>      direct sound and include the asio src i get compile errors like:
>      
>      e:\forwind_dev\stk-4.2.0\include\Thread.h(62): error C2061: syntax
>      error
>      : identifier 'THREAD_FUNCTION'
>      e:\forwind_dev\stk-4.2.0\src\Socket.cpp(61): error C2065:
>     'IPPROTO_TCP'
>      : undeclared identifier
>      e:\forwind_dev\stk-4.2.0\src\Socket.cpp(68): error C2065:
>     'TCP_NODELAY'
>      : undeclared identifier
>      
>      and so on...
>      alot macros undefined, where should i find these?
>      When i try and compile in debug with the asio identifier and source
>      included i get these type of compile errors
>
>
> Those are socket macros. I'm guessing that the __WINDOWS_ASIO__ 
> preprocessor wasn't defined when you tried to compile.
>
> --gary
>