LWJGL Forum

Programming => OpenAL => Topic started by: the2bears on January 27, 2007, 19:01:09

Title: OpenAL error: Invalid Operation (40964)
Post by: the2bears on January 27, 2007, 19:01:09
A tester gets the following error when trying out my game on this system:

Code: [Select]
AMD Athlon 64 3800+
NVidia 6600GT 128MB x2 SLI
1024MB Ram
Win XP SP 2

Note that I haven't the foggiest about what's going on here with OpenAL, I'm using Cas' SoundPlayer which seems to get created properly.  If anyone has any clues as to what direction to look in, probably just poor OpenAL drivers for this machine, right?  Turn sound off :P

Update: so it seems it's related to deleting a buffer still attached to a source?  Hmmm...

Code: [Select]
Failed: 721856 source: 672360
org.lwjgl.openal.OpenALException: OpenAL error: Invalid Operation (40964)
        at org.lwjgl.openal.Util.checkALError(Util.java:56)
        at org.lwjgl.openal.AL10.alSourcei(AL10.java:755)
        at com.shavenpuppy.jglib.openal.ALSource.set(ALSource.java:167)
        at com.shavenpuppy.jglib.openal.ALSource.attach(ALSource.java:215)
        at com.shavenpuppy.jglib.sound.SoundEffect.update(SoundEffect.java:148)
        at com.shavenpuppy.jglib.sound.SoundEffect.tick(SoundEffect.java:343)
        at com.shavenpuppy.jglib.util.PriorityPool$PoolWrapper.tick(PriorityPool.java:102)
        at com.shavenpuppy.jglib.util.PriorityPool.tick(PriorityPool.java:213)
        at com.shavenpuppy.jglib.sound.SoundPlayer.play(SoundPlayer.java:80)
        at com.the2bears.riders.Riders.main(Riders.java:265)
Exception in thread "main" org.lwjgl.openal.OpenALException: OpenAL error: Inval
id Operation (40964)
        at org.lwjgl.openal.Util.checkALError(Util.java:56)
        at org.lwjgl.openal.AL10.alSourceStop(AL10.java:950)
        at com.shavenpuppy.jglib.openal.ALSource.stop(ALSource.java:104)
        at com.shavenpuppy.jglib.sound.SoundEffect.deactivate(SoundEffect.java:336)
        at com.shavenpuppy.jglib.util.PriorityPool$PoolWrapper.deactivate(PriorityPool.java:78)
        at com.shavenpuppy.jglib.util.PriorityPool$PoolWrapper.reset(PriorityPool.java:112)
        at com.shavenpuppy.jglib.util.PriorityPool.reset(PriorityPool.java:221)
        at com.shavenpuppy.jglib.sound.SoundPlayer.doDestroy(SoundPlayer.java:103)
        at com.shavenpuppy.jglib.Resources.deallocate(Resources.java:380)
        at com.shavenpuppy.jglib.Resource.destroy(Resource.java:199)
        at com.the2bears.riders.Riders.cleanup(Riders.java:1246)
        at com.the2bears.riders.Riders.main(Riders.java:276)
Title: Re: OpenAL error: Invalid Operation (40964)
Post by: mot on February 05, 2007, 15:52:07
I had this problem too, mostly on Macs. Eventually I got bored with trying to debug this on other peoples' computers and just put a try/catch block around the calls that caused it. Problem fixed. :) I was probably the only real "hack" I used in the entire game. Next time I'm going to use FMOD.
Title: Re: OpenAL error: Invalid Operation (40964)
Post by: the2bears on February 05, 2007, 18:40:54
I had this problem too, mostly on Macs. Eventually I got bored with trying to debug this on other peoples' computers and just put a try/catch block around the calls that caused it. Problem fixed. :) I was probably the only real "hack" I used in the entire game. Next time I'm going to use FMOD.

That's what I ended up doing, catch an exception and sound = false after that.

Regarding FMOD... are there any licensing implications for selling your games then?  It's not the same type of license, if I recall.  "Free for non-commercial use" etc.

Bill
Title: Re: OpenAL error: Invalid Operation (40964)
Post by: mot on February 05, 2007, 23:15:38
Yes, it's $100 for shareware authors. I'm sure there are more details in the FMOD forum..