summaryrefslogtreecommitdiff
path: root/tsworker.c
diff options
context:
space:
mode:
authorzwer <zwer@1f4bef6d-8e0a-0410-8695-e467da8aaccf>2007-01-30 23:30:54 +0000
committerzwer <zwer@1f4bef6d-8e0a-0410-8695-e467da8aaccf>2007-01-30 23:30:54 +0000
commita4ccf016ce8427c0a3740219480517eaa1efb475 (patch)
tree40f2cc720f1245ab9a4269d800083d94601b4180 /tsworker.c
parent5c793cf184df0b195b84c3d152ea40c9efc9a1b4 (diff)
downloadvdr-plugin-ffnetdev-a4ccf016ce8427c0a3740219480517eaa1efb475.tar.gz
vdr-plugin-ffnetdev-a4ccf016ce8427c0a3740219480517eaa1efb475.tar.bz2
- ClientControl eingeführt
git-svn-id: svn://svn.berlios.de/ffnetdev/trunk@27 1f4bef6d-8e0a-0410-8695-e467da8aaccf
Diffstat (limited to 'tsworker.c')
-rw-r--r--tsworker.c19
1 files changed, 16 insertions, 3 deletions
diff --git a/tsworker.c b/tsworker.c
index 5440087..30b1701 100644
--- a/tsworker.c
+++ b/tsworker.c
@@ -172,18 +172,30 @@ void cTSWorker::ActionTCP(void) {
m_StreamClient->RemoteIp().c_str(), m_StreamClient->RemotePort());
}
else
- {
+ {
#ifdef DEBUG
fprintf(stderr, "[ffnetdev] Streamer: Error closing client socket.\n");
#endif
esyslog("[ffnetdev] Streamer: Error closing connection.");
m_Active=false;
continue;
- }
-
+ }
}
if ( select.CanWrite(*m_StreamClient) ) {
+
+ if (m_StreamDevice->GetPlayState() == psBufferReset)
+ {
+ cCondWait::SleepMs(10);
+ m_StreamDevice->SetPlayState(psBufferReseted);
+ }
+
+ if (m_StreamDevice->GetPlayState() == psBufferReseted)
+ {
+ cCondWait::SleepMs(10);
+ continue;
+ }
+
int count=0;
m_StreamDevice->LockOutput();
@@ -329,6 +341,7 @@ void cTSWorker::ActionUDP(void)
}
+
int count=0;
m_StreamDevice->LockOutput();