From: Vivian M. <viv...@li...> - 2006-01-10 17:14:31
|
Curt > Frederic Bouvier wrote: > > >Quoting Vivian Meazza : > > > > > >>Nice try - perfectly understandable transmissions here :-). It runs > under > >>Cygwin for a while, then fails with: > >> > >>next chatter in 37 seconds > >>OpenAL error (AL_INVALID_VALUE): bind_source (alGenSources) > >>Failed to generate audio source. > >> > >> > > > >It seems that alDeleteSources is only called when SGSoundSample::stop() > is > >called. > >Not when the sample is deleted ( the destructor only do alDeleteBuffers > in that > >case ). I don't know if SGSoundSample::stop() is called in this case but > this > >could be a problem. > > > > > > Interesting catch, thanks Fred. I made a small change to fg_fx.cxx to > call the stop() function first. Perhaps that will cure the problem. > > In looking at this, I notice that the current sound system shows signs > of being migrated from plib and perhaps isn't written optimally for > openal ... At some point it might be worth getting an openal expert (or > someone more familiar with openal than me) to take a pass through the > code and see if there are places where things could be restructured or > fixed up to reduce the chances of these sorts of problems. > That fixed it - Fred does it again :-) Thanks for some a nice enhancement. Vivian |