diff options
author | Henri Herscher <henri@oreka.org> | 2006-01-20 22:38:18 +0000 |
---|---|---|
committer | Henri Herscher <henri@oreka.org> | 2006-01-20 22:38:18 +0000 |
commit | e07f34274b8912f773993ed96624242115440a3b (patch) | |
tree | 6b2f35398ceb7ff5c6a5afc9991f9a3670cb3a27 /orkaudio/audiocaptureplugins/sounddevice | |
parent | 4ab4f3d3b2f0c3c51922eaeea49df162a9c892cd (diff) |
VoIP mixing and decoding does now happen in the batch processing thread instead of immediately. Additionally, the system now supports filter plugins such as codecs.
git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@120 09dcff7a-b715-0410-9601-b79a96267cd0
Diffstat (limited to 'orkaudio/audiocaptureplugins/sounddevice')
-rw-r--r-- | orkaudio/audiocaptureplugins/sounddevice/SoundDevice.cpp | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/orkaudio/audiocaptureplugins/sounddevice/SoundDevice.cpp b/orkaudio/audiocaptureplugins/sounddevice/SoundDevice.cpp index 5326152..db791ad 100644 --- a/orkaudio/audiocaptureplugins/sounddevice/SoundDevice.cpp +++ b/orkaudio/audiocaptureplugins/sounddevice/SoundDevice.cpp @@ -65,12 +65,20 @@ int portAudioCallBack(void *inputBuffer, void *outputBuffer, unsigned long frame leftBuffer[sampleId] = inputSamples[2*sampleId+1]; } AudioChunkRef chunkRef(new AudioChunk); - chunkRef->SetBuffer(rightBuffer, sizeof(short)*framesPerBuffer, AudioChunk::PcmAudio, 0, 0, DLLCONFIG.m_sampleRate); + AudioChunkDetails rightDetails; + rightDetails.m_encoding = PcmAudio; + rightDetails.m_sampleRate = DLLCONFIG.m_sampleRate; + rightDetails.m_channel = 1; + chunkRef->SetBuffer(rightBuffer, sizeof(short)*framesPerBuffer, rightDetails); portName.Format("port%d-%d", device->deviceID, 1); g_audioChunkCallBack(chunkRef, portName); chunkRef.reset(new AudioChunk); - chunkRef->SetBuffer(leftBuffer, sizeof(short)*framesPerBuffer, AudioChunk::PcmAudio, 0, 0, DLLCONFIG.m_sampleRate); + AudioChunkDetails leftDetails; + leftDetails.m_encoding = PcmAudio; + leftDetails.m_sampleRate = DLLCONFIG.m_sampleRate; + leftDetails.m_channel = 1; + chunkRef->SetBuffer(leftBuffer, sizeof(short)*framesPerBuffer, leftDetails); portName.Format("port%d-%d", device->deviceID, 2); g_audioChunkCallBack(chunkRef, portName); @@ -81,7 +89,11 @@ int portAudioCallBack(void *inputBuffer, void *outputBuffer, unsigned long frame { // mono AudioChunkRef chunkRef(new AudioChunk); - chunkRef->SetBuffer(inputSamples, sizeof(short)*framesPerBuffer, AudioChunk::PcmAudio, 0, 0, DLLCONFIG.m_sampleRate); + AudioChunkDetails details; + details.m_encoding = PcmAudio; + details.m_sampleRate = DLLCONFIG.m_sampleRate; + details.m_channel = 1; + chunkRef->SetBuffer(inputSamples, sizeof(short)*framesPerBuffer, details); portName.Format("port%d", device->deviceID); g_audioChunkCallBack(chunkRef, portName); } |