From 7e1d63dd9fd149e4934bf77095c8610fac786b04 Mon Sep 17 00:00:00 2001 From: Henri Herscher Date: Thu, 20 Oct 2005 13:40:58 +0000 Subject: First checkin git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@2 09dcff7a-b715-0410-9601-b79a96267cd0 --- orkaudio/audiofile/PcmFile.h | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 orkaudio/audiofile/PcmFile.h (limited to 'orkaudio/audiofile/PcmFile.h') diff --git a/orkaudio/audiofile/PcmFile.h b/orkaudio/audiofile/PcmFile.h new file mode 100644 index 0000000..91c1325 --- /dev/null +++ b/orkaudio/audiofile/PcmFile.h @@ -0,0 +1,41 @@ +/* + * Oreka -- A media capture and retrieval platform + * + * Copyright (C) 2005, orecx LLC + * + * http://www.orecx.com + * + * This program is free software, distributed under the terms of + * the GNU General Public License. + * Please refer to http://www.gnu.org/copyleft/gpl.html + * + */ + +#ifndef __PCMFILE_H__ +#define __PCMFILE_H__ + +#include "audiofile/AudioFile.h" + +#define PCM_FILE_DEFAULT_CHUNK_NUM_SAMPLES 8000 + +/** File class for raw 16 bit signed PCM output */ +class PcmFile : public AudioFile +{ +public: + PcmFile(); + ~PcmFile(); + + void Open(CStdString& filename, fileOpenModeEnum mode, bool stereo = false, int sampleRate = 8000); + void Close(); + + void WriteChunk(AudioChunkRef chunkRef); + int ReadChunkMono(AudioChunkRef& chunkRef); + + CStdString GetExtension(); +protected: + + FILE* m_stream; +}; + +#endif + -- cgit v1.2.3