Added cRemux::SetTimeouts() for better use of cRemux in a single thread

This commit is contained in:
Klaus Schmidinger 2005-08-07 10:29:36 +02:00
parent e2bb5d3898
commit da0030deff
3 changed files with 10 additions and 1 deletions

View File

@ -1249,6 +1249,7 @@ Udo Richter <udo_richter@gmx.de>
several non selectable items in a row
for fixing handling 'page down' after it was broken in version 1.3.26
for suggesting a fix for an out-of-bounds memory access with audio language ids
for reporting a problem with cRemux in a single thread
Sven Kreiensen <svenk@kammer.uni-hannover.de>
for his help in keeping 'channels.conf.terr' up to date

View File

@ -3661,3 +3661,5 @@ Video Disk Recorder Revision History
Matthias Lenk for reporting, and Udo Richter for suggesting a fix).
- Updated the Finnish OSD texts (thanks to Rolf Ahrenberg).
- Added missing storing of the MenuScrollPage parameter (thanks to Frank Krömmelbein).
- Added cRemux::SetTimeouts() for better use of cRemux in a single thread (thanks
to Udo Richter for reporting a problem with this).

View File

@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: remux.h 1.13 2005/01/16 13:15:17 kls Exp $
* $Id: remux.h 1.14 2005/08/07 10:28:07 kls Exp $
*/
#ifndef __REMUX_H
@ -47,6 +47,12 @@ public:
///< PID). If ExitOnFailure is true, the remuxer will initiate an "emergency
///< exit" in case of problems with the data stream.
~cRemux();
void SetTimeouts(int PutTimeout, int GetTimeout) { resultBuffer->SetTimeouts(PutTimeout, GetTimeout); }
///< By default cRemux assumes that Put() and Get() are called from different
///< threads, and uses a timeout in the Get() function in case there is no
///< data available. SetTimeouts() can be used to modify these timeouts.
///< Especially if Put() and Get() are called from the same thread, setting
///< both timeouts to 0 is recommended.
int Put(const uchar *Data, int Count);
///< Puts at most Count bytes of Data into the remuxer.
///< \return Returns the number of bytes actually consumed from Data.