Detecting frames in case the Picture Start Code or Access Unit Delimiter extends over TS packet boundaries is now done by locally skipping TS packets in cFrameDetector

This commit is contained in:
Klaus Schmidinger
2011-09-04 13:09:06 +02:00
parent 96061c5b40
commit 699fd6d5d7
3 changed files with 34 additions and 5 deletions

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 2.31 2011/09/04 09:09:33 kls Exp $
* $Id: remux.h 2.32 2011/09/04 12:48:26 kls Exp $
*/
#ifndef __REMUX_H
@@ -336,7 +336,7 @@ void PesDump(const char *Name, const u_char *Data, int Length);
// Frame detector:
#define MIN_TS_PACKETS_FOR_FRAME_DETECTOR 2
#define MIN_TS_PACKETS_FOR_FRAME_DETECTOR 5
class cFrameDetector {
private:
@@ -359,6 +359,7 @@ private:
int payloadUnitOfFrame;
bool scanning;
uint32_t scanner;
int SkipPackets(const uchar *&Data, int &Length, int &Processed, int &FrameTypeOffset);
public:
cFrameDetector(int Pid = 0, int Type = 0);
///< Sets up a frame detector for the given Pid and stream Type.