Fixed broken Audio module
Former-commit-id: 72adc46d13bb165c1a2f3bf72dc60f64b0b5973e
This commit is contained in:
parent
6088e439e3
commit
26fb8abbbd
|
|
@ -208,18 +208,6 @@ bool NzOpenAL::Initialize(bool openDevice)
|
|||
return false;
|
||||
}
|
||||
|
||||
// On complète le tableau de formats
|
||||
// The presence of an enum value does not guarantee the applicability of an extension to the current context.
|
||||
if (alIsExtensionPresent("AL_EXT_MCFORMATS"))
|
||||
{
|
||||
AudioFormat[nzAudioFormat_Quad] = alGetEnumValue("AL_FORMAT_QUAD16");
|
||||
AudioFormat[nzAudioFormat_5_1] = alGetEnumValue("AL_FORMAT_51CHN16");
|
||||
AudioFormat[nzAudioFormat_6_1] = alGetEnumValue("AL_FORMAT_61CHN16");
|
||||
AudioFormat[nzAudioFormat_7_1] = alGetEnumValue("AL_FORMAT_71CHN16");
|
||||
}
|
||||
else if (alIsExtensionPresent("AL_LOKI_quadriphonic"))
|
||||
AudioFormat[nzAudioFormat_Quad] = alGetEnumValue("AL_FORMAT_QUAD16_LOKI");
|
||||
|
||||
if (openDevice)
|
||||
OpenDevice();
|
||||
|
||||
|
|
@ -271,19 +259,8 @@ void NzOpenAL::Uninitialize()
|
|||
s_library.Unload();
|
||||
}
|
||||
|
||||
ALenum NzOpenAL::AudioFormat[nzAudioFormat_Max+1] =
|
||||
{
|
||||
AL_FORMAT_MONO16, // nzAudioFormat_Mono
|
||||
AL_FORMAT_STEREO16, // nzAudioFormat_Stereo
|
||||
|
||||
// Les valeurs suivantes sont récupérées à l'initialisation car faisant partie d'une extension
|
||||
0, // nzAudioFormat_Quad
|
||||
0, // nzAudioFormat_5_1
|
||||
0, // nzAudioFormat_6_1
|
||||
0 // nzAudioFormat_7_1
|
||||
};
|
||||
|
||||
static_assert(sizeof(NzOpenAL::AudioFormat)/sizeof(ALenum) == nzAudioFormat_Max+1, "Audio format array is incomplete");
|
||||
///ATTENTION: La valeur entière est le nombre de canaux possédés par ce format
|
||||
ALenum NzOpenAL::AudioFormat[nzAudioFormat_Max+1] = {0}; // Valeur ajoutées au chargement d'OpenAL
|
||||
|
||||
void NzOpenAL::CloseDevice()
|
||||
{
|
||||
|
|
@ -361,6 +338,21 @@ bool NzOpenAL::OpenDevice()
|
|||
s_version = 0;
|
||||
}
|
||||
|
||||
// On complète le tableau de formats
|
||||
AudioFormat[nzAudioFormat_Mono] = AL_FORMAT_MONO16;
|
||||
AudioFormat[nzAudioFormat_Stereo] = AL_FORMAT_STEREO16;
|
||||
|
||||
// "The presence of an enum value does not guarantee the applicability of an extension to the current context."
|
||||
if (alIsExtensionPresent("AL_EXT_MCFORMATS"))
|
||||
{
|
||||
AudioFormat[nzAudioFormat_Quad] = alGetEnumValue("AL_FORMAT_QUAD16");
|
||||
AudioFormat[nzAudioFormat_5_1] = alGetEnumValue("AL_FORMAT_51CHN16");
|
||||
AudioFormat[nzAudioFormat_6_1] = alGetEnumValue("AL_FORMAT_61CHN16");
|
||||
AudioFormat[nzAudioFormat_7_1] = alGetEnumValue("AL_FORMAT_71CHN16");
|
||||
}
|
||||
else if (alIsExtensionPresent("AL_LOKI_quadriphonic"))
|
||||
AudioFormat[nzAudioFormat_Quad] = alGetEnumValue("AL_FORMAT_QUAD16_LOKI");
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue