mirror of
				https://github.com/vdr-projects/vdr.git
				synced 2025-03-01 10:50:46 +00:00 
			
		
		
		
	Added missing reset of the 'repacker' to cTS2PES::Clear()
This commit is contained in:
		@@ -1146,6 +1146,7 @@ Marco Schl
 | 
			
		||||
 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<EFBFBD>rgen Schmitz <j.schmitz@web.de>
 | 
			
		||||
 for reporting a bug in displaying the current channel when switching via the SVDRP
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										2
									
								
								HISTORY
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								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<68><6C>ler for reporting this one).
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										7
									
								
								remux.c
									
									
									
									
									
								
							
							
						
						
									
										7
									
								
								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)
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user