[FIXED] OpenAl crashes while unloading since 2.8.1

Started by Cero, October 23, 2011, 14:35:07

Previous topic - Next topic

Cero

It is indeed still there. Worked with libgdx a lot and have encountered it there using the lwjgl natives
And our main LWJGL game uses 2.8.4 and does indeed too display the "AL lib: FreeContext: (16080CA0) Deleting 64 Source(s)" message

Just tried it a couple of times, and there we go again:

Quote
APPCRASH
Application Name:   javaw.exe
Application Version:   6.0.310.5
Application Timestamp:   4f2c9e1c
Fault Module Name:   OpenAL32.dll_unloaded
Fault Module Version:   0.0.0.0

Matzon

I talked to KittyCat about the issue - and it should be fixed :/
I will look into this, soon - but not sure when I have time ...

Matzon

running with latest nightly - not changed for a while - I cannot reproduce this.
I have run SourceLimitTest, OpenALInfo, ALCTest, OpenALCreationTest many many times.

It always go something like this (with: set ALSOFT_LOGLEVEL=3):
Quote
...
AL lib: MMDevApiMsgProc: Starting message thread
AL lib: MMDevApiMsgProc: Starting message loop
AL lib: alc_initconfig: Initialized backend "mmdevapi"
AL lib: alc_initconfig: Added "mmdevapi" for playback
AL lib: alc_initconfig: Initialized backend "dsound"
AL lib: alc_initconfig: Added "dsound" for capture
...
AL lib: MMDevApiMsgProc: Got message 1024
AL lib: alcOpenDevice: Created device 055C0048, "Speakers (High Definition Audio Device)"
AL lib: UpdateDeviceParams: Format pre-setup: Stereo, Float, 44100hz, 1024 update size x4
AL lib: MMDevApiMsgProc: Got message 1025
AL lib: UpdateDeviceParams: Format post-setup: Stereo, Float, 44100hz, 896 update size x4
...
AL lib: MMDevApiMsgProc: Got message 1026
AL lib: alcCreateContext: Created context 05373B88
...
AL lib: FreeContext: 05373B88
AL lib: MMDevApiMsgProc: Got message 1027
AL lib: MMDevApiMsgProc: Got message 1028
AL lib: FreeDevice: 055C0048

and no errors what so ever.

Cero

also getting this with the latest libgdx, using the lwjgl natives

Needed a couple of tries.

d:\Artificial_Zero_Media\Distributions\StableIsotope>java -jar game.jar
AL lib: GetConfigValue: Key general:hrtf_tables not found
AL lib: GetConfigValue: Key general:rt-prio not found
AL lib: GetConfigValue: Key general:resampler not found
AL lib: GetConfigValue: Key general:trap-alc-error not found
AL lib: GetConfigValue: Key general:trap-al-error not found
AL lib: GetConfigValue: Key reverb:boost not found
AL lib: GetConfigValue: Key reverb:emulate-eax not found
AL lib: GetConfigValue: Key general:drivers not found
AL lib: MMDevApiMsgProc: Starting message thread
AL lib: MMDevApiMsgProc: Starting message loop
AL lib: alc_initconfig: Initialized backend "mmdevapi"
AL lib: alc_initconfig: Added "mmdevapi" for playback
AL lib: alc_initconfig: Initialized backend "dsound"
AL lib: alc_initconfig: Initialized backend "winmm"
AL lib: alc_initconfig: Added "winmm" for capture
AL lib: GetConfigValue: Key general:excludefx not found
AL lib: GetConfigValue: Key general:frequency not found
AL lib: GetConfigValue: Key general:format not found
AL lib: GetConfigValue: Key general:periods not found
AL lib: GetConfigValue: Key general:period_size not found
AL lib: GetConfigValue: Key general:sources not found
AL lib: GetConfigValue: Key general:slots not found
AL lib: GetConfigValue: Key general:sends not found
AL lib: GetConfigValue: Key general:cf_level not found
AL lib: MMDevApiMsgProc: Got message 1024
AL lib: alcOpenDevice: Created device 05220048
AL lib: UpdateDeviceParams: Format pre-setup: Stereo, Signed Short, 44100hz, 102
4 update size x4
AL lib: MMDevApiMsgProc: Got message 1025
AL lib: UpdateDeviceParams: Format post-setup: Stereo, Signed Short, 48000hz, 96
0 update size x4
AL lib: GetConfigValue: Key general:layout_STEREO not found
AL lib: GetConfigValue: Key general:layout not found
AL lib: GetConfigValue: Key general:hrtf not found
AL lib: UpdateDeviceParams: HRTF disabled
AL lib: UpdateDeviceParams: BS2B disabled
AL lib: UpdateDeviceParams: Stereo duplication disabled
AL lib: alcCreateContext: Created context 050A0E80
AL lib: FreeContext: 050A0E80
AL lib: MMDevApiMsgProc: Got message 1026
AL lib: MMDevApiMsgProc: Got message 1027
AL lib: FreeDevice: 05220048
AL lib: alcMMDevApiDeinit: Sending WM_QUIT to Thread 138c
AL lib: MMDevApiMsgProc: Message loop finished

