openalpp Namespace Reference

C++ wrapper for OpenAL with additional functionality of handling ogg-vorbis as streams. More...


Classes

class  AudioBase
class  AudioConvert
struct  _acAudioCVT
struct  Chunk
struct  MS_ADPCM_decodestate_FULL
struct  WaveFMT
struct  IMA_ADPCM_decodestate_s
struct  IMA_ADPCM_decoder
class  AudioEnvironment
class  Capture
class  DeviceUpdater
class  Error
class  FatalError
class  FileError
class  MemoryError
class  NameError
class  ValueError
class  InitError
class  Event
class  FileStream
class  FileStreamUpdater
class  GroupSource
class  InputDevice
class  Listener
class  NetStream
class  PositionedObject
class  Sample
class  SoundData
class  Source
class  SourceBase
class  Stream
class  StreamUpdater

Typedefs

typedef struct
openalpp::_acAudioCVT 
acAudioCVT
typedef struct openalpp::Chunk Chunk
typedef struct openalpp::WaveFMT alWaveFMT_LOKI
typedef struct
openalpp::IMA_ADPCM_decodestate_s 
alIMAADPCM_decodestate_LOKI
typedef struct
openalpp::IMA_ADPCM_decoder 
alIMAADPCM_state_LOKI

Enumerations

enum  SampleFormat { Mono8, Stereo8, Mono16, Stereo16 }
enum  DistanceModel { None, InverseDistance, InverseDistanceClamped }
enum  SourceState { Initial, Playing, Paused, Stopped }

Functions

const char * alGetErrorString (ALenum error)
OPENALPP_API std::ostream & operator<< (std::ostream &stream, const Error &error)
unsigned int sampleSize (SampleFormat format)
unsigned int sampleSize (ALenum format)


Detailed Description

C++ wrapper for OpenAL with additional functionality of handling ogg-vorbis as streams.

Class that implements event notification. One or more threads can signal a waiting event.

OsgAL - OpenSceneGraph Audio Library Copyright (C) 2004 VRlab, Umeå University

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. Namespace for OpenAL++.

OsgAL - OpenSceneGraph Audio Library Copyright (C) 2004 VRlab, Umeå University

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.

This class implements a feature available in Win32API. EventNotification. It can hold one thread waiting for a resource, one or more other threads can signal and release this event. A timeout can specify the amount of time that a thread should wait for this event to be signalled.


Typedef Documentation


Enumeration Type Documentation

Enum for setting/getting the current distance model. None means no model is in use, i.e. no attenuation.
InverseDistance:

  • $G=GAIN-20*log_{10}*(1+ROLLOFF*\frac{dist-REFERENCE\_DISTANCE}{REFERENCE\_DISTANCE})$
  • $G=min (G,MAX\_GAIN)$
  • $G=max (G,MIN\_GAIN)$

InverseDistanceClamped:

  • $dist=max (dist,REFERENCE\_DISTANCE)$
  • $dist=min (dist,MAX\_DISTANCE)$
  • And then the calculations in InverseDistance... This is equivalent to the <a href="http://www.iasig.org>IASIG I3DL2 distance model.

In the above calculations, the variables have the following meanings:

  • dist is the distance from the listener to the source.
  • REFERENCE_DISTANCE are the distance at which the listener will experience GAIN. Both are set per source.
  • ROLLOFF is a source specific factor of attenuation. If it's set to one, the InverseDistance model will describe a "physically correct" inverse square behaviour.
  • MIN_GAIN, MAX_GAIN and MAX_DISTANCE are values used for clamping gain and distance, respectively.
Enumerator:
None 
InverseDistance 
InverseDistanceClamped 

Format for sound data. Mono/Stereo, 8 or 16 bits.

Enumerator:
Mono8 
Stereo8 
Mono16 
Stereo16 

Enum for the different states of a source. When a source is created, it is in the Initial state. Rewind will return a source to this state. The other states should be obvious.

Enumerator:
Initial 
Playing 
Paused 
Stopped 


Function Documentation

const char* openalpp::alGetErrorString ( ALenum  error  ) 

OPENALPP_API std::ostream& openalpp::operator<< ( std::ostream &  stream,
const Error &  error 
)

Out stream operator. Used to print error messages to a stream (i.e. "cerr << error;").

Parameters:
stream is the stream to print to.
error is the error to print.
Returns:
the stream.

unsigned int openalpp::sampleSize ( ALenum  format  ) 

unsigned int openalpp::sampleSize ( SampleFormat  format  ) 

Check how large a sample is in the given format.


Generated on Sun Aug 24 13:41:34 2008 for osgAL by  doxygen 1.5.6