summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKlaus Schmidinger <vdr@tvdr.de>2005-02-13 14:38:08 +0100
committerKlaus Schmidinger <vdr@tvdr.de>2005-02-13 14:38:08 +0100
commit1594333047b3c24f61bdfe03b6e99ae64f5ac248 (patch)
tree5b46401abe8007c764e53dffd5c1972992594fac
parent9055f754ddda134e039e50c66e36802ee731c6db (diff)
downloadvdr-1594333047b3c24f61bdfe03b6e99ae64f5ac248.tar.gz
vdr-1594333047b3c24f61bdfe03b6e99ae64f5ac248.tar.bz2
Added missing reset of the 'repacker' to cTS2PES::Clear()1.3.21
-rw-r--r--CONTRIBUTORS1
-rw-r--r--HISTORY2
-rw-r--r--remux.c7
3 files changed, 8 insertions, 2 deletions
diff --git a/CONTRIBUTORS b/CONTRIBUTORS
index d35421a9..94258a46 100644
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -1146,6 +1146,7 @@ Marco Schlüßler <marco@lordzodiac.de>
this is now done when attaching the player to the device
for adding DeviceClrAvailableTracks() and DeviceSetCurrentAudioTrack() to cPlayer
for reporting a missing 'resultSkipped = 0' in cRemux::Clear()
+ for reporting a missing reset of the 'repacker' in cTS2PES::Clear()
Jürgen Schmitz <j.schmitz@web.de>
for reporting a bug in displaying the current channel when switching via the SVDRP
diff --git a/HISTORY b/HISTORY
index 0cbaf08e..9a873b81 100644
--- a/HISTORY
+++ b/HISTORY
@@ -3413,3 +3413,5 @@ Video Disk Recorder Revision History
- The new function cDvbDevice::SetTransferModeForDolbyDigital() can be used by
plugins that implement Dolby Digital output and thus want to prevent the cDvbDevice
from starting Transfer Mode in order to replay DD over the DVB device.
+- Added missing reset of the 'repacker' to cTS2PES::Clear() (thanks to Marco
+ Schlüßler for reporting this one).
diff --git a/remux.c b/remux.c
index dbed8fa8..ca65a61e 100644
--- a/remux.c
+++ b/remux.c
@@ -11,7 +11,7 @@
* The cDolbyRepacker code was originally written by Reinhard Nissl <rnissl@gmx.de>,
* and adapted to the VDR coding style by Klaus.Schmidinger@cadsoft.de.
*
- * $Id: remux.c 1.30 2005/02/13 10:23:10 kls Exp $
+ * $Id: remux.c 1.31 2005/02/13 14:36:23 kls Exp $
*/
#include "remux.h"
@@ -29,6 +29,7 @@ protected:
public:
cRepacker(void) { maxPacketSize = 6 + 65535; subStreamId = 0; }
virtual ~cRepacker() {}
+ virtual void Reset(void) {}
virtual int Put(cRingBufferLinear *ResultBuffer, const uchar *Data, int Count) = 0;
virtual int BreakAt(const uchar *Data, int Count) = 0;
void SetMaxPacketSize(int MaxPacketSize) { maxPacketSize = MaxPacketSize; }
@@ -56,13 +57,13 @@ private:
get_length,
output_packet
} state;
- void Reset(void);
void ResetPesHeader(void);
void AppendSubStreamID(void);
bool FinishRemainder(cRingBufferLinear *ResultBuffer, const uchar *const Data, const int Todo, int &Done, int &Bite);
bool StartNewPacket(cRingBufferLinear *ResultBuffer, const uchar *const Data, const int Todo, int &Done, int &Bite);
public:
cDolbyRepacker(void);
+ virtual void Reset(void);
virtual int Put(cRingBufferLinear *ResultBuffer, const uchar *Data, int Count);
virtual int BreakAt(const uchar *Data, int Count);
};
@@ -474,6 +475,8 @@ cTS2PES::~cTS2PES()
void cTS2PES::Clear(void)
{
reset_ipack();
+ if (repacker)
+ repacker->Reset();
}
void cTS2PES::store(uint8_t *Data, int Count)