d:\Artificial_Zero_Media\Distributions\StableIsotope>java -jar game.jar
AL lib: GetConfigValue: Key general:hrtf_tables not found
AL lib: GetConfigValue: Key general:rt-prio not found
AL lib: GetConfigValue: Key general:resampler not found
AL lib: GetConfigValue: Key general:trap-alc-error not found
AL lib: GetConfigValue: Key general:trap-al-error not found
AL lib: GetConfigValue: Key reverb:boost not found
AL lib: GetConfigValue: Key reverb:emulate-eax not found
AL lib: GetConfigValue: Key general:drivers not found
AL lib: MMDevApiMsgProc: Starting message thread
AL lib: MMDevApiMsgProc: Starting message loop
AL lib: alc_initconfig: Initialized backend "mmdevapi"
AL lib: alc_initconfig: Added "mmdevapi" for playback
AL lib: alc_initconfig: Initialized backend "dsound"
AL lib: alc_initconfig: Initialized backend "winmm"
AL lib: alc_initconfig: Added "winmm" for capture
AL lib: GetConfigValue: Key general:excludefx not found
AL lib: GetConfigValue: Key general:frequency not found
AL lib: GetConfigValue: Key general:format not found
AL lib: GetConfigValue: Key general:periods not found
AL lib: GetConfigValue: Key general:period_size not found
AL lib: GetConfigValue: Key general:sources not found
AL lib: GetConfigValue: Key general:slots not found
AL lib: GetConfigValue: Key general:sends not found
AL lib: GetConfigValue: Key general:cf_level not found
AL lib: MMDevApiMsgProc: Got message 1024
AL lib: alcOpenDevice: Created device 05290048
AL lib: UpdateDeviceParams: Format pre-setup: Stereo, Signed Short, 44100hz, 102
4 update size x4
AL lib: MMDevApiMsgProc: Got message 1025
AL lib: UpdateDeviceParams: Format post-setup: Stereo, Signed Short, 48000hz, 96
0 update size x4
AL lib: GetConfigValue: Key general:layout_STEREO not found
AL lib: GetConfigValue: Key general:layout not found
AL lib: GetConfigValue: Key general:hrtf not found
AL lib: UpdateDeviceParams: HRTF disabled
AL lib: UpdateDeviceParams: BS2B disabled
AL lib: UpdateDeviceParams: Stereo duplication disabled
AL lib: alcCreateContext: Created context 04FB0E80
AL lib: FreeContext: 04FB0E80
AL lib: MMDevApiMsgProc: Got message 1026
AL lib: MMDevApiMsgProc: Got message 1027
AL lib: FreeDevice: 05290048
AL lib: alcMMDevApiDeinit: Sending WM_QUIT to Thread 1680


The upper output is of a run without the error, next time it happened.
You can see the last line is missing now.
Also the crash is different than in eclipse for some reason:

