diff options
author | Klaus Schmidinger <kls (at) cadsoft (dot) de> | 2003-04-27 18:00:00 +0200 |
---|---|---|
committer | Klaus Schmidinger <kls (at) cadsoft (dot) de> | 2003-04-27 18:00:00 +0200 |
commit | 0686038af36be65b666bce669957c4d94c13f409 (patch) | |
tree | 50c5bc80b5f49e0bc14b6846f1f53794c5da6f65 /dvbplayer.c | |
parent | 21a52ccb6d43cce35f7a381f55ea291195416f33 (diff) | |
download | vdr-patch-lnbsharing-0686038af36be65b666bce669957c4d94c13f409.tar.gz vdr-patch-lnbsharing-0686038af36be65b666bce669957c4d94c13f409.tar.bz2 |
Version 1.1.29vdr-1.1.29
- Fixed detecting broken connection to the LIRC daemon (thanks to Ludwig Nussel).
- Now sending CA descriptors to the CAM in the same sequence as they were originally
received (thanks to Stefan Huelswitt).
- The PCR PID can now be set separately from the video PID. The syntax in the
'channels.conf' file is, for example, ...:164+17:..., where 164 is the video PID
and 17 is the PCR PID. The separator is a '+' sign, not a comma or semicolon as
with the audio PIDs, because this is not an alternate PID, but rather an
additional, necessary PID. In order to use this feature you need a driver version
dated 2003-04-27 or higher (setting the PCR PID didn't work in earlier versions).
- Fixed deleting the last recording in the "Recordings" menu, which started pausing
live video (thanks to Christoph Friederich for reporting this one).
- Now setting the "broken link" flag for GOPs at the beginning of a new video
sequence, which avoids artefacts when cutting (thanks to Stefan Huelswitt).
- Removed the Mute() call from cDvbDevice::StillPicture() (suggested by Andreas
Schultz).
- Updated 'channels.conf.terr' for Berlin (thanks to Andreas Brachold).
- Extended logging info when starting/stopping timers to show the channel number,
start/stop time and the file name (suggested by Manuel Hartl).
- Added a note regarding non-VDR files in the /videoX directories to INSTALL
(suggested by Benjamin Harling).
- Skipping keys that come in too fast from LIRC (thanks to Christian Jacobsen).
- Avoiding short display of the main menu if a plugin displays its own OSD and
is started through a user defined key macro (thanks to Andreas Mair for reporting
this one).
- Reduced the time to wait for EPG data when starting a recording to 3 seconds.
- The new SVDRP command STAT can be used to request information about the disk
usage (thanks to Thomas Koch).
- Fixed faulty calculation of section length in eit.c (thanks to Teemu Rantanen).
Diffstat (limited to 'dvbplayer.c')
-rw-r--r-- | dvbplayer.c | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/dvbplayer.c b/dvbplayer.c index f71c69c..afd4278 100644 --- a/dvbplayer.c +++ b/dvbplayer.c @@ -4,12 +4,13 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: dvbplayer.c 1.19 2003/03/30 12:51:51 kls Exp $ + * $Id: dvbplayer.c 1.20 2003/04/27 09:55:53 kls Exp $ */ #include "dvbplayer.h" #include <stdlib.h> #include "recording.h" +#include "remux.h" #include "ringbuffer.h" #include "thread.h" #include "tools.h" @@ -190,6 +191,7 @@ private: bool eof; bool active; bool running; + bool firstPacket; ePlayModes playMode; ePlayDirs playDir; int trickSpeed; @@ -197,7 +199,7 @@ private: bool canToggleAudioTrack; uchar audioTrack; cFrame *readFrame; - const cFrame *playFrame; + cFrame *playFrame; void TrickSpeed(int Increment); void Empty(void); void StripAudioPackets(uchar *b, int Length, uchar Except = 0x00); @@ -240,6 +242,7 @@ cDvbPlayer::cDvbPlayer(const char *FileName) eof = false; active = true; running = false; + firstPacket = true; playMode = pmPlay; playDir = pdForward; trickSpeed = NORMAL_SPEED; @@ -307,6 +310,7 @@ void cDvbPlayer::Empty(void) ringBuffer->Clear(); backTrace->Clear(); DeviceClear(); + firstPacket = true; } void cDvbPlayer::StripAudioPackets(uchar *b, int Length, uchar Except) @@ -403,7 +407,7 @@ void cDvbPlayer::Action(void) dsyslog("dvbplayer thread started (pid=%d)", getpid()); uchar *b = NULL; - const uchar *p = NULL; + uchar *p = NULL; int pc = 0; readIndex = Resume(); @@ -510,6 +514,10 @@ void cDvbPlayer::Action(void) if (!p) { p = playFrame->Data(); pc = playFrame->Count(); + if (firstPacket) { + cRemux::SetBrokenLink(p, pc); + firstPacket = false; + } } if (p) { int w = PlayVideo(p, pc); |