Add logging when XAudio fails.
This commit is contained in:
parent
5bcde44684
commit
334f11d5bc
|
@ -19,6 +19,7 @@
|
||||||
#include "driver.h"
|
#include "driver.h"
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include "xaudio-c.h"
|
#include "xaudio-c.h"
|
||||||
|
#include "general.h"
|
||||||
|
|
||||||
#define WIN32_LEAN_AND_MEAN
|
#define WIN32_LEAN_AND_MEAN
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
|
@ -35,6 +36,7 @@ static xaudio2_write_avail_t pxawrite_avail = NULL;
|
||||||
static xaudio2_free_t pxafree = NULL;
|
static xaudio2_free_t pxafree = NULL;
|
||||||
static HMODULE lib = NULL;
|
static HMODULE lib = NULL;
|
||||||
|
|
||||||
|
#define LIB_NAME "xaudio-c.dll"
|
||||||
#define SYM(X) ((void*)GetProcAddress(lib, "xaudio2_" #X))
|
#define SYM(X) ((void*)GetProcAddress(lib, "xaudio2_" #X))
|
||||||
|
|
||||||
static void deinit_lib(void)
|
static void deinit_lib(void)
|
||||||
|
@ -48,7 +50,7 @@ static bool init_lib(void)
|
||||||
if (lib)
|
if (lib)
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
lib = LoadLibrary("xaudio-c.dll");
|
lib = LoadLibrary(LIB_NAME);
|
||||||
if (!lib)
|
if (!lib)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
|
@ -87,12 +89,15 @@ static void* __xa_init(const char* device, int rate, int latency)
|
||||||
if (xa == NULL)
|
if (xa == NULL)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
size_t bufsize = latency * 4 * rate / 1000;
|
size_t bufsize = latency * rate / 1000;
|
||||||
bufsize = next_pow2(bufsize);
|
bufsize = next_pow2(bufsize);
|
||||||
|
|
||||||
xa->xa = pxanew(rate, 2, 16, bufsize);
|
SSNES_LOG("XAudio2: Requesting %d ms latency, using %d ms latency.\n", latency, (int)bufsize * rate / 1000);
|
||||||
|
|
||||||
|
xa->xa = pxanew(rate, 2, 16, bufsize << 2);
|
||||||
if (!xa->xa)
|
if (!xa->xa)
|
||||||
{
|
{
|
||||||
|
SSNES_ERR("Failed to init XAudio2.\n");
|
||||||
free(xa);
|
free(xa);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
|
@ -61,7 +61,7 @@
|
||||||
# but lots of dropped frames. Reasonable values for this is 32000 +/- 100 Hz.
|
# but lots of dropped frames. Reasonable values for this is 32000 +/- 100 Hz.
|
||||||
# audio_in_rate = 31980
|
# audio_in_rate = 31980
|
||||||
|
|
||||||
# Audio driver backend. Depending on configuration possible candidates are: alsa, oss, jack, rsound, roar, openal and sdl
|
# Audio driver backend. Depending on configuration possible candidates are: alsa, oss, jack, rsound, roar, openal, sdl and xaudio
|
||||||
# audio_driver =
|
# audio_driver =
|
||||||
|
|
||||||
# Override the default audio device the audio_driver uses.
|
# Override the default audio device the audio_driver uses.
|
||||||
|
|
Loading…
Reference in New Issue