This commit is contained in:
parent
4e5dcd3443
commit
1e914b9796
|
@ -1,12 +1,8 @@
|
|||
#include <iostream>
|
||||
#include <string>
|
||||
|
||||
//Include IAudioManager so we can easily work with cAudio
|
||||
#include "../../include/IAudioManager.h"
|
||||
//Include IAudio so we can create cAudio objects
|
||||
#include "../../include/IAudio.h"
|
||||
//Include our version of Sleep to free CPU usage
|
||||
#include "../../include/cAudioSleep.h"
|
||||
//Include cAudio.h so we can work wtih cAudio
|
||||
#include "../../include/cAudio.h"
|
||||
|
||||
using namespace std;
|
||||
|
||||
|
|
|
@ -7,14 +7,8 @@
|
|||
#include <string>
|
||||
#include <math.h>
|
||||
|
||||
//Include IAudioManager so we can easily work with cAudio
|
||||
#include "../../include/IAudioManager.h"
|
||||
//Include IAudio so we can create cAudio objects
|
||||
#include "../../include/IAudio.h"
|
||||
//Include The cAudio vector class
|
||||
#include "../../include/cVector3.h"
|
||||
//Include our version of Sleep to free CPU usage
|
||||
#include "../../include/cAudioSleep.h"
|
||||
//Include cAudio.h so we can work wtih cAudio
|
||||
#include "../../include/cAudio.h"
|
||||
|
||||
using namespace std;
|
||||
|
||||
|
|
|
@ -7,14 +7,9 @@
|
|||
#include <iostream>
|
||||
#include <string>
|
||||
|
||||
//Include IAudioManager so we can easily work with cAudio
|
||||
#include "../../include/IAudioManager.h"
|
||||
//Include IAudio so we can create cAudio objects
|
||||
#include "../../include/IAudio.h"
|
||||
//Include The cAudio vector class
|
||||
#include "../../include/cVector3.h"
|
||||
//Include our version of Sleep to free CPU usage
|
||||
#include "../../include/cAudioSleep.h"
|
||||
//Include cAudio.h so we can work wtih cAudio
|
||||
#include "../../include/cAudio.h"
|
||||
|
||||
//Our Bling sound
|
||||
#include "bling.h"
|
||||
|
||||
|
|
|
@ -1,15 +1,12 @@
|
|||
//****************************************************************
|
||||
//cAudio 1.7.1 Tutorial 4
|
||||
//Audio Capture and playback
|
||||
//****************************************************************
|
||||
|
||||
#include <iostream>
|
||||
#include <string>
|
||||
//Include IAudioManager so we can easily work with cAudio
|
||||
#include "../../include/IAudioManager.h"
|
||||
//Include IAudioCapture so we can capture audio
|
||||
#include "../../include/IAudioCapture.h"
|
||||
//Include IAudio so we can create cAudio objects
|
||||
#include "../../include/IAudio.h"
|
||||
//Include our version of Sleep to free CPU usage
|
||||
#include "../../include/cAudioSleep.h"
|
||||
|
||||
#include "../../include/ILogger.h"
|
||||
//Include cAudio.h so we can work wtih cAudio
|
||||
#include "../../include/cAudio.h"
|
||||
|
||||
using namespace std;
|
||||
|
||||
|
|
|
@ -1,12 +1,13 @@
|
|||
//****************************************************************
|
||||
//cAudio 1.7.1 Tutorial 5
|
||||
//Audio effects
|
||||
//****************************************************************
|
||||
|
||||
#include <iostream>
|
||||
#include <string>
|
||||
|
||||
//Include IAudioManager so we can easily work with cAudio
|
||||
#include "../../include/IAudioManager.h"
|
||||
//Include IAudio so we can create cAudio objects
|
||||
#include "../../include/IAudio.h"
|
||||
//Include our version of Sleep to free CPU usage
|
||||
#include "../../include/cAudioSleep.h"
|
||||
///Include cAudio.h so we can work wtih cAudio
|
||||
#include "../../include/cAudio.h"
|
||||
|
||||
using namespace std;
|
||||
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef CAUDIOCAPTURE_H
|
||||
#define CAUDIOCAPTURE_H
|
||||
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef CAUDIOEFFECTS_H
|
||||
#define CAUDIOEFFECTS_H
|
||||
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef CAUDIOMANAGER_H_INCLUDED
|
||||
#define CAUDIOMANAGER_H_INCLUDED
|
||||
|
||||
|
@ -5,7 +9,7 @@
|
|||
#include <string>
|
||||
#include <vector>
|
||||
|
||||
#include "cAudio.h"
|
||||
#include "cAudioSource.h"
|
||||
#include "../include/IAudioDecoderFactory.h"
|
||||
#include "cListener.h"
|
||||
#include "../include/IAudioManager.h"
|
||||
|
|
|
@ -1,222 +1,226 @@
|
|||
#ifndef CAUDIO_H_INCLUDED
|
||||
#define CAUDIO_H_INCLUDED
|
||||
#include <string>
|
||||
#include <vector>
|
||||
#include <AL/al.h>
|
||||
#include <AL/alc.h>
|
||||
|
||||
#include "../include/IAudio.h"
|
||||
#include "../Include/cVector3.h"
|
||||
#include "../Headers/cMutex.h"
|
||||
#include "../include/ILogger.h"
|
||||
#include "../Headers/cEFXFunctions.h"
|
||||
|
||||
namespace cAudio
|
||||
{
|
||||
class cAudio : public IAudio
|
||||
{
|
||||
public:
|
||||
#ifdef CAUDIO_EFX_ENABLED
|
||||
cAudio(IAudioDecoder* decoder, ALCcontext* context, cEFXFunctions* oALFunctions);
|
||||
#else
|
||||
cAudio(IAudioDecoder* decoder, ALCcontext* context);
|
||||
#endif
|
||||
~cAudio();
|
||||
|
||||
//! Plays the source with the default or last set values
|
||||
virtual bool play();
|
||||
//! Plays the source in 2D mode
|
||||
virtual bool play2d(const bool& toLoop = false);
|
||||
//! Plays the source in 3D mode
|
||||
virtual bool play3d(const cVector3& position, const float& soundstr = 1.0 , const bool& toLoop = false);
|
||||
|
||||
//! Pauses playback of the sound source
|
||||
virtual void pause();
|
||||
//! Stops playback of the sound source
|
||||
virtual void stop();
|
||||
//! Controls whether the source should loop or not
|
||||
virtual void loop(const bool& toLoop);
|
||||
//! Seeks through the audio stream to a specific spot
|
||||
/** Note: May not be supported by all codecs
|
||||
\param seconds: Number of seconds to seek
|
||||
\param relative: Whether to seek from the current position or the start of the stream
|
||||
\return True on success, False if the codec does not support seeking. */
|
||||
virtual bool seek(const float& seconds, bool relative = false);
|
||||
|
||||
//! Normally called every frame by the audio manager to update the internal buffers
|
||||
//! Note: For internal use only.
|
||||
virtual bool update();
|
||||
//! Releases all resources used by the audio source, normally used to clean up before deletion
|
||||
//! Note: For internal use only.
|
||||
virtual void release();
|
||||
|
||||
//! Returns if the source is ready to be used
|
||||
virtual const bool isValid() const;
|
||||
//! Returns if the source is playing
|
||||
virtual const bool isPlaying() const;
|
||||
//! Returns if the source is paused
|
||||
virtual const bool isPaused() const;
|
||||
//! Returns if the source is stopped
|
||||
virtual const bool isStopped() const;
|
||||
//! Returns if the source is looping
|
||||
virtual const bool isLooping() const;
|
||||
|
||||
//! Sets the position of the source in 3D space
|
||||
virtual void setPosition(const cVector3& position);
|
||||
//! Sets the current velocity of the source for doppler effects
|
||||
virtual void setVelocity(const cVector3& velocity);
|
||||
//! Sets the direction the source is facing
|
||||
virtual void setDirection(const cVector3& direction);
|
||||
|
||||
//! Sets the factor used in attenuating the source over distance
|
||||
//! Larger values make it attenuate faster, smaller values make the source carry better
|
||||
//! Range: 0.0f to +inf (Default: 1.0f)
|
||||
virtual void setRolloffFactor(const float& rolloff);
|
||||
//! Sets how well the source carries over distance
|
||||
//! Same as setRolloffFactor(1.0f/soundstrength)
|
||||
//! Range: 0.0f to +inf (Default: 1.0f)
|
||||
virtual void setStrength(const float& soundstrength);
|
||||
//! Sets the distance from the source where attenuation will begin
|
||||
//! Range: 0.0f to +inf
|
||||
virtual void setMinDistance(const float& minDistance);
|
||||
//! Sets the distance from the source where attenuation will stop
|
||||
//! Range: 0.0f to +inf
|
||||
virtual void setMaxDistance(const float& maxDistance);
|
||||
|
||||
//! Sets the pitch of the source
|
||||
virtual void setPitch(const float& pitch);
|
||||
//! Sets the source volume before attenuation and other effects
|
||||
//! Range: 0.0f to +inf (Default: 1.0f)
|
||||
virtual void setVolume(const float& volume);
|
||||
//! Sets the minimum volume that the source can be attenuated to
|
||||
//! Range: 0.0f to +inf (Default: 0.0f)
|
||||
virtual void setMinVolume(const float& minVolume);
|
||||
//! Sets the maximum volume that the source can achieve
|
||||
//! Range: 0.0f to +inf (Default: 1.0f)
|
||||
virtual void setMaxVolume(const float& maxVolume);
|
||||
|
||||
//! Sets the angle of the inner sound cone of the source
|
||||
//! Note: This causes the sound to be loudest only if the listener is inside this cone
|
||||
//! Range: 0.0f to 360.0f (Default: 360.0f)
|
||||
virtual void setInnerConeAngle(const float& innerAngle);
|
||||
//! Sets the angle of the outer sound cone of the source
|
||||
//! Note: If the listener is outside of this cone, the sound cannot be heard. Between the inner cone angle and this angle, the sound volume will fall off
|
||||
//! Range: 0.0f to 360.0f (Default: 360.0f)
|
||||
virtual void setOuterConeAngle(const float& outerAngle);
|
||||
//! Sets how much the volume of the source is scaled in the outer cone
|
||||
//! Range: 0.0f to +inf (Default: 0.0f)
|
||||
virtual void setOuterConeVolume(const float& outerVolume);
|
||||
|
||||
//! Sets the doppler strength, which enhances or diminishes the doppler effect
|
||||
//! Range: 0.0f to +inf (Default: 1.0f)
|
||||
virtual void setDopplerStrength(const float& dstrength);
|
||||
//! Overrides the doppler velocity vector
|
||||
virtual void setDopplerVelocity(const cVector3& dvelocity);
|
||||
|
||||
//! Convenience function to automatically set the velocity and position for you in a single call
|
||||
//! Velocity will be set to new position - last position
|
||||
virtual void move(const cVector3& position);
|
||||
|
||||
//!Returns the audio objects position
|
||||
virtual const cVector3 getPosition() const;
|
||||
//!Returns the audio objects velocity
|
||||
virtual const cVector3 getVelocity() const;
|
||||
//!Returns the audio objects direction
|
||||
virtual const cVector3 getDirection() const;
|
||||
|
||||
//! Returns the factor used in attenuating the source over distance
|
||||
virtual const float getRolloffFactor() const;
|
||||
//! Returns the strength of the source
|
||||
virtual const float getStrength() const;
|
||||
//! Returns the distance from the source where attenuation will begin
|
||||
virtual const float getMinDistance() const;
|
||||
//! Returns the distance from the source where attenuation will stop
|
||||
virtual const float getMaxDistance() const;
|
||||
|
||||
//!Returns the pitch of the source
|
||||
virtual const float getPitch() const;
|
||||
//!Returns the source volume before attenuation and other effects
|
||||
virtual const float getVolume() const;
|
||||
//! Returns the minimum volume that the source can be attenuated to
|
||||
virtual const float getMinVolume() const;
|
||||
//! Returns the maximum volume that the source can achieve
|
||||
virtual const float getMaxVolume() const;
|
||||
|
||||
//! Returns the angle of the inner sound cone of the source
|
||||
virtual const float getInnerConeAngle() const;
|
||||
//! Returns the angle of the outer sound cone of the source
|
||||
virtual const float getOuterConeAngle() const;
|
||||
//! Returns how much the volume of the source is scaled in the outer cone
|
||||
virtual const float getOuterConeVolume() const;
|
||||
|
||||
//!Returns the doppler strength, which enhances or diminishes the doppler effect
|
||||
virtual const float getDopplerStrength() const;
|
||||
//!Returns the override for the doppler velocity vector
|
||||
virtual const cVector3 getDopplerVelocity() const;
|
||||
|
||||
#ifdef CAUDIO_EFX_ENABLED
|
||||
//! Returns the number of effects at one time this source can support
|
||||
virtual unsigned int getNumEffectSlotsAvailable() const;
|
||||
//! Attaches an EFX audio effect to this sound source to a specific slot
|
||||
//! Range (slot): 0 to getNumEffectSlotsAvailable()
|
||||
virtual bool attachEffect(unsigned int slot, IEffect* effect);
|
||||
//! Removes an EFX audio effect from this sound source
|
||||
//! Range (slot): 0 to getNumEffectSlotsAvailable()
|
||||
virtual void removeEffect(unsigned int slot);
|
||||
|
||||
//! Attaches an audio filter to this sound source that will operate on the direct feed, seperate from any effects
|
||||
virtual bool attachFilter(IFilter* filter);
|
||||
//! Removes the previously attached filter
|
||||
virtual void removeFilter();
|
||||
#endif
|
||||
|
||||
protected:
|
||||
private:
|
||||
//Mutex for thread syncronization
|
||||
cAudioMutex Mutex;
|
||||
//Empties the current working buffer queue
|
||||
void empty();
|
||||
//Checks for OpenAL errors and reports them
|
||||
bool checkError();
|
||||
//Streams audio data from the decoder into a buffer
|
||||
bool stream(ALuint buffer);
|
||||
//Converts our audio format enum to OpenAL's
|
||||
ALenum convertAudioFormatEnum(AudioFormats format);
|
||||
|
||||
//The context that owns this source
|
||||
ALCcontext* Context;
|
||||
|
||||
//Internal audio buffers
|
||||
ALuint Buffers[CAUDIO_SOURCE_NUM_BUFFERS];
|
||||
//OpenAL source
|
||||
ALuint Source;
|
||||
//cAudio decoder being used to stream data
|
||||
IAudioDecoder* Decoder;
|
||||
|
||||
//Stores whether the source is to loop the audio stream
|
||||
bool Loop;
|
||||
//Stores whether the source is ready to be used
|
||||
bool Valid;
|
||||
|
||||
#ifdef CAUDIO_EFX_ENABLED
|
||||
//Holds pointers to all the EFX related functions
|
||||
cEFXFunctions* EFX;
|
||||
//Updates the attached filter
|
||||
void updateFilter(bool remove = false);
|
||||
//Updates the effect attached to a specific slot
|
||||
void updateEffect(unsigned int slot, bool remove = false);
|
||||
|
||||
//Stores the effects attached to this source
|
||||
IEffect* Effects[CAUDIO_SOURCE_MAX_EFFECT_SLOTS];
|
||||
unsigned int LastEffectTimeStamp[CAUDIO_SOURCE_MAX_EFFECT_SLOTS];
|
||||
|
||||
//Stores the attached direct feed filter
|
||||
IFilter* Filter;
|
||||
unsigned int LastFilterTimeStamp;
|
||||
|
||||
//Number of effects supported by the OpenAL Context
|
||||
unsigned int EffectSlotsAvailable;
|
||||
#endif
|
||||
};
|
||||
};
|
||||
#endif //! CAUDIO_H_INCLUDED
|
||||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef CAUDIOSOURCE_H_INCLUDED
|
||||
#define CAUDIOSOURCE_H_INCLUDED
|
||||
#include <string>
|
||||
#include <vector>
|
||||
#include <AL/al.h>
|
||||
#include <AL/alc.h>
|
||||
|
||||
#include "../include/IAudio.h"
|
||||
#include "../Include/cVector3.h"
|
||||
#include "../Headers/cMutex.h"
|
||||
#include "../include/ILogger.h"
|
||||
#include "../Headers/cEFXFunctions.h"
|
||||
|
||||
namespace cAudio
|
||||
{
|
||||
class cAudio : public IAudio
|
||||
{
|
||||
public:
|
||||
#ifdef CAUDIO_EFX_ENABLED
|
||||
cAudio(IAudioDecoder* decoder, ALCcontext* context, cEFXFunctions* oALFunctions);
|
||||
#else
|
||||
cAudio(IAudioDecoder* decoder, ALCcontext* context);
|
||||
#endif
|
||||
~cAudio();
|
||||
|
||||
//! Plays the source with the default or last set values
|
||||
virtual bool play();
|
||||
//! Plays the source in 2D mode
|
||||
virtual bool play2d(const bool& toLoop = false);
|
||||
//! Plays the source in 3D mode
|
||||
virtual bool play3d(const cVector3& position, const float& soundstr = 1.0 , const bool& toLoop = false);
|
||||
|
||||
//! Pauses playback of the sound source
|
||||
virtual void pause();
|
||||
//! Stops playback of the sound source
|
||||
virtual void stop();
|
||||
//! Controls whether the source should loop or not
|
||||
virtual void loop(const bool& toLoop);
|
||||
//! Seeks through the audio stream to a specific spot
|
||||
/** Note: May not be supported by all codecs
|
||||
\param seconds: Number of seconds to seek
|
||||
\param relative: Whether to seek from the current position or the start of the stream
|
||||
\return True on success, False if the codec does not support seeking. */
|
||||
virtual bool seek(const float& seconds, bool relative = false);
|
||||
|
||||
//! Normally called every frame by the audio manager to update the internal buffers
|
||||
//! Note: For internal use only.
|
||||
virtual bool update();
|
||||
//! Releases all resources used by the audio source, normally used to clean up before deletion
|
||||
//! Note: For internal use only.
|
||||
virtual void release();
|
||||
|
||||
//! Returns if the source is ready to be used
|
||||
virtual const bool isValid() const;
|
||||
//! Returns if the source is playing
|
||||
virtual const bool isPlaying() const;
|
||||
//! Returns if the source is paused
|
||||
virtual const bool isPaused() const;
|
||||
//! Returns if the source is stopped
|
||||
virtual const bool isStopped() const;
|
||||
//! Returns if the source is looping
|
||||
virtual const bool isLooping() const;
|
||||
|
||||
//! Sets the position of the source in 3D space
|
||||
virtual void setPosition(const cVector3& position);
|
||||
//! Sets the current velocity of the source for doppler effects
|
||||
virtual void setVelocity(const cVector3& velocity);
|
||||
//! Sets the direction the source is facing
|
||||
virtual void setDirection(const cVector3& direction);
|
||||
|
||||
//! Sets the factor used in attenuating the source over distance
|
||||
//! Larger values make it attenuate faster, smaller values make the source carry better
|
||||
//! Range: 0.0f to +inf (Default: 1.0f)
|
||||
virtual void setRolloffFactor(const float& rolloff);
|
||||
//! Sets how well the source carries over distance
|
||||
//! Same as setRolloffFactor(1.0f/soundstrength)
|
||||
//! Range: 0.0f to +inf (Default: 1.0f)
|
||||
virtual void setStrength(const float& soundstrength);
|
||||
//! Sets the distance from the source where attenuation will begin
|
||||
//! Range: 0.0f to +inf
|
||||
virtual void setMinDistance(const float& minDistance);
|
||||
//! Sets the distance from the source where attenuation will stop
|
||||
//! Range: 0.0f to +inf
|
||||
virtual void setMaxDistance(const float& maxDistance);
|
||||
|
||||
//! Sets the pitch of the source
|
||||
virtual void setPitch(const float& pitch);
|
||||
//! Sets the source volume before attenuation and other effects
|
||||
//! Range: 0.0f to +inf (Default: 1.0f)
|
||||
virtual void setVolume(const float& volume);
|
||||
//! Sets the minimum volume that the source can be attenuated to
|
||||
//! Range: 0.0f to +inf (Default: 0.0f)
|
||||
virtual void setMinVolume(const float& minVolume);
|
||||
//! Sets the maximum volume that the source can achieve
|
||||
//! Range: 0.0f to +inf (Default: 1.0f)
|
||||
virtual void setMaxVolume(const float& maxVolume);
|
||||
|
||||
//! Sets the angle of the inner sound cone of the source
|
||||
//! Note: This causes the sound to be loudest only if the listener is inside this cone
|
||||
//! Range: 0.0f to 360.0f (Default: 360.0f)
|
||||
virtual void setInnerConeAngle(const float& innerAngle);
|
||||
//! Sets the angle of the outer sound cone of the source
|
||||
//! Note: If the listener is outside of this cone, the sound cannot be heard. Between the inner cone angle and this angle, the sound volume will fall off
|
||||
//! Range: 0.0f to 360.0f (Default: 360.0f)
|
||||
virtual void setOuterConeAngle(const float& outerAngle);
|
||||
//! Sets how much the volume of the source is scaled in the outer cone
|
||||
//! Range: 0.0f to +inf (Default: 0.0f)
|
||||
virtual void setOuterConeVolume(const float& outerVolume);
|
||||
|
||||
//! Sets the doppler strength, which enhances or diminishes the doppler effect
|
||||
//! Range: 0.0f to +inf (Default: 1.0f)
|
||||
virtual void setDopplerStrength(const float& dstrength);
|
||||
//! Overrides the doppler velocity vector
|
||||
virtual void setDopplerVelocity(const cVector3& dvelocity);
|
||||
|
||||
//! Convenience function to automatically set the velocity and position for you in a single call
|
||||
//! Velocity will be set to new position - last position
|
||||
virtual void move(const cVector3& position);
|
||||
|
||||
//!Returns the audio objects position
|
||||
virtual const cVector3 getPosition() const;
|
||||
//!Returns the audio objects velocity
|
||||
virtual const cVector3 getVelocity() const;
|
||||
//!Returns the audio objects direction
|
||||
virtual const cVector3 getDirection() const;
|
||||
|
||||
//! Returns the factor used in attenuating the source over distance
|
||||
virtual const float getRolloffFactor() const;
|
||||
//! Returns the strength of the source
|
||||
virtual const float getStrength() const;
|
||||
//! Returns the distance from the source where attenuation will begin
|
||||
virtual const float getMinDistance() const;
|
||||
//! Returns the distance from the source where attenuation will stop
|
||||
virtual const float getMaxDistance() const;
|
||||
|
||||
//!Returns the pitch of the source
|
||||
virtual const float getPitch() const;
|
||||
//!Returns the source volume before attenuation and other effects
|
||||
virtual const float getVolume() const;
|
||||
//! Returns the minimum volume that the source can be attenuated to
|
||||
virtual const float getMinVolume() const;
|
||||
//! Returns the maximum volume that the source can achieve
|
||||
virtual const float getMaxVolume() const;
|
||||
|
||||
//! Returns the angle of the inner sound cone of the source
|
||||
virtual const float getInnerConeAngle() const;
|
||||
//! Returns the angle of the outer sound cone of the source
|
||||
virtual const float getOuterConeAngle() const;
|
||||
//! Returns how much the volume of the source is scaled in the outer cone
|
||||
virtual const float getOuterConeVolume() const;
|
||||
|
||||
//!Returns the doppler strength, which enhances or diminishes the doppler effect
|
||||
virtual const float getDopplerStrength() const;
|
||||
//!Returns the override for the doppler velocity vector
|
||||
virtual const cVector3 getDopplerVelocity() const;
|
||||
|
||||
#ifdef CAUDIO_EFX_ENABLED
|
||||
//! Returns the number of effects at one time this source can support
|
||||
virtual unsigned int getNumEffectSlotsAvailable() const;
|
||||
//! Attaches an EFX audio effect to this sound source to a specific slot
|
||||
//! Range (slot): 0 to getNumEffectSlotsAvailable()
|
||||
virtual bool attachEffect(unsigned int slot, IEffect* effect);
|
||||
//! Removes an EFX audio effect from this sound source
|
||||
//! Range (slot): 0 to getNumEffectSlotsAvailable()
|
||||
virtual void removeEffect(unsigned int slot);
|
||||
|
||||
//! Attaches an audio filter to this sound source that will operate on the direct feed, seperate from any effects
|
||||
virtual bool attachFilter(IFilter* filter);
|
||||
//! Removes the previously attached filter
|
||||
virtual void removeFilter();
|
||||
#endif
|
||||
|
||||
protected:
|
||||
private:
|
||||
//Mutex for thread syncronization
|
||||
cAudioMutex Mutex;
|
||||
//Empties the current working buffer queue
|
||||
void empty();
|
||||
//Checks for OpenAL errors and reports them
|
||||
bool checkError();
|
||||
//Streams audio data from the decoder into a buffer
|
||||
bool stream(ALuint buffer);
|
||||
//Converts our audio format enum to OpenAL's
|
||||
ALenum convertAudioFormatEnum(AudioFormats format);
|
||||
|
||||
//The context that owns this source
|
||||
ALCcontext* Context;
|
||||
|
||||
//Internal audio buffers
|
||||
ALuint Buffers[CAUDIO_SOURCE_NUM_BUFFERS];
|
||||
//OpenAL source
|
||||
ALuint Source;
|
||||
//cAudio decoder being used to stream data
|
||||
IAudioDecoder* Decoder;
|
||||
|
||||
//Stores whether the source is to loop the audio stream
|
||||
bool Loop;
|
||||
//Stores whether the source is ready to be used
|
||||
bool Valid;
|
||||
|
||||
#ifdef CAUDIO_EFX_ENABLED
|
||||
//Holds pointers to all the EFX related functions
|
||||
cEFXFunctions* EFX;
|
||||
//Updates the attached filter
|
||||
void updateFilter(bool remove = false);
|
||||
//Updates the effect attached to a specific slot
|
||||
void updateEffect(unsigned int slot, bool remove = false);
|
||||
|
||||
//Stores the effects attached to this source
|
||||
IEffect* Effects[CAUDIO_SOURCE_MAX_EFFECT_SLOTS];
|
||||
unsigned int LastEffectTimeStamp[CAUDIO_SOURCE_MAX_EFFECT_SLOTS];
|
||||
|
||||
//Stores the attached direct feed filter
|
||||
IFilter* Filter;
|
||||
unsigned int LastFilterTimeStamp;
|
||||
|
||||
//Number of effects supported by the OpenAL Context
|
||||
unsigned int EffectSlotsAvailable;
|
||||
#endif
|
||||
};
|
||||
};
|
||||
#endif //! CAUDIO_H_INCLUDED
|
|
@ -1,19 +1,23 @@
|
|||
#ifndef CCONSOLELOGRECEIVER_H_INCLUDED
|
||||
#define CCONSOLELOGRECEIVER_H_INCLUDED
|
||||
|
||||
#include "../include/ILogReceiver.h"
|
||||
|
||||
namespace cAudio
|
||||
{
|
||||
|
||||
class cConsoleLogReceiver : public ILogReceiver
|
||||
{
|
||||
public:
|
||||
virtual bool OnLogMessage(const char* sender, const char* message, LogLevel level, float time);
|
||||
private:
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
#endif //! CCONSOLELOGRECEIVER_H_INCLUDED
|
||||
|
||||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef CCONSOLELOGRECEIVER_H_INCLUDED
|
||||
#define CCONSOLELOGRECEIVER_H_INCLUDED
|
||||
|
||||
#include "../include/ILogReceiver.h"
|
||||
|
||||
namespace cAudio
|
||||
{
|
||||
|
||||
class cConsoleLogReceiver : public ILogReceiver
|
||||
{
|
||||
public:
|
||||
virtual bool OnLogMessage(const char* sender, const char* message, LogLevel level, float time);
|
||||
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
#endif //! CCONSOLELOGRECEIVER_H_INCLUDED
|
||||
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef CEFXFUNCTIONS_H
|
||||
#define CEFXFUNCTIONS_H
|
||||
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef CEFFECT_H
|
||||
#define CEFFECT_H
|
||||
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef CFILESOURCE_H
|
||||
#define CFILESOURCE_H
|
||||
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef CFILTER_H
|
||||
#define CFILTER_H
|
||||
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef CLISTENER_H_INCLUDED
|
||||
#define CLISTENER_H_INCLUDED
|
||||
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef CLOGGER_H_INCLUDED
|
||||
#define CLOGGER_H_INCLUDED
|
||||
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef CMEMORYSOURCE_H
|
||||
#define CMEMORYSOURCE_H
|
||||
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef CAUDIOMUTEX_H
|
||||
#define CAUDIOMUTEX_H
|
||||
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef COGGAUDIODECODERFACTORY_H
|
||||
#define COGGAUDIODECODERFACTORY_H
|
||||
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef COGGDECODER_H_INCLUDED
|
||||
#define COGGDECODER_H_INCLUDED
|
||||
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef CRAWAUDIODECODERFACOTRY_H_INCLUDED
|
||||
#define CRAWAUDIODECODERFACOTRY_H_INCLUDED
|
||||
|
||||
|
|
|
@ -1,44 +1,48 @@
|
|||
#ifndef CRAWDECODER_H_INCLUDED
|
||||
#define CRAWDECODER_H_INCLUDED
|
||||
|
||||
#include "../include/IAudioDecoder.h"
|
||||
|
||||
namespace cAudio
|
||||
{
|
||||
|
||||
class cRawDecoder : public IAudioDecoder
|
||||
{
|
||||
public:
|
||||
|
||||
cRawDecoder(IDataSource* stream, unsigned int frequency, AudioFormats format);
|
||||
~cRawDecoder();
|
||||
|
||||
//!Retruns the format of the audio data
|
||||
virtual AudioFormats getFormat();
|
||||
|
||||
//!Returns the frequency of the audio data
|
||||
virtual int getFrequency();
|
||||
|
||||
//!Returns whether seeking is supported
|
||||
virtual bool isSeekingSupported();
|
||||
|
||||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef CRAWDECODER_H_INCLUDED
|
||||
#define CRAWDECODER_H_INCLUDED
|
||||
|
||||
#include "../include/IAudioDecoder.h"
|
||||
|
||||
namespace cAudio
|
||||
{
|
||||
|
||||
class cRawDecoder : public IAudioDecoder
|
||||
{
|
||||
public:
|
||||
|
||||
cRawDecoder(IDataSource* stream, unsigned int frequency, AudioFormats format);
|
||||
~cRawDecoder();
|
||||
|
||||
//!Retruns the format of the audio data
|
||||
virtual AudioFormats getFormat();
|
||||
|
||||
//!Returns the frequency of the audio data
|
||||
virtual int getFrequency();
|
||||
|
||||
//!Returns whether seeking is supported
|
||||
virtual bool isSeekingSupported();
|
||||
|
||||
//!Returns whether the stream is valid for this codec
|
||||
virtual bool isValid();
|
||||
|
||||
//!Reads a section of data out of the audio stream
|
||||
virtual int readAudioData(void* output, int amount);
|
||||
|
||||
//!Sets the position to read data out of
|
||||
virtual bool setPosition(int position, bool relative);
|
||||
|
||||
//!If seeking is supported, will seek the stream to seconds
|
||||
virtual bool seek(float seconds,bool relative);
|
||||
|
||||
private:
|
||||
unsigned int Frequency;
|
||||
AudioFormats Format;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
virtual bool isValid();
|
||||
|
||||
//!Reads a section of data out of the audio stream
|
||||
virtual int readAudioData(void* output, int amount);
|
||||
|
||||
//!Sets the position to read data out of
|
||||
virtual bool setPosition(int position, bool relative);
|
||||
|
||||
//!If seeking is supported, will seek the stream to seconds
|
||||
virtual bool seek(float seconds,bool relative);
|
||||
|
||||
private:
|
||||
unsigned int Frequency;
|
||||
AudioFormats Format;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
#endif //! CRAWDECODER_H_INCLUDED
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef CAUDIOTHREAD_H
|
||||
#define CAUDIOTHREAD_H
|
||||
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef CUTILS_H_INCLUDED
|
||||
#define CUTILS_H_INCLUDED
|
||||
#include <string>
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef CWAVAUDIODECODERFACOTRY_H_INCLUDED
|
||||
#define CWAVAUDIODECODERFACOTRY_H_INCLUDED
|
||||
|
||||
|
|
|
@ -1,52 +1,56 @@
|
|||
#ifndef CWAVDECODER_H_INCLUDED
|
||||
#define CWAVDECODER_H_INCLUDED
|
||||
|
||||
#include "../include/IAudioDecoder.h"
|
||||
|
||||
namespace cAudio
|
||||
{
|
||||
|
||||
class cWavDecoder : public IAudioDecoder
|
||||
{
|
||||
public:
|
||||
|
||||
cWavDecoder(IDataSource* stream);
|
||||
~cWavDecoder();
|
||||
|
||||
//!Retruns the format of the audio data
|
||||
virtual AudioFormats getFormat();
|
||||
|
||||
//!Returns the frequency of the audio data
|
||||
virtual int getFrequency();
|
||||
|
||||
//!Returns whether seeking is supported
|
||||
virtual bool isSeekingSupported();
|
||||
|
||||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef CWAVDECODER_H_INCLUDED
|
||||
#define CWAVDECODER_H_INCLUDED
|
||||
|
||||
#include "../include/IAudioDecoder.h"
|
||||
|
||||
namespace cAudio
|
||||
{
|
||||
|
||||
class cWavDecoder : public IAudioDecoder
|
||||
{
|
||||
public:
|
||||
|
||||
cWavDecoder(IDataSource* stream);
|
||||
~cWavDecoder();
|
||||
|
||||
//!Retruns the format of the audio data
|
||||
virtual AudioFormats getFormat();
|
||||
|
||||
//!Returns the frequency of the audio data
|
||||
virtual int getFrequency();
|
||||
|
||||
//!Returns whether seeking is supported
|
||||
virtual bool isSeekingSupported();
|
||||
|
||||
//!Returns whether the stream is valid for this codec
|
||||
virtual bool isValid();
|
||||
|
||||
//!Reads a section of data out of the audio stream
|
||||
virtual int readAudioData(void* output, int amount);
|
||||
|
||||
//!Sets the position to read data out of
|
||||
virtual bool setPosition(int position, bool relative);
|
||||
|
||||
//!If seeking is supported, will seek the stream to seconds
|
||||
virtual bool seek(float seconds,bool relative);
|
||||
|
||||
private:
|
||||
short Channels;
|
||||
int SampleRate;
|
||||
int ByteRate;
|
||||
short BlockAlign;
|
||||
short BitsPerSample;
|
||||
int DataSize;
|
||||
int DataOffset;
|
||||
|
||||
bool Valid;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
#endif //! CFLACDECODER_H_INCLUDED
|
||||
|
||||
virtual bool isValid();
|
||||
|
||||
//!Reads a section of data out of the audio stream
|
||||
virtual int readAudioData(void* output, int amount);
|
||||
|
||||
//!Sets the position to read data out of
|
||||
virtual bool setPosition(int position, bool relative);
|
||||
|
||||
//!If seeking is supported, will seek the stream to seconds
|
||||
virtual bool seek(float seconds,bool relative);
|
||||
|
||||
private:
|
||||
short Channels;
|
||||
int SampleRate;
|
||||
int ByteRate;
|
||||
short BlockAlign;
|
||||
short BitsPerSample;
|
||||
int DataSize;
|
||||
int DataOffset;
|
||||
|
||||
bool Valid;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
#endif //! CFLACDECODER_H_INCLUDED
|
||||
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#include "../Headers/cAudioCapture.h"
|
||||
#include "../Headers/cUtils.h"
|
||||
#include "../Headers/cThread.h"
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#include "../Headers/cAudioEffects.h"
|
||||
#include "../Headers/cFilter.h"
|
||||
#include "../Headers/cEffect.h"
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#include "../Headers/cAudioManager.h"
|
||||
#include "../Headers/cFileSource.h"
|
||||
#include "../Headers/cMemorySource.h"
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifdef _WIN32
|
||||
#include <windows.h> //Basic windows include for Sleep();
|
||||
#else
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#include "../Headers/cConsoleLogReceiver.h"
|
||||
#include <iostream>
|
||||
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#include "../Headers/cEffect.h"
|
||||
#include "../Headers/cLogger.h"
|
||||
#include "../Headers/cUtils.h"
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#include "../Headers/cFileSource.h"
|
||||
#include <cstring>
|
||||
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#include "../Headers/cFilter.h"
|
||||
#include "../Headers/cLogger.h"
|
||||
#include "../Headers/cUtils.h"
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#include "../Headers/cListener.h"
|
||||
#include <AL/al.h>
|
||||
#include "../Headers/cEFXFunctions.h"
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#include <time.h>
|
||||
#include "../Headers/cLogger.h"
|
||||
#include "../Headers/cConsoleLogReceiver.h"
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#include "../Headers/cMemorySource.h"
|
||||
#include <cstring>
|
||||
#include <iostream>
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#include "../Headers/cMutex.h"
|
||||
|
||||
namespace cAudio
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#include "../Headers/cOggAudioDecoderFactory.h"
|
||||
|
||||
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#include "../Headers/cOggDecoder.h"
|
||||
namespace cAudio
|
||||
{
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#include "../Headers/cRawDecoder.h"
|
||||
|
||||
namespace cAudio{
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#include "../Headers/cThread.h"
|
||||
|
||||
#ifdef _WIN32
|
||||
|
|
|
@ -1 +1,5 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#include "../Headers/cWavAudioDecoderFactory.h"
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#include "../Headers/cWavDecoder.h"
|
||||
#include <string.h>
|
||||
|
||||
|
@ -99,12 +103,12 @@ namespace cAudio
|
|||
}
|
||||
|
||||
cWavDecoder::~cWavDecoder()
|
||||
{
|
||||
Channels = 0;
|
||||
SampleRate = 0;
|
||||
ByteRate = 0;
|
||||
BlockAlign = 0;
|
||||
BitsPerSample = 0;
|
||||
{
|
||||
Channels = 0;
|
||||
SampleRate = 0;
|
||||
ByteRate = 0;
|
||||
BlockAlign = 0;
|
||||
BitsPerSample = 0;
|
||||
DataSize = 0;
|
||||
DataOffset = 0;
|
||||
Valid = false;
|
||||
|
|
|
@ -179,10 +179,6 @@
|
|||
Filter="h;hpp;hxx;hm;inl;inc;xsd"
|
||||
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\Headers\cAudio.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\Headers\cAudioCapture.h"
|
||||
>
|
||||
|
@ -195,6 +191,10 @@
|
|||
RelativePath=".\Headers\cAudioManager.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\Headers\cAudioSource.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\Headers\cConsoleLogReceiver.h"
|
||||
>
|
||||
|
@ -239,10 +239,6 @@
|
|||
RelativePath=".\Headers\cOggDecoder.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\Headers\cPluginManager.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\Headers\cRawAudioDecoderFactory.h"
|
||||
>
|
||||
|
@ -275,10 +271,6 @@
|
|||
Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
|
||||
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\Source\cAudio.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\Source\cAudioCapture.cpp"
|
||||
>
|
||||
|
@ -295,6 +287,10 @@
|
|||
RelativePath=".\Source\cAudioSleep.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\Source\cAudioSource.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\Source\cConsoleLogReceiver.cpp"
|
||||
>
|
||||
|
@ -335,10 +331,6 @@
|
|||
RelativePath=".\Source\cOggDecoder.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\Source\cPluginManager.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\Source\cRawDecoder.cpp"
|
||||
>
|
||||
|
@ -359,6 +351,10 @@
|
|||
<Filter
|
||||
Name="Include"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\include\cAudio.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\include\cAudioDefines.h"
|
||||
>
|
||||
|
|
|
@ -1,17 +1,20 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef EAUDIOFORMATS_H
|
||||
#define EAUDIOFORMATS_H
|
||||
|
||||
namespace cAudio
|
||||
{
|
||||
|
||||
enum AudioFormats
|
||||
{
|
||||
EAF_8BIT_MONO,
|
||||
EAF_8BIT_STEREO,
|
||||
EAF_16BIT_MONO,
|
||||
EAF_16BIT_STEREO
|
||||
};
|
||||
|
||||
enum AudioFormats
|
||||
{
|
||||
EAF_8BIT_MONO,
|
||||
EAF_8BIT_STEREO,
|
||||
EAF_16BIT_MONO,
|
||||
EAF_16BIT_STEREO
|
||||
};
|
||||
};
|
||||
|
||||
#endif //! EAUDIOFORMATS_H
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef IAUDIO_H
|
||||
#define IAUDIO_H
|
||||
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef IAUDIOCAPTURE_H
|
||||
#define IAUDIOCAPTURE_H
|
||||
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef IAUDIODECODER_H
|
||||
#define IAUDIODECODER_H
|
||||
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef IAUDIODECODERFACTORY_H
|
||||
#define IAUDIODECODERFACTORY_H
|
||||
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef IAUDIOEFFECTS_H
|
||||
#define IAUDIOEFFECTS_H
|
||||
|
||||
|
@ -12,12 +16,26 @@ namespace cAudio
|
|||
public:
|
||||
IAudioEffects() {}
|
||||
virtual ~IAudioEffects() {}
|
||||
|
||||
|
||||
//*! Creates a IEffect pointer.
|
||||
virtual IEffect* createEffect() = 0;
|
||||
|
||||
//*! Creates a IEffect pointer.
|
||||
virtual IFilter* createFilter() = 0;
|
||||
|
||||
//*! Returns the max number of effects supported
|
||||
virtual unsigned int getMaxEffectsSupported() const = 0;
|
||||
|
||||
/*! Checks to see if the given effect type is supported
|
||||
\param type: the effect type to be checked
|
||||
\return True if the effect is supported, False if the effect isn't supported
|
||||
*/
|
||||
virtual bool isEffectSupported(const EffectTypes& type) const = 0;
|
||||
|
||||
/*! Checks to see if the given filter type is supported
|
||||
\param type: the filter type to be checked
|
||||
\return True if the filter is supported, False if the filter isn't supported
|
||||
*/
|
||||
virtual bool isFilterSupported(const FilterTypes& type) const = 0;
|
||||
|
||||
protected:
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef IAUDIOMANAGER_H
|
||||
#define IAUDIOMANAGER_H
|
||||
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef IDATASOURCE_H
|
||||
#define IDATASOURCE_H
|
||||
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef IEFFECT_H
|
||||
#define IEFFECT_H
|
||||
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef IEFFECTPARAMETERS_H
|
||||
#define IEFFECTPARAMETERS_H
|
||||
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef IFILTER_H
|
||||
#define IFILTER_H
|
||||
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef ILISTENER_H
|
||||
#define ILISTENER_H
|
||||
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef ILOGRECEIVER_H_INCLUDED
|
||||
#define ILOGRECEIVER_H_INCLUDED
|
||||
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef ILOGGER_H_INCLUDED
|
||||
#define ILOGGER_H_INCLUDED
|
||||
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef IREFCOUNTED_H
|
||||
#define IREFCOUNTED_H
|
||||
|
||||
|
|
|
@ -0,0 +1,47 @@
|
|||
/* cAudio.h -- interface of the 'cAudio Engine'
|
||||
|
||||
Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
|
||||
This software is provided 'as-is', without any express or implied
|
||||
warranty. In no event will the authors be held liable for any damages
|
||||
arising from the use of this software.
|
||||
|
||||
Permission is granted to anyone to use this software for any purpose,
|
||||
including commercial applications, and to alter it and redistribute it
|
||||
freely, subject to the following restrictions:
|
||||
|
||||
1. The origin of this software must not be misrepresented; you must not
|
||||
claim that you wrote the original software. If you use this software
|
||||
in a product, an acknowledgment in the product documentation would be
|
||||
appreciated but is not required.
|
||||
|
||||
2. Altered source versions must be plainly marked as such, and must not be
|
||||
misrepresented as being the original software.
|
||||
|
||||
3. This notice may not be removed or altered from any source
|
||||
distribution.
|
||||
|
||||
*/
|
||||
|
||||
#ifndef CAUDIO_H
|
||||
#define CAUDIO_H
|
||||
|
||||
#include "cAudioDefines.h"
|
||||
#include "cAudioSleep.h"
|
||||
#include "EAudioFormats.h"
|
||||
#include "IAudio.h"
|
||||
#include "IAudioCapture.h"
|
||||
#include "IAudioDecoder.h"
|
||||
#include "IAudioDecoderFactory.h"
|
||||
#include "IAudioEffects.h"
|
||||
#include "IAudioManager.h"
|
||||
#include "IDataSource.h"
|
||||
#include "IEffect.h"
|
||||
#include "IEffectParameters.h"
|
||||
#include "IFilter.h"
|
||||
#include "IListener.h"
|
||||
#include "ILogger.h"
|
||||
#include "ILogReceiver.h"
|
||||
#include "IRefCounted.h"
|
||||
|
||||
#endif
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef CAUDIODEFINES_H
|
||||
#define CAUDIODEFINES_H
|
||||
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef CAUDIOSLEEP_H
|
||||
#define CAUDIOSLEEP_H
|
||||
|
||||
|
@ -5,6 +9,9 @@
|
|||
|
||||
namespace cAudio
|
||||
{
|
||||
/*! Amount of time to sleep in milliseconds
|
||||
*\param ms: amount of miliseconds to sleep
|
||||
*/
|
||||
CAUDIO_API void cAudioSleep(unsigned int ms);
|
||||
};
|
||||
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
// Copyright (c) 2008-2010 Raynaldo (Wildicv) Rivera, Joshua (Dark_Kilauea) Jones
|
||||
// This file is part of the "cAudio Engine"
|
||||
// For conditions of distribution and use, see copyright notice in cAudio.h
|
||||
|
||||
#ifndef CVECTOR3_H
|
||||
#define CVECTOR3_H
|
||||
|
||||
|
|
Loading…
Reference in New Issue