* Forgot include files for irrklang in last commit
This commit is contained in:
parent
87b5a5f765
commit
1fede6d76c
@ -1,4 +1,4 @@
|
|||||||
// Copyright (C) 2002-2008 Nikolaus Gebhardt
|
// Copyright (C) 2002-2009 Nikolaus Gebhardt
|
||||||
// This file is part of the "irrKlang" library.
|
// This file is part of the "irrKlang" library.
|
||||||
// For conditions of distribution and use, see copyright notice in irrKlang.h
|
// For conditions of distribution and use, see copyright notice in irrKlang.h
|
||||||
|
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (C) 2002-2008 Nikolaus Gebhardt
|
// Copyright (C) 2002-2009 Nikolaus Gebhardt
|
||||||
// This file is part of the "irrKlang" library.
|
// This file is part of the "irrKlang" library.
|
||||||
// For conditions of distribution and use, see copyright notice in irrKlang.h
|
// For conditions of distribution and use, see copyright notice in irrKlang.h
|
||||||
|
|
||||||
@ -21,22 +21,25 @@ namespace irrklang
|
|||||||
ESOD_DIRECT_SOUND_8,
|
ESOD_DIRECT_SOUND_8,
|
||||||
|
|
||||||
//! DirectSound sound output driver, windows only.
|
//! DirectSound sound output driver, windows only.
|
||||||
/* This uses DirectSound 3 or above, if available. If DX8 sound effects
|
/** This uses DirectSound 3 or above, if available. If DX8 sound effects
|
||||||
are needed, use ESOD_DIRECT_SOUND_8 instead. The
|
are needed, use ESOD_DIRECT_SOUND_8 instead. The
|
||||||
ESOD_DIRECT_SOUND driver may be available on more and older windows
|
ESOD_DIRECT_SOUND driver may be available on more and older windows
|
||||||
versions than ESOD_DIRECT_SOUND_8.*/
|
versions than ESOD_DIRECT_SOUND_8.*/
|
||||||
ESOD_DIRECT_SOUND,
|
ESOD_DIRECT_SOUND,
|
||||||
|
|
||||||
//! WinMM sound output driver, windows only.
|
//! WinMM sound output driver, windows only.
|
||||||
|
/** Supports the ISoundMixedOutputReceiver interface using setMixedDataOutputReceiver. */
|
||||||
ESOD_WIN_MM,
|
ESOD_WIN_MM,
|
||||||
|
|
||||||
//! ALSA sound output driver, linux only.
|
//! ALSA sound output driver, linux only.
|
||||||
/* When using ESOD_ALSA in createIrrKlangDevice(), it is possible to set the third parameter,
|
/** When using ESOD_ALSA in createIrrKlangDevice(), it is possible to set the third parameter,
|
||||||
'deviceID' to the name of specific ALSA pcm device, to the irrKlang force to use this one.
|
'deviceID' to the name of specific ALSA pcm device, to the irrKlang force to use this one.
|
||||||
Set it to 'default', or 'plug:hw' or whatever you need it to be.*/
|
Set it to 'default', or 'plug:hw' or whatever you need it to be.
|
||||||
|
Supports the ISoundMixedOutputReceiver interface using setMixedDataOutputReceiver. */
|
||||||
ESOD_ALSA,
|
ESOD_ALSA,
|
||||||
|
|
||||||
//! Core Audio sound output driver, mac os only.
|
//! Core Audio sound output driver, mac os only.
|
||||||
|
/** Supports the ISoundMixedOutputReceiver interface using setMixedDataOutputReceiver. */
|
||||||
ESOD_CORE_AUDIO,
|
ESOD_CORE_AUDIO,
|
||||||
|
|
||||||
//! Null driver, creating no sound output
|
//! Null driver, creating no sound output
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (C) 2002-2008 Nikolaus Gebhardt
|
// Copyright (C) 2002-2009 Nikolaus Gebhardt
|
||||||
// This file is part of the "irrKlang" library.
|
// This file is part of the "irrKlang" library.
|
||||||
// For conditions of distribution and use, see copyright notice in irrKlang.h
|
// For conditions of distribution and use, see copyright notice in irrKlang.h
|
||||||
|
|
||||||
|
|||||||
@ -29,8 +29,11 @@ namespace irrklang
|
|||||||
buffer, use startRecordingCustomHandledAudio().
|
buffer, use startRecordingCustomHandledAudio().
|
||||||
\param sampleRate: Sample rate of the recorded audio.
|
\param sampleRate: Sample rate of the recorded audio.
|
||||||
\param sampleFormat: Sample format of the recorded audio.
|
\param sampleFormat: Sample format of the recorded audio.
|
||||||
|
\param channelCount: Amount of audio channels.
|
||||||
\return Returns true if successfully started recording and false if not.*/
|
\return Returns true if successfully started recording and false if not.*/
|
||||||
virtual bool startRecordingBufferedAudio(ik_s32 sampleRate=22000, ESampleFormat sampleFormat=ESF_S16) = 0;
|
virtual bool startRecordingBufferedAudio(ik_s32 sampleRate=22000,
|
||||||
|
ESampleFormat sampleFormat=ESF_S16,
|
||||||
|
ik_s32 channelCount=1) = 0;
|
||||||
|
|
||||||
//! Starts recording audio.
|
//! Starts recording audio.
|
||||||
/** Clears all possibly previously recorded buffered audio data and starts to record
|
/** Clears all possibly previously recorded buffered audio data and starts to record
|
||||||
@ -42,9 +45,12 @@ namespace irrklang
|
|||||||
captured audio data chunk.
|
captured audio data chunk.
|
||||||
\param sampleRate: Sample rate of the recorded audio.
|
\param sampleRate: Sample rate of the recorded audio.
|
||||||
\param sampleFormat: Sample format of the recorded audio.
|
\param sampleFormat: Sample format of the recorded audio.
|
||||||
|
\param channelCount: Amount of audio channels.
|
||||||
\return Returns true if successfully started recording and false if not. */
|
\return Returns true if successfully started recording and false if not. */
|
||||||
virtual bool startRecordingCustomHandledAudio(ICapturedAudioDataReceiver* receiver,
|
virtual bool startRecordingCustomHandledAudio(ICapturedAudioDataReceiver* receiver,
|
||||||
ik_s32 sampleRate=22000, ESampleFormat sampleFormat=ESF_S16) = 0;
|
ik_s32 sampleRate=22000,
|
||||||
|
ESampleFormat sampleFormat=ESF_S16,
|
||||||
|
ik_s32 channelCount=1) = 0;
|
||||||
|
|
||||||
//! Stops recording audio.
|
//! Stops recording audio.
|
||||||
virtual void stopRecordingAudio() = 0;
|
virtual void stopRecordingAudio() = 0;
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (C) 2002-2008 Nikolaus Gebhardt
|
// Copyright (C) 2002-2009 Nikolaus Gebhardt
|
||||||
// This file is part of the "irrKlang" library.
|
// This file is part of the "irrKlang" library.
|
||||||
// For conditions of distribution and use, see copyright notice in irrKlang.h
|
// For conditions of distribution and use, see copyright notice in irrKlang.h
|
||||||
|
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (C) 2002-2008 Nikolaus Gebhardt
|
// Copyright (C) 2002-2009 Nikolaus Gebhardt
|
||||||
// This file is part of the "irrKlang" library.
|
// This file is part of the "irrKlang" library.
|
||||||
// For conditions of distribution and use, see copyright notice in irrKlang.h
|
// For conditions of distribution and use, see copyright notice in irrKlang.h
|
||||||
|
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (C) 2002-2008 Nikolaus Gebhardt
|
// Copyright (C) 2002-2009 Nikolaus Gebhardt
|
||||||
// This file is part of the "irrKlang" library.
|
// This file is part of the "irrKlang" library.
|
||||||
// For conditions of distribution and use, see copyright notice in irrKlang.h
|
// For conditions of distribution and use, see copyright notice in irrKlang.h
|
||||||
|
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (C) 2002-2008 Nikolaus Gebhardt
|
// Copyright (C) 2002-2009 Nikolaus Gebhardt
|
||||||
// This file is part of the "irrKlang" library.
|
// This file is part of the "irrKlang" library.
|
||||||
// For conditions of distribution and use, see copyright notice in irrKlang.h
|
// For conditions of distribution and use, see copyright notice in irrKlang.h
|
||||||
|
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (C) 2002-2008 Nikolaus Gebhardt
|
// Copyright (C) 2002-2009 Nikolaus Gebhardt
|
||||||
// This file is part of the "irrKlang" library.
|
// This file is part of the "irrKlang" library.
|
||||||
// For conditions of distribution and use, see copyright notice in irrKlang.h
|
// For conditions of distribution and use, see copyright notice in irrKlang.h
|
||||||
|
|
||||||
@ -14,27 +14,29 @@ namespace irrklang
|
|||||||
It also is able to store a debug string for every instance of an object.
|
It also is able to store a debug string for every instance of an object.
|
||||||
Most objects of irrKlang are derived from IRefCounted, and so they are reference counted.
|
Most objects of irrKlang are derived from IRefCounted, and so they are reference counted.
|
||||||
|
|
||||||
When you create an object in irrKlang, calling a method
|
When you receive an object in irrKlang (for example an ISound using play2D() or
|
||||||
which starts with 'create', an object is created, and you get a pointer
|
play3D()), and you no longer need the object, you have
|
||||||
to the new object. If you no longer need the object, you have
|
|
||||||
to call drop(). This will destroy the object, if grab() was not called
|
to call drop(). This will destroy the object, if grab() was not called
|
||||||
in another part of you program, because this part still needs the object.
|
in another part of you program, because this part still needs the object.
|
||||||
Note, that you only need to call drop() to the object, if you created it,
|
Note, that you only don't need to call drop() for all objects you receive, it
|
||||||
and the method had a 'create' in it.
|
will be explicitely noted in the documentation.
|
||||||
|
|
||||||
A simple example:
|
A simple example:
|
||||||
|
|
||||||
If you want to create a texture, you may want to call an imaginable method
|
If you want to play a sound, you may want to call the method
|
||||||
IDriver::createTexture. You call
|
ISoundEngine::play2D. You call
|
||||||
ITexture* texture = driver->createTexture(128, 128);
|
ISound* mysound = engine->play2D("foobar.mp3", false, false true);
|
||||||
If you no longer need the texture, call texture->drop().
|
If you no longer need the sound interface, call mysound->drop(). The
|
||||||
|
sound may still play on after this because the engine still has a reference
|
||||||
|
to that sound, but you can be sure that it's memory will be released as soon
|
||||||
|
the sound is no longer used.
|
||||||
|
|
||||||
If you want to load a texture, you may want to call imaginable method
|
If you want to add a sound source, you may want to call a method
|
||||||
IDriver::loadTexture. You do this like
|
ISoundEngine::addSoundSourceFromFile. You do this like
|
||||||
ITexture* texture = driver->loadTexture("example.jpg");
|
ISoundSource* mysource = engine->addSoundSourceFromFile("example.jpg");
|
||||||
You will not have to drop the pointer to the loaded texture, because
|
You will not have to drop the pointer to the source, because
|
||||||
the name of the method does not start with 'create'. The texture
|
sound sources are managed by the engine (it will live as long as the sound engine) and
|
||||||
is stored somewhere by the driver.
|
the documentation says so.
|
||||||
*/
|
*/
|
||||||
class IRefCounted
|
class IRefCounted
|
||||||
{
|
{
|
||||||
@ -59,54 +61,40 @@ namespace irrklang
|
|||||||
//! with its methods grab() and drop(). Most objects of irrklang
|
//! with its methods grab() and drop(). Most objects of irrklang
|
||||||
//! are derived from IRefCounted, and so they are reference counted.
|
//! are derived from IRefCounted, and so they are reference counted.
|
||||||
//!
|
//!
|
||||||
//! When you create an object in irrKlang, calling a method
|
//! When you receive an object in irrKlang (for example an ISound using play2D() or
|
||||||
//! which starts with 'create', an object is created, and you get a pointer
|
//! play3D()), and you no longer need the object, you have
|
||||||
//! to the new object. If you no longer need the object, you have
|
|
||||||
//! to call drop(). This will destroy the object, if grab() was not called
|
//! to call drop(). This will destroy the object, if grab() was not called
|
||||||
//! in another part of you program, because this part still needs the object.
|
//! in another part of you program, because this part still needs the object.
|
||||||
//! Note, that you only need to call drop() to the object, if you created it,
|
//! Note, that you only don't need to call drop() for all objects you receive, it
|
||||||
//! and the method had a 'create' in it.
|
//! will be explicitely noted in the documentation.
|
||||||
//!
|
//!
|
||||||
//! A simple example:
|
//! A simple example:
|
||||||
//!
|
//!
|
||||||
//! If you want to create a texture, you may want to call an imaginable method
|
//! If you want to play a sound, you may want to call the method
|
||||||
//! IDriver::createTexture. You call
|
//! ISoundEngine::play2D. You call
|
||||||
//! ITexture* texture = driver->createTexture(128, 128);
|
//! ISound* mysound = engine->play2D("foobar.mp3", false, false true);
|
||||||
//! If you no longer need the texture, call texture->drop().
|
//! If you no longer need the sound interface, call mysound->drop(). The
|
||||||
//! If you want to load a texture, you may want to call imaginable method
|
//! sound may still play on after this because the engine still has a reference
|
||||||
//! IDriver::loadTexture. You do this like
|
//! to that sound, but you can be sure that it's memory will be released as soon
|
||||||
//! ITexture* texture = driver->loadTexture("example.jpg");
|
//! the sound is no longer used.
|
||||||
//! You will not have to drop the pointer to the loaded texture, because
|
|
||||||
//! the name of the method does not start with 'create'. The texture
|
|
||||||
//! is stored somewhere by the driver.
|
|
||||||
void grab() { ++ReferenceCounter; }
|
void grab() { ++ReferenceCounter; }
|
||||||
|
|
||||||
//! Drops the object. Decrements the reference counter by one.
|
//! When you receive an object in irrKlang (for example an ISound using play2D() or
|
||||||
//! Returns true, if the object was deleted.
|
//! play3D()), and you no longer need the object, you have
|
||||||
//! The IRefCounted class provides a basic reference counting mechanism
|
|
||||||
//! with its methods grab() and drop(). Most objects of irrKlang
|
|
||||||
//! Engine are derived from IRefCounted, and so they are reference counted.
|
|
||||||
//!
|
|
||||||
//! When you create an object in irrKlang, calling a method
|
|
||||||
//! which starts with 'create', an object is created, and you get a pointer
|
|
||||||
//! to the new object. If you no longer need the object, you have
|
|
||||||
//! to call drop(). This will destroy the object, if grab() was not called
|
//! to call drop(). This will destroy the object, if grab() was not called
|
||||||
//! in another part of you program, because this part still needs the object.
|
//! in another part of you program, because this part still needs the object.
|
||||||
//! Note, that you only need to call drop() to the object, if you created it,
|
//! Note, that you only don't need to call drop() for all objects you receive, it
|
||||||
//! and the method had a 'create' in it.
|
//! will be explicitely noted in the documentation.
|
||||||
//!
|
//!
|
||||||
//! A simple example:
|
//! A simple example:
|
||||||
//!
|
//!
|
||||||
//! If you want to create a texture, you may want to call an imaginable method
|
//! If you want to play a sound, you may want to call the method
|
||||||
//! IDriver::createTexture. You call
|
//! ISoundEngine::play2D. You call
|
||||||
//! ITexture* texture = driver->createTexture(128, 128);
|
//! ISound* mysound = engine->play2D("foobar.mp3", false, false true);
|
||||||
//! If you no longer need the texture, call texture->drop().
|
//! If you no longer need the sound interface, call mysound->drop(). The
|
||||||
//! If you want to load a texture, you may want to call imaginable method
|
//! sound may still play on after this because the engine still has a reference
|
||||||
//! IDriver::loadTexture. You do this like
|
//! to that sound, but you can be sure that it's memory will be released as soon
|
||||||
//! ITexture* texture = driver->loadTexture("example.jpg");
|
//! the sound is no longer used.
|
||||||
//! You will not have to drop the pointer to the loaded texture, because
|
|
||||||
//! the name of the method does not start with 'create'. The texture
|
|
||||||
//! is stored somewhere by the driver.
|
|
||||||
bool drop()
|
bool drop()
|
||||||
{
|
{
|
||||||
--ReferenceCounter;
|
--ReferenceCounter;
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (C) 2002-2008 Nikolaus Gebhardt
|
// Copyright (C) 2002-2009 Nikolaus Gebhardt
|
||||||
// This file is part of the "irrKlang" library.
|
// This file is part of the "irrKlang" library.
|
||||||
// For conditions of distribution and use, see copyright notice in irrKlang.h
|
// For conditions of distribution and use, see copyright notice in irrKlang.h
|
||||||
|
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (C) 2002-2008 Nikolaus Gebhardt
|
// Copyright (C) 2002-2009 Nikolaus Gebhardt
|
||||||
// This file is part of the "irrKlang" library.
|
// This file is part of the "irrKlang" library.
|
||||||
// For conditions of distribution and use, see copyright notice in irrKlang.h
|
// For conditions of distribution and use, see copyright notice in irrKlang.h
|
||||||
|
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (C) 2002-2008 Nikolaus Gebhardt
|
// Copyright (C) 2002-2009 Nikolaus Gebhardt
|
||||||
// This file is part of the "irrKlang" library.
|
// This file is part of the "irrKlang" library.
|
||||||
// For conditions of distribution and use, see copyright notice in irrKlang.h
|
// For conditions of distribution and use, see copyright notice in irrKlang.h
|
||||||
|
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (C) 2002-2008 Nikolaus Gebhardt
|
// Copyright (C) 2002-2009 Nikolaus Gebhardt
|
||||||
// This file is part of the "irrKlang" library.
|
// This file is part of the "irrKlang" library.
|
||||||
// For conditions of distribution and use, see copyright notice in irrKlang.h
|
// For conditions of distribution and use, see copyright notice in irrKlang.h
|
||||||
|
|
||||||
@ -11,11 +11,13 @@
|
|||||||
#include "ik_ISound.h"
|
#include "ik_ISound.h"
|
||||||
#include "ik_EStreamModes.h"
|
#include "ik_EStreamModes.h"
|
||||||
#include "ik_IFileFactory.h"
|
#include "ik_IFileFactory.h"
|
||||||
|
#include "ik_ISoundMixedOutputReceiver.h"
|
||||||
|
|
||||||
|
|
||||||
namespace irrklang
|
namespace irrklang
|
||||||
{
|
{
|
||||||
class IAudioStreamLoader;
|
class IAudioStreamLoader;
|
||||||
|
struct SInternalAudioInterface;
|
||||||
|
|
||||||
//! Interface to the sound engine, for playing 3d and 2d sound and music.
|
//! Interface to the sound engine, for playing 3d and 2d sound and music.
|
||||||
/** This is the main interface of irrKlang. You usually would create this using
|
/** This is the main interface of irrKlang. You usually would create this using
|
||||||
@ -199,7 +201,7 @@ namespace irrklang
|
|||||||
file format it is and might be able to start playback faster.
|
file format it is and might be able to start playback faster.
|
||||||
\param copyMemory If set to true which is default, the memory block is copied
|
\param copyMemory If set to true which is default, the memory block is copied
|
||||||
and stored in the engine, after calling addSoundSourceFromMemory() the memory pointer can be deleted
|
and stored in the engine, after calling addSoundSourceFromMemory() the memory pointer can be deleted
|
||||||
savely. If set to true, the memory is not copied and the user takes the responsibility that
|
savely. If set to false, the memory is not copied and the user takes the responsibility that
|
||||||
the memory block pointed to remains there as long as the sound engine or at least this sound
|
the memory block pointed to remains there as long as the sound engine or at least this sound
|
||||||
source exists.
|
source exists.
|
||||||
\return Returns the pointer to the added sound source or 0 if not sucessful because for
|
\return Returns the pointer to the added sound source or 0 if not sucessful because for
|
||||||
@ -386,9 +388,43 @@ namespace irrklang
|
|||||||
\return returns true if sucessful or fals if not, for example because the path could
|
\return returns true if sucessful or fals if not, for example because the path could
|
||||||
not be found. */
|
not be found. */
|
||||||
virtual bool loadPlugins(const ik_c8* path) = 0;
|
virtual bool loadPlugins(const ik_c8* path) = 0;
|
||||||
|
|
||||||
|
//! Returns a pointer to internal sound engine pointers, like the DirectSound interface.
|
||||||
|
/** Use this with caution. This is only exposed to make it possible for other libraries
|
||||||
|
such as Video playback packages to extend or use the sound driver irrklang uses. */
|
||||||
|
virtual const SInternalAudioInterface& getInternalAudioInterface() = 0;
|
||||||
|
|
||||||
|
//! Sets the OutputMixedDataReceiver, so you can receive the pure mixed output audio data while it is being played.
|
||||||
|
/** This can be used to store the sound output as .wav file or for creating a Oscillograph or similar.
|
||||||
|
This works only with software based audio drivers, that is ESOD_WIN_MM, ESOD_ALSA, and ESOD_CORE_AUDIO.
|
||||||
|
Returns true if sucessful and fals if the current audio driver doesn't support this feature. Set this to null
|
||||||
|
again once you don't need it anymore. */
|
||||||
|
virtual bool setMixedDataOutputReceiver(ISoundMixedOutputReceiver* receiver) = 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
//! structure for returning pointers to the internal audio interface.
|
||||||
|
/** Use ISoundEngine::getInternalAudioInterface() to get this. */
|
||||||
|
struct SInternalAudioInterface
|
||||||
|
{
|
||||||
|
//! IDirectSound interface, this is not null when using the ESOD_DIRECT_SOUND audio driver
|
||||||
|
void* pIDirectSound;
|
||||||
|
|
||||||
|
//! IDirectSound8 interface, this is not null when using the ESOD_DIRECT_SOUND8 audio driver
|
||||||
|
void* pIDirectSound8;
|
||||||
|
|
||||||
|
//! HWaveout interface, this is not null when using the ESOD_WIN_MM audio driver
|
||||||
|
void* pWinMM_HWaveOut;
|
||||||
|
|
||||||
|
//! ALSA PCM Handle interface, this is not null when using the ESOD_ALSA audio driver
|
||||||
|
void* pALSA_SND_PCM;
|
||||||
|
|
||||||
|
//! AudioDeviceID handle, this is not null when using the ESOD_CORE_AUDIO audio driver
|
||||||
|
ik_u32 pCoreAudioDeciceID;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
} // end namespace irrklang
|
} // end namespace irrklang
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (C) 2002-2008 Nikolaus Gebhardt
|
// Copyright (C) 2002-2009 Nikolaus Gebhardt
|
||||||
// This file is part of the "irrKlang" library.
|
// This file is part of the "irrKlang" library.
|
||||||
// For conditions of distribution and use, see copyright notice in irrKlang.h
|
// For conditions of distribution and use, see copyright notice in irrKlang.h
|
||||||
|
|
||||||
@ -146,7 +146,7 @@ namespace irrklang
|
|||||||
//! Returns the threshold size where irrKlang decides to force streaming a file independent of the user specified setting.
|
//! Returns the threshold size where irrKlang decides to force streaming a file independent of the user specified setting.
|
||||||
/** The value is specified in uncompressed bytes and its default value is
|
/** The value is specified in uncompressed bytes and its default value is
|
||||||
about one Megabyte. See setForcedStreamingThreshold() for details. */
|
about one Megabyte. See setForcedStreamingThreshold() for details. */
|
||||||
virtual ik_s32 getForcedStreamingForceThreshold() = 0;
|
virtual ik_s32 getForcedStreamingThreshold() = 0;
|
||||||
|
|
||||||
//! Returns a pointer to the loaded and decoded sample data.
|
//! Returns a pointer to the loaded and decoded sample data.
|
||||||
/** \return Returns a pointer to the sample data. The data is provided in decoded PCM data. The
|
/** \return Returns a pointer to the sample data. The data is provided in decoded PCM data. The
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (C) 2002-2008 Nikolaus Gebhardt
|
// Copyright (C) 2002-2009 Nikolaus Gebhardt
|
||||||
// This file is part of the "irrKlang" library.
|
// This file is part of the "irrKlang" library.
|
||||||
// For conditions of distribution and use, see copyright notice in irrKlang.h
|
// For conditions of distribution and use, see copyright notice in irrKlang.h
|
||||||
|
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (C) 2002-2008 Nikolaus Gebhardt
|
// Copyright (C) 2002-2009 Nikolaus Gebhardt
|
||||||
// This file is part of the "irrKlang" library.
|
// This file is part of the "irrKlang" library.
|
||||||
// For conditions of distribution and use, see copyright notice in irrKlang.h
|
// For conditions of distribution and use, see copyright notice in irrKlang.h
|
||||||
|
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (C) 2002-2008 Nikolaus Gebhardt
|
// Copyright (C) 2002-2009 Nikolaus Gebhardt
|
||||||
// This file is part of the "irrKlang" library.
|
// This file is part of the "irrKlang" library.
|
||||||
// For conditions of distribution and use, see copyright notice in irrKlang.h
|
// For conditions of distribution and use, see copyright notice in irrKlang.h
|
||||||
|
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (C) 2002-2008 Nikolaus Gebhardt
|
// Copyright (C) 2002-2009 Nikolaus Gebhardt
|
||||||
// This file is part of the "irrKlang" library.
|
// This file is part of the "irrKlang" library.
|
||||||
// For conditions of distribution and use, see copyright notice in irrKlang.h
|
// For conditions of distribution and use, see copyright notice in irrKlang.h
|
||||||
|
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
// Copyright (C) 2002-2008 Nikolaus Gebhardt
|
// Copyright (C) 2002-2009 Nikolaus Gebhardt
|
||||||
// This file is part of the "irrKlang" library.
|
// This file is part of the "irrKlang" library.
|
||||||
// For conditions of distribution and use, see copyright notice in irrKlang.h
|
// For conditions of distribution and use, see copyright notice in irrKlang.h
|
||||||
|
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
/* irrKlang.h -- interface of the 'irrKlang' library
|
/* irrKlang.h -- interface of the 'irrKlang' library
|
||||||
|
|
||||||
Copyright (C) 2002-2007 Nikolaus Gebhardt
|
Copyright (C) 2002-2009 Nikolaus Gebhardt
|
||||||
|
|
||||||
This software is provided 'as-is', without any express or implied
|
This software is provided 'as-is', without any express or implied
|
||||||
warranty. In no event will the authors be held liable for any damages
|
warranty. In no event will the authors be held liable for any damages
|
||||||
@ -31,11 +31,12 @@
|
|||||||
#include "ik_IFileReader.h"
|
#include "ik_IFileReader.h"
|
||||||
#include "ik_ISoundDeviceList.h"
|
#include "ik_ISoundDeviceList.h"
|
||||||
#include "ik_IAudioRecorder.h"
|
#include "ik_IAudioRecorder.h"
|
||||||
|
#include "ik_ISoundMixedOutputReceiver.h"
|
||||||
|
|
||||||
//! irrKlang Version
|
//! irrKlang Version
|
||||||
#define IRR_KLANG_VERSION "1.1.0"
|
#define IRR_KLANG_VERSION "1.3.0"
|
||||||
|
|
||||||
/*! \mainpage irrKlang 1.1.0 API documentation
|
/*! \mainpage irrKlang 1.3.0 API documentation
|
||||||
*
|
*
|
||||||
* <div align="center"><img src="logobig.png" ></div>
|
* <div align="center"><img src="logobig.png" ></div>
|
||||||
|
|
||||||
@ -44,6 +45,7 @@
|
|||||||
* @ref intro <br/>
|
* @ref intro <br/>
|
||||||
* @ref features <br/>
|
* @ref features <br/>
|
||||||
* @ref links <br/>
|
* @ref links <br/>
|
||||||
|
* @ref tipsandtricks <br/>
|
||||||
* <br/>
|
* <br/>
|
||||||
* Programming irrKlang:<br/>
|
* Programming irrKlang:<br/>
|
||||||
* @ref concept <br/>
|
* @ref concept <br/>
|
||||||
@ -97,6 +99,7 @@
|
|||||||
* <li>RIFF WAVE (*.wav)</li>
|
* <li>RIFF WAVE (*.wav)</li>
|
||||||
* <li>Ogg Vorbis (*.ogg)</li>
|
* <li>Ogg Vorbis (*.ogg)</li>
|
||||||
* <li>MPEG-1 Audio Layer 3 (*.mp3)</li>
|
* <li>MPEG-1 Audio Layer 3 (*.mp3)</li>
|
||||||
|
* <li>Free Lossless Audio Codec (*.flac)</li>
|
||||||
* <li>Amiga Modules (*.mod)</li>
|
* <li>Amiga Modules (*.mod)</li>
|
||||||
* <li>Impulse Tracker (*.it)</li>
|
* <li>Impulse Tracker (*.it)</li>
|
||||||
* <li>Scream Tracker 3 (*.s3d)</li>
|
* <li>Scream Tracker 3 (*.s3d)</li>
|
||||||
@ -104,7 +107,7 @@
|
|||||||
* </ul>
|
* </ul>
|
||||||
* It is also able to run on different operating systems and use several output drivers:
|
* It is also able to run on different operating systems and use several output drivers:
|
||||||
*<ul>
|
*<ul>
|
||||||
* <li>Windows 98, ME, NT 4, 2000, XP, Vista</li>
|
* <li>Windows 98, ME, NT 4, 2000, XP, Vista, Windows 7</li>
|
||||||
* <ul>
|
* <ul>
|
||||||
* <li>DirectSound</li>
|
* <li>DirectSound</li>
|
||||||
* <li>DirectSound8</li>
|
* <li>DirectSound8</li>
|
||||||
@ -135,6 +138,32 @@
|
|||||||
* <br/>
|
* <br/>
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
|
*
|
||||||
|
* \section tipsandtricks Tips and Tricks
|
||||||
|
*
|
||||||
|
* This section lists a few tips you might consider when implementing the sound part of your application
|
||||||
|
* using irrKlang:
|
||||||
|
*
|
||||||
|
* <ul>
|
||||||
|
* <li>If you can choose which audio file format is the primary one for your application,
|
||||||
|
* use .OGG files, instead of for example .MP3 files. irrKlang uses a lot less memory
|
||||||
|
* and CPU power when playing .OGGs.</li>
|
||||||
|
* <li>To keep your application simple, each time you play a sound, you can use for example
|
||||||
|
* play2D("filename.mp3") and let irrKlang handle the rest. There is no need to implement
|
||||||
|
* a preloading/caching/file management system for the audio playback. irrKlang will handle
|
||||||
|
* all this by itself and will never load a file twice. </li>
|
||||||
|
* <li>irrKlang is crashing in your application? This should not happen, irrKlang is pretty stable,
|
||||||
|
* and in most cases, this is a problem in your code: In a lot of cases the reason is simply
|
||||||
|
* a wrong call to irrklang::IRefCounted::drop(). Be sure you are doing it correctly. (If you are unsure,
|
||||||
|
* tempoarily remove all calls to irrklang::IRefCounted::drop() and see if this helps.)</li>
|
||||||
|
* </ul>
|
||||||
|
*
|
||||||
|
* <br/>
|
||||||
|
* <br/>
|
||||||
|
* <br/>
|
||||||
|
* <br/>
|
||||||
|
*
|
||||||
|
*
|
||||||
*
|
*
|
||||||
* \section concept Starting up the Engine
|
* \section concept Starting up the Engine
|
||||||
*
|
*
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user