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/voip/Rtp.cpp | |
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/voip/Rtp.cpp')
-rw-r--r-- | orkaudio/audiocaptureplugins/voip/Rtp.cpp | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/orkaudio/audiocaptureplugins/voip/Rtp.cpp b/orkaudio/audiocaptureplugins/voip/Rtp.cpp index 23c236e..49d0815 100644 --- a/orkaudio/audiocaptureplugins/voip/Rtp.cpp +++ b/orkaudio/audiocaptureplugins/voip/Rtp.cpp @@ -36,6 +36,7 @@ void RtpPacketInfo::ToString(CStdString& string) string.Format("%s,%d %s,%d seq:%u ts:%u len:%d type:%x", sourceIp, m_sourcePort, destIp, m_destPort, m_seqNum, m_timestamp, m_payloadSize, m_payloadType); } +//============================================================================== RtpRingBuffer::RtpRingBuffer() { @@ -199,7 +200,9 @@ void RtpRingBuffer::CreateShipment(size_t silenceSize) size_t shortSize = stopPtr-m_readPtr; size_t byteSize = shortSize*2; AudioChunkRef chunk(new AudioChunk()); - chunk->SetBuffer((void*)m_readPtr, byteSize, AudioChunk::PcmAudio); + AudioChunkDetails details; + details.m_encoding = PcmAudio; + chunk->SetBuffer((void*)m_readPtr, byteSize, details); g_audioChunkCallBack(chunk, m_capturePort); m_shippedSamples += shortSize; m_readPtr = CircularPointerAddOffset(m_readPtr ,shortSize); @@ -216,7 +219,9 @@ void RtpRingBuffer::CreateShipment(size_t silenceSize) shortSize = wrappedStopPtr - m_buffer; byteSize = shortSize*2; chunk.reset(new AudioChunk()); - chunk->SetBuffer((void*)m_buffer, byteSize, AudioChunk::PcmAudio); + AudioChunkDetails details; + details.m_encoding = PcmAudio; + chunk->SetBuffer((void*)m_buffer, byteSize, details); g_audioChunkCallBack(chunk, m_capturePort); m_shippedSamples += shortSize; m_readPtr = CircularPointerAddOffset(m_readPtr ,shortSize); @@ -233,7 +238,9 @@ void RtpRingBuffer::CreateShipment(size_t silenceSize) if (silenceBuffer) { AudioChunkRef chunk(new AudioChunk()); - chunk->SetBuffer((void*)silenceBuffer, byteSize, AudioChunk::PcmAudio); + AudioChunkDetails details; + details.m_encoding = PcmAudio; + chunk->SetBuffer((void*)silenceBuffer, byteSize, details); g_audioChunkCallBack(chunk, m_capturePort); m_shippedSamples += silenceSize; m_readPtr = CircularPointerAddOffset(m_readPtr ,silenceSize); |