Quote
Problem Event Name:   APPCRASH
  Application Name:   java.exe
  Application Version:   6.0.330.3
  Application Timestamp:   4faa9fa0
  Fault Module Name:   ntdll.dll
  Fault Module Version:   6.1.7600.16915
  Fault Module Timestamp:   4ec49d10
  Exception Code:   c0000005
  Exception Offset:   0002ff37
  OS Version:   6.1.7600.2.0.0.256.1
  Locale ID:   1031
  Additional Information 1:   0a9e

NTDLL.DLL ? DirectSound problem or something different altogether ?
Anyway seems like a fun problem :|

Cero

I will try it on other machines too from time to time with the openal variable set.

Because, I know that I do get them on many different machines also, but I just dismiss them...

Cero

This time I set the variable and started eclipse from command line, so I could do it with eclipse
AL lib: GetConfigValue: Key general:hrtf_tables not found
AL lib: GetConfigValue: Key general:rt-prio not found
AL lib: GetConfigValue: Key general:resampler not found
AL lib: GetConfigValue: Key general:trap-alc-error not found
AL lib: GetConfigValue: Key general:trap-al-error not found
AL lib: GetConfigValue: Key reverb:boost not found
AL lib: GetConfigValue: Key reverb:emulate-eax not found
AL lib: GetConfigValue: Key general:drivers not found
AL lib: MMDevApiMsgProc: Starting message thread
AL lib: MMDevApiMsgProc: Starting message loop
AL lib: alc_initconfig: Initialized backend "mmdevapi"
AL lib: alc_initconfig: Added "mmdevapi" for playback
AL lib: alc_initconfig: Initialized backend "dsound"
AL lib: alc_initconfig: Initialized backend "winmm"
AL lib: alc_initconfig: Added "winmm" for capture
AL lib: GetConfigValue: Key general:excludefx not found
AL lib: GetConfigValue: Key general:frequency not found
AL lib: GetConfigValue: Key general:format not found
AL lib: GetConfigValue: Key general:periods not found
AL lib: GetConfigValue: Key general:period_size not found
AL lib: GetConfigValue: Key general:sources not found
AL lib: GetConfigValue: Key general:slots not found
AL lib: GetConfigValue: Key general:sends not found
AL lib: GetConfigValue: Key general:cf_level not found
AL lib: MMDevApiMsgProc: Got message 1024
AL lib: alcOpenDevice: Created device 052D0048
AL lib: UpdateDeviceParams: Format pre-setup: Stereo, Signed Short, 44100hz, 1024 update size x4
AL lib: MMDevApiMsgProc: Got message 1025
AL lib: UpdateDeviceParams: Format post-setup: Stereo, Signed Short, 48000hz, 960 update size x4
AL lib: GetConfigValue: Key general:layout_STEREO not found
AL lib: GetConfigValue: Key general:layout not found
AL lib: GetConfigValue: Key general:hrtf not found
AL lib: UpdateDeviceParams: HRTF disabled
AL lib: UpdateDeviceParams: BS2B disabled
AL lib: UpdateDeviceParams: Stereo duplication disabled
AL lib: alcCreateContext: Created context 052C0C60
AL lib: FreeContext: 052C0C60
AL lib: MMDevApiMsgProc: Got message 1026
AL lib: MMDevApiMsgProc: Got message 1027
AL lib: FreeDevice: 052D0048
AL lib: alcMMDevApiDeinit: Sending WM_QUIT to Thread 1760


Quote
Problem Event Name:   APPCRASH
  Application Name:   javaw.exe
  Application Version:   6.0.330.3
  Application Timestamp:   4faa9fa4
  Fault Module Name:   StackHash_abcc
  Fault Module Version:   0.0.0.0
  Fault Module Timestamp:   00000000
  Exception Code:   c00000fd
  Exception Offset:   74e0e2c4

StackHash_abcc  now, huh ?

Cero

There we go

