Commit Graph

15 Commits

Author SHA1 Message Date
Joshua Jones ff7b993ab0 Changes to STL containers to use typedefs, allowing rerouting of allocations to be disabled on platforms that may not support it (gcc 4.2). 2010-03-14 22:58:03 +00:00
Raynaldo Rivera dfef14e5f7 Fixed the >>> needing to be > > > error with mac as well has fixed the size_t undeclared error. 2010-03-13 23:09:59 +00:00
Joshua Jones befd5f5821 Added custom memory manager. 2010-03-08 04:56:56 +00:00
Joshua Jones 97c7135bbc Added the ability to disable the plugin system with a define. 2010-02-27 23:58:18 +00:00
Raynaldo Rivera 72169dc8f8 Added the mutex locking to the signalEvent() 2010-02-18 02:22:50 +00:00
Joshua Jones 66a52d41dd Fixed a bug that would cause an exception when unregisterAllEventHandlers was called. 2010-02-14 23:33:10 +00:00
Raynaldo Rivera 08800c5bad Added the event system 2010-02-13 04:47:59 +00:00
Joshua Jones 48d264d0be Added a pass in for the logger to plugins, so they don't need to link with cAudio.dll to access logging capabilities.
Fixed a bug that prevented cAudio from getting plugin symbols correctly.
Fixed a bug where cPluginManager would be constructed multiple times.
2010-02-10 04:46:00 +00:00
Joshua Jones 3043f5d4d5 Added plugin manager and plugin system to cAudio.
Started work on an mp3 decoder plugin.
Conflict fixes to earlier commit.
2010-02-09 05:58:27 +00:00
Raynaldo Rivera 1e914b9796 2010-02-09 04:18:39 +00:00
Joshua Jones 30e5b4a99e Added support for all OpenAL Audio Effects. Access can be gotten through the main audio manager using the AudioEffects interface. IEffect provides access to effect parameters and allows for binding to cAudio sources. IFilter provides access to filters that can be attached to sources and effects.
Added conversion functions from our audio format enum to OpenAL's in preparation for supporting more formats.
Reorganized cAudio defines, made it easier to access some compile time parameters.
Fixed a bug where a source could not be played again after it reached the end of its audio stream.
Added better checking for sources.  IsValid() should provide a more useful indication of whether a source is usable.
Added error checking and logging to cAudioCapture.
Prevented initializing of cAudioManager until shutdown() has been called.
Added a tutorial for Audio Effects.
Added a footsteps sound for showing off Audio Effects.
Moved the default compile location for the main library to lib/.  The msvc project will copy the cAudio.dll to bin/win32-visual/
2010-01-11 00:39:08 +00:00
Joshua Jones 6b3e9c5a9d Moved sample sounds to a media folder and removed the copy of bling.ogg from bin
Updated logger to allow a user to create callbacks to receive log messages
Logger also gives more information, time the message was sent, the source, the importance, and the message itself.
User can now query playback devices and specify the device for the audio manager to use.  The audio manager is no longer a singleton, although creating multiple managers is not advised.
Clean up and optimization of manager initialization code.
IAudioCapture can now be told which device to capture audio from.  The user can also create multiple IAudioCaptures to capture audio from multiple sources at the same time.
Added additional error checking.
A seperate thread is used to capture audio now.
Defines added to allow a user to remove support for default codecs.
2009-11-20 03:39:56 +00:00
Joshua Jones 75ece68dcf Added cross-platform Mutex and Thread classes.
Made cAudio, cAudioCapture, cAudioManager and other classes thread safe.
Made cAudioManager use a seperate update thread by default.
Added cAudioSleep, a cross-platform sleep() function
Moved global defines to cAudioDefines
Added defines to disable thread safety or the internal update thread if the user wishes it
Updated tutorials to reflect the changes made
2009-08-29 11:24:31 +00:00
Joshua Jones bcf890f125 Changed the return of IAudioCapture::getCapturedAudio to return the size of the data copied to the output buffer instead of void. 2009-08-26 01:43:45 +00:00
Joshua Jones 0c3df1d430 Added audio capture capabilities. The user can now get an interface for audio capture from cAudioManager and record audio from the default recording device.
Added a raw audio decoder, allowing raw audio to be played if the format and frequency is known.  Will also load from .raw files on disk, but will assume the format is 16 bit mono and the frequency is 22050 hz
Added a tutorial to show how recording and playback can be done.
Added the ability for the user to unregister audio codecs that they will not be using.  Also added methods to test for the existance of a decoder and get the decoder factory back.
Moved cVector3.h to include instead of Headers to make using it in user projects easier (one less include path)
Moved the audio format enum to its own header file.
Small fix in the wav decoder to prevent the file header from being played as audio data.
2009-08-11 17:57:20 +00:00