23#ifndef _HLS_SEGMENTER_HH
24#define _HLS_SEGMENTER_HH
33 char const* segmentFileName,
double segmentDuration);
35 unsigned segmentationDuration,
char const* fileNamePrefix,
37 void* onEndOfSegmentClientData =
NULL);
51 unsigned numTruncatedBytes,
52 struct timeval presentationTime,
53 unsigned durationInMicroseconds);
55 unsigned numTruncatedBytes);
virtual void afterGettingFrame(unsigned frameSize, unsigned numTruncatedBytes)
unsigned fCurrentSegmentCounter
static void afterGettingFrame(void *clientData, unsigned frameSize, unsigned numTruncatedBytes, struct timeval presentationTime, unsigned durationInMicroseconds)
Boolean fHaveConfiguredUpstreamSource
void * fOnEndOfSegmentClientData
unsigned fSegmentationDuration
void ourEndOfSegmentHandler(double segmentDuration)
static void ourEndOfSegmentHandler(void *clientData, double segmentDuration)
void ourOnSourceClosure()
HLSSegmenter(UsageEnvironment &env, unsigned segmentationDuration, char const *fileNamePrefix, onEndOfSegmentFunc *onEndOfSegmentFunc, void *onEndOfSegmentClientData)
char const * fFileNamePrefix
void() onEndOfSegmentFunc(void *clientData, char const *segmentFileName, double segmentDuration)
Boolean openNextOutputSegment()
char * fOutputSegmentFileName
onEndOfSegmentFunc * fOnEndOfSegmentFunc
static HLSSegmenter * createNew(UsageEnvironment &env, unsigned segmentationDuration, char const *fileNamePrefix, onEndOfSegmentFunc *onEndOfSegmentFunc=NULL, void *onEndOfSegmentClientData=NULL)
virtual Boolean continuePlaying()
virtual Boolean sourceIsCompatibleWithUs(MediaSource &source)
static void ourOnSourceClosure(void *clientData)
unsigned char * fOutputFileBuffer