23#ifndef _MPEG2_TRANSPORT_STREAM_TRICK_MODE_FILTER_HH
24#define _MPEG2_TRANSPORT_STREAM_TRICK_MODE_FILTER_HH
26#ifndef _FRAMED_FILTER_HH
30#ifndef _MPEG2_TRANSPORT_STREAM_INDEX_FILE_HH
34#ifndef TRANSPORT_PACKET_SIZE
35#define TRANSPORT_PACKET_SIZE 188
44 Boolean seekTo(
unsigned long tsPacketNumber,
unsigned long indexRecordNumber);
68 unsigned numTruncatedBytes,
69 struct timeval presentationTime,
70 unsigned durationInMicroseconds);
#define TRANSPORT_PACKET_SIZE
FramedSource * fInputSource
FramedSource * inputSource() const
static void afterGettingFrame(void *clientData, unsigned frameSize, unsigned numTruncatedBytes, struct timeval presentationTime, unsigned durationInMicroseconds)
unsigned long fCurrentTSPacketNum
unsigned char fInputBuffer[TRANSPORT_PACKET_SIZE]
unsigned long fDesiredTSPacketNum
static void onSourceClosure(void *clientData)
unsigned long nextIndexRecordNum() const
void seekToTransportPacket(unsigned long tsPacketNum)
void afterGettingFrame1(unsigned frameSize)
void attemptDeliveryToClient()
MPEG2TransportStreamIndexFile * fIndexFile
unsigned long fNextTSPacketNum
MPEG2TransportStreamTrickModeFilter(UsageEnvironment &env, FramedSource *inputSource, MPEG2TransportStreamIndexFile *indexFile, int scale)
Boolean fUseSavedFrameNextTime
virtual void doStopGettingFrames()
u_int8_t fDesiredDataOffset
enum MPEG2TransportStreamTrickModeFilter::@3 fState
u_int8_t fDesiredDataSize
virtual void doGetNextFrame()
unsigned long fSavedFrameIndexRecordStart
virtual ~MPEG2TransportStreamTrickModeFilter()
@ SAVING_AND_DELIVERING_FRAME
unsigned long fNextIndexRecordNum
unsigned long fSavedSequentialIndexRecordNum
void readTransportPacket(unsigned long tsPacketNum)
static MPEG2TransportStreamTrickModeFilter * createNew(UsageEnvironment &env, FramedSource *inputSource, MPEG2TransportStreamIndexFile *indexFile, int scale)
Boolean seekTo(unsigned long tsPacketNumber, unsigned long indexRecordNumber)