Version 1.1.6

- Re-visited the race condition fix in the cDvbPlayer (thanks again to Andreas
  Schultz).
- Changed the VFAT handling to allow users who normally use it but have forgotten
  to set it when compiling a new version of VDR to at least see their recordings
  made with VFAT enabled (thanks to Christian Rienecker).
- Added some missing teletext PIDs (thanks to Joerg Riechardt).
- Fixed PID handling for cReceiver.
- Added a missing #include to ringbuffer.c (thanks to Martin Hammerschmid).
- Now using CC, CFLAGS, CXX and CXXFLAGS in Makefile.
- Changed the cDevice class to allow plugins to implement their own devices (see
  PLUGINS.html for details).
This commit is contained in:
Klaus Schmidinger
2002-08-04 18:00:00 +02:00
parent a4112a96a6
commit 527748826c
28 changed files with 1287 additions and 706 deletions

View File

@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: dvbplayer.c 1.7 2002/07/14 14:30:36 kls Exp $
* $Id: dvbplayer.c 1.8 2002/07/27 11:57:48 kls Exp $
*/
#include "dvbplayer.h"
@@ -90,6 +90,7 @@ private:
int replayFile;
bool eof;
bool active;
bool running;
ePlayModes playMode;
ePlayDirs playDir;
int trickSpeed;
@@ -133,6 +134,7 @@ cDvbPlayer::cDvbPlayer(const char *FileName)
index = NULL;
eof = false;
active = true;
running = false;
playMode = pmPlay;
playDir = pdForward;
trickSpeed = NORMAL_SPEED;
@@ -285,8 +287,9 @@ void cDvbPlayer::Activate(bool On)
Start();
}
else if (active) {
active = false;
running = false;
Cancel(3);
active = false;
}
}
@@ -308,7 +311,8 @@ void cDvbPlayer::Action(void)
if (readIndex >= 0)
isyslog("resuming replay at index %d (%s)", readIndex, IndexToHMSF(readIndex, true));
while (active && NextFile()) {
running = true;
while (running && NextFile()) {
pfd[1].fd = replayFile; // NextFile() may have returned a new file handle!
{
LOCK_THREAD;
@@ -414,9 +418,9 @@ void cDvbPlayer::Action(void)
break;
}
}
active = running = false;
dsyslog("dvbplayer thread ended (pid=%d)", getpid());
active = false;
}
void cDvbPlayer::Pause(void)