| Home | Namespaces | Hierarchy | Alphabetical List | Class list | Files | Namespace Members | Class members | File members |
00001 // Copyright (C) 2002-2008 Nikolaus Gebhardt 00002 // This file is part of the "irrKlang" library. 00003 // For conditions of distribution and use, see copyright notice in irrKlang.h 00004 00005 #ifndef __I_IRRKLANG_AUDIO_RECORDER_H_INCLUDED__ 00006 #define __I_IRRKLANG_AUDIO_RECORDER_H_INCLUDED__ 00007 00008 #include "ik_IRefCounted.h" 00009 #include "ik_ISoundSource.h" 00010 00011 00012 namespace irrklang 00013 { 00014 class ICapturedAudioDataReceiver; 00015 00017 00019 class IAudioRecorder : public virtual IRefCounted 00020 { 00021 public: 00022 00024 00033 virtual bool startRecordingBufferedAudio(ik_s32 sampleRate=22000, ESampleFormat sampleFormat=ESF_S16) = 0; 00034 00036 00046 virtual bool startRecordingCustomHandledAudio(ICapturedAudioDataReceiver* receiver, 00047 ik_s32 sampleRate=22000, ESampleFormat sampleFormat=ESF_S16) = 0; 00048 00050 virtual void stopRecordingAudio() = 0; 00051 00053 00058 virtual ISoundSource* addSoundSourceFromRecordedAudio(const char* soundName) = 0; 00059 00061 00062 virtual void clearRecordedAudioDataBuffer() = 0; 00063 00065 virtual bool isRecording() = 0; 00066 00068 00069 virtual SAudioStreamFormat getAudioFormat() = 0; 00070 00072 00078 virtual void* getRecordedAudioData() = 0; 00079 00081 00083 virtual const char* getDriverName() = 0; 00084 }; 00085 00086 00088 00089 class ICapturedAudioDataReceiver : public IRefCounted 00090 { 00091 public: 00092 00094 00097 virtual void OnReceiveAudioDataStreamChunk(unsigned char* audioData, unsigned long lengthInBytes) = 0; 00098 }; 00099 00100 00101 } // end namespace irrklang 00102 00103 00104 #endif
| The irrKlang
Engine Documentation © 2003-2007 by Nikolaus Gebhardt. Generated
on Sun Oct 12 13:44:49 2008 by Doxygen
(1.5.4) |