Added stricter checking for fmodex errors.
Demote a harmless message from llinfos to lldebugs when audio buffers are all consumed.
Initialize LLAudioBuffer member variables.
-LLAudioBuffer::mInUse is inited to TRUE to avoid buffers that just got created from getting deleted during the same frame by new audio sources further down the chain.
Cleaned up header bloatyness in linden_common
Moved around things to be in line with Linden Lab
Updated llinitparam and imported its new dependencies
Removed dohexeditor and related files
Removed unused legacy files
/\_..._/\
|/ \_/ \|
| o.-.o |
\ ( O ) /
/'--U--'\
| .:. | /\
| /:;:\ |` /
Drake | |:;:| |-'
Arconis / |'-'| \
`""` `""`
Looping sounds were always showing as 'Looping', even after they
stopped. Detection of stopped sounds is much better now.
Instead of only logging a sound as stopped when the audio source
is destroyed, we now detect whether or not it is associated with
an audio channel or not (the normal way to stop a sound is to set
the channel to NULL). This is still a bit fuzzy, since an
audio channel doesn't necessarily have to be playing, but states
where an audio source is associated with a non-playing audio channel
are only short temporary states that don't affect the usefulness
of the sound explorer.
This makes sound beacons green when playing at
full volume, yellow when playing at a lower volume
and red when they are muted (aka, in another parcel
that you can't hear the sounds of).
Originally this was a debug patch as muted sound
sources used to be implemented by setting the volume
to zero, which happens to use like three times more
CPU: so, having a lot of muted sound source caused
the audio thread to never release a mutex anymore
(cause it was never idle anymore), causing the main
loop to hang, waiting on that mutex - dropping the
FPS drastically. Hence it was necessary to see which
sound sources were muted for debugging purposes.
(Since VWR-14914, muted source source are not played
at all anymore, so they do not take extra CPU).
It's still fun to see this extra information though,
now the patch exists anyway.