Commit Graph

9 Commits

Author SHA1 Message Date
Raynaldo Rivera b0b826a635 Created a stress test cbp and makefile as well has added the cbp to the workspace 2010-02-21 05:42:36 +00:00
Raynaldo Rivera b118bdc7ac Fixed the visual studio files to use the _d suffix 2010-02-16 03:00:21 +00:00
Joshua Jones f69d925b4f Added ability to add effect presets. 2010-02-14 03:32:24 +00:00
Joshua Jones 3f06749573 Minor API changes to the manager, release is now releaseAllSources, createFromFile is now create.
Added the ability for the user to provide a DataSourceFactory, which cAudio will use to get audio data.  This interface can be overridden to provide cAudio the ability to read from zip archives, TCP streams, potentially any location.  DataSourceFactories can also be prioritized.
Made the existing FileSource a factory and registered it by default with the manager.  If the user wishes to prevent cAudio from reading from disk, unRegister the "FileSystem" data source.
Made tutorials conform with the changes to the API.
2010-02-13 05:48:19 +00:00
Joshua Jones 16f222c8a5 Changes to make sure undefining decoders and EFX actually removes all pieces of them. 2010-02-13 02:34:50 +00:00
Raynaldo Rivera b317412796 changed the IAudio objects and cAudio objects to IAudioSource and cAudioSource 2010-02-10 21:57:09 +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 2132eea8bf Added a small spreadsheet with performance information
Changed the 3d tutorial to use the move convenience function in order to have proper doppler effects.
Added relative seek ability to cAudio source.
Updated decoders to have a flag if the data they are working with is valid for their decoder (isValid).
Added reference counting to IAudio, IAudioDecoder, and IDataSource
Added better error checking in cAudio sources and they will do a better job of detecting if they are invalid.
Fixed the spelling on cWavAudioDecoderFactory.h
Ogg decoder support for the isValid check.
Time seek ability added to cRawDecoder
Rewrote cWavDecoder.  It will now read slightly malformed wav files (and conforms to the wav spec), no longer has a bug where 8 bit mono audio samples will play twice as fast as 16 bit mono samples, proper bounds checking to make sure only the audio data is sent to the audio source, and time seeking abilities.  The decoder does not support channels over 2, compressed wavs, wavs with more than 1 data or fmt block, or any other blocks that may be present in a wav file.  All unsupported blocks will be ignored.
2009-12-07 22:25:08 +00:00
Joshua Jones 4c76942a7f Changed IAudioManager to no longer use std::strings in the main interface. It now uses const char* strings. The reason this change was made was to make porting to other languages, or even use with other string libraries easier. std::string is no longer required to interface with the library.
Added a convenience function (move()) to the cAudio source, making it easier to move a source and do velocity for doppler effects with a single call.
Internally, audio sources are now stored in an std::vector for better performance.  This change also makes it so that it is no longer required for the user to name a source.  The user can pass NULL to name to avoid naming it.
Some documentation fixes.
Added a stress test app, allowing users and developers test how well cAudio performs under pressure.
2009-12-01 01:41:15 +00:00