summaryrefslogtreecommitdiff
path: root/orkaudio/CapturePort.cpp
diff options
context:
space:
mode:
authorHenri Herscher <henri@oreka.org>2006-06-21 21:36:29 +0000
committerHenri Herscher <henri@oreka.org>2006-06-21 21:36:29 +0000
commitf88e28defeeae1284f716a877f10a4f7b486f360 (patch)
treee395ceb8c40da98a20e8cc27de540e048713d4c2 /orkaudio/CapturePort.cpp
parent2da3fde0f17f0df3ac54559badadefcc347126e5 (diff)
Added #pragma warning( disable: 4786 ) to a few files
git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@281 09dcff7a-b715-0410-9601-b79a96267cd0
Diffstat (limited to 'orkaudio/CapturePort.cpp')
-rw-r--r--orkaudio/CapturePort.cpp30
1 files changed, 30 insertions, 0 deletions
diff --git a/orkaudio/CapturePort.cpp b/orkaudio/CapturePort.cpp
index 0240841..d1f5727 100644
--- a/orkaudio/CapturePort.cpp
+++ b/orkaudio/CapturePort.cpp
@@ -27,6 +27,9 @@ CapturePort::CapturePort(CStdString& id)
m_vadUp = false;
m_capturing = false;
m_lastUpdated = 0;
+
+ FilterRef streamingSink = FilterRegistry::instance()->GetNewFilter(CStdString("LiveMonitoring"));
+ m_filters.push_back(streamingSink);
}
CStdString CapturePort::ToString()
@@ -40,9 +43,34 @@ CStdString CapturePort::GetId()
return m_id;
}
+void CapturePort::FilterAudioChunk(AudioChunkRef& chunkRef)
+{
+ // Iterate through all filters
+ std::list<FilterRef>::iterator it;
+ for(it = m_filters.begin(); it != m_filters.end(); it++)
+ {
+ FilterRef filter = *it;
+ filter->AudioChunkIn(chunkRef);
+ filter->AudioChunkOut(chunkRef);
+ }
+}
+
+void CapturePort::FilterCaptureEvent(CaptureEventRef& eventRef)
+{
+ // Iterate through all filters
+ std::list<FilterRef>::iterator it;
+ for(it = m_filters.begin(); it != m_filters.end(); it++)
+ {
+ FilterRef filter = *it;
+ filter->CaptureEventIn(eventRef);
+ filter->CaptureEventOut(eventRef);
+ }
+}
void CapturePort::AddAudioChunk(AudioChunkRef chunkRef)
{
+ FilterAudioChunk(chunkRef);
+
time_t now = time(NULL);
m_lastUpdated = now;
@@ -147,6 +175,8 @@ void CapturePort::AddAudioChunk(AudioChunkRef chunkRef)
void CapturePort::AddCaptureEvent(CaptureEventRef eventRef)
{
+ FilterCaptureEvent(eventRef);
+
m_lastUpdated = time(NULL);
AudioTapeRef audioTapeRef = m_audioTapeRef;