summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGELOG10
-rw-r--r--osdworker.c4
-rw-r--r--streamdevice.c15
3 files changed, 21 insertions, 8 deletions
diff --git a/CHANGELOG b/CHANGELOG
index d366286..c0bdf0e 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -23,3 +23,13 @@ Changelog
- fixed PES2TS remuxer: PES packets shorter than TS payload size(184 bytes) did not have the PUSI
(payload unit start indicator) flag set
- reworked PES2TS remuxer code and added a mutex to synchronize input ringbuffer access
+
+ 2006-02-19: ffnetdev-0.1.0
+ - optimize for DBOX2-Plugin VDR-Viewer https://developer.berlios.de/projects/vdrviewer/
+ - add VNC compression (RRE, Hextile)
+ - start learning remote if accept client, no more if start plugin
+ - added auto change primary DVB feature (enable/deisable in plugin settings)
+ - fixed several bugs
+
+ 2006-02-20: ffnetdev-0.1.1
+ - fixed buffer overflow bug \ No newline at end of file
diff --git a/osdworker.c b/osdworker.c
index f8f67cd..37c3037 100644
--- a/osdworker.c
+++ b/osdworker.c
@@ -431,14 +431,14 @@ void cOSDWorker::HandleClientRequests(cTBSelect *select)
case rfbEncodingCoRRE:
if (m_pEncoder == NULL)
{
- isyslog("[ffnetdev] VNC: ->CoRRE encoding(not supported).\n");
+ isyslog("[ffnetdev] VNC: ->CoRRE encoding(hav a bug).\n");
m_pEncoder = new vncEncodeCoRRE();
}
break;
case rfbEncodingHextile:
if (m_pEncoder == NULL)
{
- isyslog("[ffnetdev] VNC: ->Hextile encoding(not supported).\n");
+ isyslog("[ffnetdev] VNC: ->Hextile encoding.\n");
m_pEncoder = new vncEncodeHexT();
}
break;
diff --git a/streamdevice.c b/streamdevice.c
index 9c9aef1..5805043 100644
--- a/streamdevice.c
+++ b/streamdevice.c
@@ -114,7 +114,8 @@ bool cStreamDevice::Poll(cPoller &Poller, int TimeoutMs)
*/
int cStreamDevice::PlayAudio(const uchar *Data, int Length)
{
- if (cTSWorker::HaveStreamClient()) {
+ if (cTSWorker::HaveStreamClient())
+ {
while ((m_Remux->Free() < Length) && cTSWorker::HaveStreamClient())
cCondWait::SleepMs(1);
int result=m_Remux->Put(Data, Length);
@@ -132,8 +133,8 @@ int cStreamDevice::PlayAudio(const uchar *Data, int Length)
else
{
m_Remux->ClearInput();
- usleep(100000);
- return ( 0 );
+// usleep(10000);
+ return ( Length );
}
}
@@ -142,7 +143,9 @@ int cStreamDevice::PlayAudio(const uchar *Data, int Length)
*/
int cStreamDevice::PlayVideo(const uchar *Data, int Length)
{
- if (cTSWorker::HaveStreamClient()) {
+ if (cTSWorker::HaveStreamClient())
+ {
+
while ((m_Remux->Free() < Length) && cTSWorker::HaveStreamClient())
cCondWait::SleepMs(1);
int result=m_Remux->Put(Data, Length);
@@ -160,7 +163,7 @@ int cStreamDevice::PlayVideo(const uchar *Data, int Length)
else
{
m_Remux->ClearInput();
- usleep(100000);
- return ( 0 );
+// usleep(10000);
+ return ( Length );
}
}