22#ifndef _MPEG2_TRANSPORT_FILE_SERVER_MEDIA_SUBSESSION_HH
23#define _MPEG2_TRANSPORT_FILE_SERVER_MEDIA_SUBSESSION_HH
25#ifndef _FILE_SERVER_MEDIA_SUBSESSION_HH
28#ifndef _MPEG2_TRANSPORT_STREAM_FRAMER_HH
31#ifndef _BYTE_STREAM_FILE_SOURCE_HH
34#ifndef _MPEG2_TRANSPORT_STREAM_TRICK_MODE_FILTER_HH
37#ifndef _MPEG2_TRANSPORT_STREAM_FROM_ES_SOURCE_HH
47 char const* dataFileName,
char const* indexFileName,
65 virtual void startStream(
unsigned clientSessionId,
void* streamToken,
67 void* rtcpRRHandlerClientData,
68 unsigned short& rtpSeqNum,
69 unsigned& rtpTimestamp,
71 void* serverRequestAlternativeByteHandlerClientData);
72 virtual void pauseStream(
unsigned clientSessionId,
void* streamToken);
73 virtual void seekStream(
unsigned clientSessionId,
void* streamToken,
double& seekNPT,
double streamDuration, u_int64_t& numBytes);
74 virtual void setStreamScale(
unsigned clientSessionId,
void* streamToken,
float scale);
75 virtual void deleteStream(
unsigned clientSessionId,
void*& streamToken);
79 unsigned& estBitrate);
81 unsigned char rtpPayloadTypeIfDynamic,
void ServerRequestAlternativeByteHandler(void *instance, u_int8_t requestByte)
void TaskFunc(void *clientData)
unsigned long fTSRecordNum
void reseekOriginalTransportStreamSource()
void updateStateOnScaleChange()
MPEG2TransportStreamTrickModeFilter * fTrickModeFilter
void setSource(MPEG2TransportStreamFramer *framer)
unsigned long updateStateFromNPT(double npt, double seekDuration)
unsigned long fIxRecordNum
void handleStreamDeletion()
void setNextScale(float nextScale)
ClientTrickPlayState(MPEG2TransportStreamIndexFile *indexFile)
MPEG2TransportStreamFramer * fFramer
void updateStateOnPlayChange(Boolean reverseToPreviousVSH)
MPEG2TransportStreamIndexFile * fIndexFile
Boolean areChangingScale() const
MPEG2TransportStreamFromESSource * fTrickPlaySource
ByteStreamFileSource * fOriginalTransportStreamSource