Estoy trabajando en una aplicación de audio, escrita en C. Necesito proporcionar reproducción de audio en vivo en Windows. Necesito decidir qué API de audio usar. Estoy planeando usar the basic waveOut API, pero quería verificar para ver qué recomienda la comunidad aquí.¿La mejor API para audio de bajo nivel en Windows?
Deseo el código que solo funcione en cualquier versión reciente de Windows, sin necesidad de instalar bibliotecas; y quiero latencia mínima.
No necesito ni quiero ningún "efecto", solo necesito reproducir fielmente las muestras de onda que genera la aplicación.
Según entiendo, la mayoría de las aplicaciones de audio profesionales en Windows usan ASIO, lo que brinda una excelente latencia baja, pero no quiero ASIO porque quiero que mi código funcione y la mayoría de las personas no tienen ASIO pre instalado en sus computadoras. (En una fecha posterior, puedo volver y también agregar ASIO como opción, pero voy a buscar la solución más general primero.)
¿Hay algo por ahí que sea mejor que waveOut para mis propósitos, o ¿Esa es la mejor opción?
y qué hay de XAudio2? –
XAudio2 está destinado a reemplazar a DirectSound. Está implementado sobre DirectSound en WinXP. Para WinVista y más tarde, está integrado en el audio del kernel. Probablemente sea una mejor opción que utilizar DirectSound si planea usar DirectSound en lugar de Waveout. –
@JohnKnoeller lo siento por necroing esto. ¿Puede ampliar más sobre "(XAudio2) se implementa sobre DirectSound en WinXP. Para WinVista y más tarde, está integrado en el núcleo de audio"? Vengo de [esta pregunta] (http://gamedev.stackexchange.com/questions/51450) –