Chris Robinson
669b7a2295
Batch update changes together, when possible
...
Certain OpenAL implementations, including Rapture3D, Creative's hardware
drivers, and more recent versions of OpenAL Soft, can batch together changes so
that they all occur at once, avoiding potential discontinuities with one sound
being changed before another, or the listeenr being changed before sounds are.
On other implementaitons, this is a no-op and maintains existing behavior.
2015-11-25 04:24:26 -08:00
Chris Robinson
fbfcc4050f
Stream voice clips
...
Voices tend to be a bit long, and not individually replayed often. So it's
better to stream them instead of loading theminto a sound buffer. The loudness
data is very small, though, so that can be kept buffered indefinitely.
2015-11-25 04:24:24 -08:00
Chris Robinson
eee6a19e31
Add a method to stream sounds in 3D
2015-11-25 04:24:24 -08:00
Chris Robinson
16f72886e9
Use separate lists for openal sounds and streams
2015-11-25 04:24:23 -08:00
Chris Robinson
22a6811425
Limit the sound buffer cache to 15MB
2015-11-25 04:24:23 -08:00
Chris Robinson
495e138907
Load sound loudness and store it with the Sound_Buffer
...
Still not used for say yet, though
2015-11-25 04:24:22 -08:00
Chris Robinson
4571218827
Load the sound as needed and pass it directly to the play methods
...
This breaks say sounds, loudness handling, and the cache limit. Fixes are
forthcoming.
2015-11-25 04:24:22 -08:00
scrawl
7a3bc69df7
Readded sound listener
2015-05-12 19:02:56 +02:00
dteviot
407cd50890
fixed warning C4099:
...
type name first seen using 'class' now seen using 'struct'
2015-03-06 21:36:42 +13:00
scrawl
a59620f643
Cache loudness vector in the buffer cache
2014-07-29 14:32:44 +02:00
scrawl
598c0c4ae7
Implement mouth animation for NPCs based on say sound ( Fixes #642 )
2014-07-29 01:15:22 +02:00
PLkolek
f297c21e4d
Old door sound fades out on door open/close. Door sound is synchronised to angle on action.
2013-07-31 15:46:23 +02:00
Chris Robinson
85850c7440
Fix DEFAULT_OUTPUT declaration
2012-12-18 10:43:04 -08:00
Chris Robinson
3b7edae7c3
Don't hold a list of all sound sources
2012-12-18 05:19:32 -08:00
Chris Robinson
2f8daec379
Allow pausing only certain types of sounds
2012-12-18 04:19:35 -08:00
Chris Robinson
dd3e568a00
Set the sound properties at initialization
2012-12-17 23:35:20 -08:00
Chris Robinson
20321c4552
Keep track of the actual active sounds
2012-12-17 21:50:01 -08:00
Chris Robinson
86bf6388c6
Pass a decoder to the playStream sound output method
2012-12-12 22:32:02 -08:00
Chris Robinson
2c1eceb9f0
Add methods to pause and stop all playing sounds (and music)
2012-12-12 02:33:12 -08:00
Chris Robinson
973b5faf25
Keep track of all allocated sources
2012-12-12 01:32:16 -08:00
Marc Zinnschlag
35d099a638
disabling gcc extensions
2012-10-09 17:10:25 +02:00
Marc Zinnschlag
6bd48d12af
Issue #107 : SoundManager is accessed only through the interface class from now on
2012-08-09 14:33:21 +02:00
Chris Robinson
cbf6c0404a
Implement a basic underwater sound environment
2012-03-31 10:06:12 -07:00
Chris Robinson
575474ff69
Pass the mode flags to the sound output play methods
2012-03-31 08:14:39 -07:00
Chris Robinson
b01289128b
Split OpenAL_Sound into separate classes for 2D and 3D sounds
2012-03-31 01:15:27 -07:00
Chris Robinson
fc167dbc83
Pass Ogre Vector3s to playSound3D and updateListener
2012-03-30 11:42:11 -07:00
Chris Robinson
fefc8f86ab
Remove the unused streamSound3D method
2012-03-30 11:11:07 -07:00
Chris Robinson
293f33914e
Use a deque fpr OpenAL's free sources
2012-03-28 05:35:51 -07:00
Chris Robinson
c6c06f1140
Return SoundPtr objects from the playSound and streamSound methods
2012-03-27 05:59:09 -07:00
Chris Robinson
5cb90ab704
Add some dummy copy constructors and assignment operators to prevent implicit versions from being used
2012-03-24 03:49:03 -07:00
Chris Robinson
277597c567
Fix DEFAULT_OUTPUT for OpenAL_Output
2012-03-22 18:44:55 -07:00
Chris Robinson
f11e3e39a1
Add an enumerate method to the sound output interface
2012-03-21 20:15:01 -07:00
Chris Robinson
fd37a4827c
Enforce a 15MB limit on the sound buffer cache
2012-03-19 13:19:22 -07:00
Chris Robinson
6c45d6668b
Cache OpenAL buffers for easy reuse
2012-03-19 10:33:06 -07:00
Chris Robinson
4f69972a9c
Add a method to stream a sound in 3D
2012-03-19 07:28:03 -07:00
Chris Robinson
ae8218bf03
Allocate OpenAL sources when opening the device
...
This allows sources to be more efficiently retrieved and returned
2012-03-19 07:11:01 -07:00
Chris Robinson
4698e8c0a2
Make the sound stream thread object per-device
2012-03-19 02:15:08 -07:00
Chris Robinson
7194114669
Use a background thread to keep OpenAL streams fed
...
Maybe this could be moved to the SoundManager instead of in OpenAL, but it's
good enough for now.
2012-03-18 14:42:19 -07:00
Chris Robinson
b938fd7b36
Make the sound output init return void
2012-03-18 12:19:54 -07:00
Chris Robinson
362e254720
Rename some more sound class member variables and functions
2012-03-18 11:30:53 -07:00
Chris Robinson
44fc204864
Avoid passing a sound decoder to the play methods
2012-03-17 23:30:43 -07:00
Chris Robinson
7160d20db3
Be more consistent with the vector orientations given the sound handler
2012-03-17 10:36:34 -07:00
Chris Robinson
979ae89aab
Pass volume and pitch parameters to streamed sounds
2012-03-17 09:37:41 -07:00
Chris Robinson
656863ec6e
Add functions to play sounds
2012-03-17 06:51:44 -07:00
Chris Robinson
2dabdcb9e5
Add a function to update the sound listener
2012-03-17 04:22:54 -07:00
Chris Robinson
1ade01edc8
Add a function to stream sounds
2012-03-17 02:55:08 -07:00
Chris Robinson
1322b1e160
Move Sound_Output's definition to a separate header
2012-03-16 23:40:07 -07:00
Chris Robinson
45b612ab3b
Add a skeleton output classs using OpenAL
2012-03-16 22:12:17 -07:00