24#ifndef _MPEG2_TRANSPORT_STREAM_INDEX_FILE_HH
25#define _MPEG2_TRANSPORT_STREAM_INDEX_FILE_HH
31#define INDEX_RECORD_SIZE 11
36 char const* indexFileName);
44 unsigned long& indexRecordNumber);
50 float& pcr,
unsigned long& indexRecordNumber);
57 unsigned long& transportPacketNum, u_int8_t& offset,
58 u_int8_t& size,
float& pcr, u_int8_t& recordType);
#define INDEX_RECORD_SIZE
void lookupTSPacketNumFromNPT(float &npt, unsigned long &tsPacketNumber, unsigned long &indexRecordNumber)
void lookupPCRFromTSPacketNum(unsigned long &tsPacketNumber, Boolean reverseToPreviousCleanPoint, float &pcr, unsigned long &indexRecordNumber)
Boolean readOneIndexRecord(unsigned long indexRecordNum)
unsigned char fBuf[INDEX_RECORD_SIZE]
unsigned long fCurrentIndexRecordNum
unsigned long fNumIndexRecords
static MPEG2TransportStreamIndexFile * createNew(UsageEnvironment &env, char const *indexFileName)
float getPlayingDuration()
unsigned long tsPacketNumFromBuf()
void setMPEGVersionFromRecordType(u_int8_t recordType)
unsigned long fCachedTSPacketNumber
Boolean readIndexRecordValues(unsigned long indexRecordNum, unsigned long &transportPacketNum, u_int8_t &offset, u_int8_t &size, float &pcr, u_int8_t &recordType)
u_int8_t recordTypeFromBuf()
MPEG2TransportStreamIndexFile(UsageEnvironment &env, char const *indexFileName)
virtual ~MPEG2TransportStreamIndexFile()
Boolean seekToIndexRecord(unsigned long indexRecordNumber)
Boolean rewindToCleanPoint(unsigned long &ixFound)
Boolean readIndexRecord(unsigned long indexRecordNum)
unsigned long fCachedIndexRecordNumber