Quote
Problem signature:
  Problem Event Name:   APPCRASH
  Application Name:   javaw.exe
  Application Version:   6.0.330.3
  Application Timestamp:   4faa9fa4
  Fault Module Name:   OpenAL32.dll_unloaded
  Fault Module Version:   0.0.0.0

AL lib: GetConfigValue: Key general:hrtf_tables not found
AL lib: GetConfigValue: Key general:rt-prio not found
AL lib: GetConfigValue: Key general:resampler not found
AL lib: GetConfigValue: Key general:trap-alc-error not found
AL lib: GetConfigValue: Key general:trap-al-error not found
AL lib: GetConfigValue: Key reverb:boost not found
AL lib: GetConfigValue: Key reverb:emulate-eax not found
AL lib: GetConfigValue: Key general:drivers not found
AL lib: MMDevApiMsgProc: Starting message thread
AL lib: MMDevApiMsgProc: Starting message loop
AL lib: alc_initconfig: Initialized backend "mmdevapi"
AL lib: alc_initconfig: Added "mmdevapi" for playback
AL lib: alc_initconfig: Initialized backend "dsound"
AL lib: alc_initconfig: Initialized backend "winmm"
AL lib: alc_initconfig: Added "winmm" for capture
AL lib: GetConfigValue: Key general:excludefx not found
AL lib: GetConfigValue: Key general:frequency not found
AL lib: GetConfigValue: Key general:format not found
AL lib: GetConfigValue: Key general:periods not found
AL lib: GetConfigValue: Key general:period_size not found
AL lib: GetConfigValue: Key general:sources not found
AL lib: GetConfigValue: Key general:slots not found
AL lib: GetConfigValue: Key general:sends not found
AL lib: GetConfigValue: Key general:cf_level not found
AL lib: MMDevApiMsgProc: Got message 1024
AL lib: alcOpenDevice: Created device 052B0048
AL lib: UpdateDeviceParams: Format pre-setup: Stereo, Signed Short, 44100hz, 1024 update size x4
AL lib: MMDevApiMsgProc: Got message 1025
AL lib: UpdateDeviceParams: Format post-setup: Stereo, Signed Short, 48000hz, 960 update size x4
AL lib: GetConfigValue: Key general:layout_STEREO not found
AL lib: GetConfigValue: Key general:layout not found
AL lib: GetConfigValue: Key general:hrtf not found
AL lib: UpdateDeviceParams: HRTF disabled
AL lib: UpdateDeviceParams: BS2B disabled
AL lib: UpdateDeviceParams: Stereo duplication disabled
AL lib: alcCreateContext: Created context 00880E80
AL lib: FreeContext: 00880E80
AL lib: MMDevApiMsgProc: Got message 1026
AL lib: MMDevApiMsgProc: Got message 1027
AL lib: FreeDevice: 052B0048
AL lib: alcMMDevApiDeinit: Sending WM_QUIT to Thread 148c

Matzon

Are you _sure_ you are using the OpenAL dll from nightly?
Can you do it with some of the openal tests - instead of libgdx/slick etc?
Please provide the most basic test - and possibly a zip with jar, src

Cero

Quote from: Matzon on July 05, 2012, 08:58:32
Are you _sure_ you are using the OpenAL dll from nightly?
Can you do it with some of the openal tests - instead of libgdx/slick etc?
Please provide the most basic test - and possibly a zip with jar, src

Actually the latest stable release 2.8.4, I guess libgdx is using that too
I was under the impression that, by now, it would be in the stable release =o
If not, I'm sure thats the reason here

kappa

Downloaded the latest version of LibGDX 0.9.6 (released 3 days ago), they are still using the old LWJGL 2.8.3 hence the issue will still be present there. Please do be careful when reporting such issues and ensure the information stated is correct otherwise it can waste valuable dev time.

As for the "Deleting 64 source(s)" error this is not a serious issue and simply a debug message thrown out by OpenAL-Soft, it basically means that the library/application using it didn't clean up properly before exiting hence it has had to do the clean up for the library/application.