summaryrefslogtreecommitdiff
path: root/orkaudio/audiofile/PcmFile.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'orkaudio/audiofile/PcmFile.cpp')
-rw-r--r--orkaudio/audiofile/PcmFile.cpp13
1 files changed, 12 insertions, 1 deletions
diff --git a/orkaudio/audiofile/PcmFile.cpp b/orkaudio/audiofile/PcmFile.cpp
index 0acfb3f..9d1a6d0 100644
--- a/orkaudio/audiofile/PcmFile.cpp
+++ b/orkaudio/audiofile/PcmFile.cpp
@@ -38,6 +38,15 @@ void PcmFile::Close()
void PcmFile::WriteChunk(AudioChunkRef chunkRef)
{
+ if(chunkRef.get() == NULL)
+ {
+ return;
+ }
+ if(chunkRef->GetDetails()->m_numBytes == 0)
+ {
+ return;
+ }
+
unsigned int numWritten = 0;
if (m_stream)
{
@@ -62,7 +71,9 @@ int PcmFile::ReadChunkMono(AudioChunkRef& chunkRef)
chunkRef.reset(new AudioChunk());
short temp[PCM_FILE_DEFAULT_CHUNK_NUM_SAMPLES];
numRead = ACE_OS::fread(temp, sizeof(short), PCM_FILE_DEFAULT_CHUNK_NUM_SAMPLES, m_stream);
- chunkRef->SetBuffer(temp, sizeof(short)*numRead, AudioChunk::PcmAudio, 0, 0, m_sampleRate);
+ AudioChunkDetails details;
+ details.m_encoding = PcmAudio;
+ chunkRef->SetBuffer(temp, sizeof(short)*numRead, details);
}
else
{