live
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Private Attributes
MPEG4VideoStreamDiscreteFramer Class Reference

#include <MPEG4VideoStreamDiscreteFramer.hh>

Inheritance diagram for MPEG4VideoStreamDiscreteFramer:
Inheritance graph
[legend]
Collaboration diagram for MPEG4VideoStreamDiscreteFramer:
Collaboration graph
[legend]

Public Types

typedef void( afterGettingFunc )(void *clientData, unsigned frameSize, unsigned numTruncatedBytes, struct timeval presentationTime, unsigned durationInMicroseconds)
 
typedef void( onCloseFunc )(void *clientData)
 

Public Member Functions

u_int8_t profile_and_level_indication () const
 
unsigned char * getConfigBytes (unsigned &numBytes) const
 
void setConfigInfo (u_int8_t profileAndLevelIndication, char const *configStr)
 
BooleanpictureEndMarker ()
 
void flushInput ()
 
FramedSourceinputSource () const
 
void reassignInputSource (FramedSource *newInputSource)
 
void detachInputSource ()
 
void getNextFrame (unsigned char *to, unsigned maxSize, afterGettingFunc *afterGettingFunc, void *afterGettingClientData, onCloseFunc *onCloseFunc, void *onCloseClientData)
 
void handleClosure ()
 
void stopGettingFrames ()
 
virtual unsigned maxFrameSize () const
 
Boolean isCurrentlyAwaitingData () const
 
virtual Boolean isRTPSource () const
 
virtual Boolean isMPEG1or2VideoStreamFramer () const
 
virtual Boolean isH264VideoStreamFramer () const
 
virtual Boolean isH265VideoStreamFramer () const
 
virtual Boolean isDVVideoStreamFramer () const
 
virtual Boolean isJPEGVideoSource () const
 
virtual Boolean isAMRAudioSource () const
 
UsageEnvironmentenvir () const
 
char const * name () const
 
virtual Boolean isSink () const
 
virtual Boolean isRTCPInstance () const
 
virtual Boolean isRTSPClient () const
 
virtual Boolean isRTSPServer () const
 
virtual Boolean isMediaSession () const
 
virtual Boolean isServerMediaSession () const
 

Static Public Member Functions

static
MPEG4VideoStreamDiscreteFramer
createNew (UsageEnvironment &env, FramedSource *inputSource, Boolean leavePresentationTimesUnmodified=False)
 
static MPEG4VideoStreamFramercreateNew (UsageEnvironment &env, FramedSource *inputSource)
 
static Boolean lookupByName (UsageEnvironment &env, char const *sourceName, FramedSource *&resultSource)
 
static Boolean lookupByName (UsageEnvironment &env, char const *sourceName, MediaSource *&resultSource)
 
static Boolean lookupByName (UsageEnvironment &env, char const *mediumName, Medium *&resultMedium)
 
static void handleClosure (void *clientData)
 
static void afterGetting (FramedSource *source)
 
static void close (UsageEnvironment &env, char const *mediumName)
 
static void close (Medium *medium)
 

Protected Member Functions

 MPEG4VideoStreamDiscreteFramer (UsageEnvironment &env, FramedSource *inputSource, Boolean leavePresentationTimesUnmodified)
 
virtual ~MPEG4VideoStreamDiscreteFramer ()
 
virtual void doGetNextFrame ()
 
void afterGettingFrame1 (unsigned frameSize, unsigned numTruncatedBytes, struct timeval presentationTime, unsigned durationInMicroseconds)
 
Boolean getNextFrameBit (u_int8_t &result)
 
Boolean getNextFrameBits (unsigned numBits, u_int32_t &result)
 
void analyzeVOLHeader ()
 
void startNewConfig ()
 
void appendToNewConfig (unsigned char *newConfigBytes, unsigned numNewBytes)
 
void completeNewConfig ()
 
void computePresentationTime (unsigned numAdditionalPictures)
 
void setTimeCode (unsigned hours, unsigned minutes, unsigned seconds, unsigned pictures, unsigned picturesSinceLastGOP)
 
virtual char const * MIMEtype () const
 
virtual void getAttributes () const
 
TaskTokennextTask ()
 

Static Protected Member Functions

static void afterGettingFrame (void *clientData, unsigned frameSize, unsigned numTruncatedBytes, struct timeval presentationTime, unsigned durationInMicroseconds)
 

Protected Attributes

Boolean fLeavePresentationTimesUnmodified
 
u_int32_t vop_time_increment_resolution
 
unsigned fNumVTIRBits
 
struct timeval fLastNonBFramePresentationTime
 
unsigned fLastNonBFrameVop_time_increment
 
u_int8_t fProfileAndLevelIndication
 
unsigned char * fConfigBytes
 
unsigned fNumConfigBytes
 
double fFrameRate
 
unsigned fPictureCount
 
Boolean fPictureEndMarker
 
struct timeval fPresentationTimeBase
 
class MPEGVideoStreamParserfParser
 
FramedSourcefInputSource
 
unsigned char * fTo
 
unsigned fMaxSize
 
unsigned fFrameSize
 
unsigned fNumTruncatedBytes
 
struct timeval fPresentationTime
 
unsigned fDurationInMicroseconds
 

Private Attributes

unsigned fNumBitsSeenSoFar
 

Detailed Description

Definition at line 31 of file MPEG4VideoStreamDiscreteFramer.hh.

Member Typedef Documentation

typedef void( FramedSource::afterGettingFunc)(void *clientData, unsigned frameSize, unsigned numTruncatedBytes, struct timeval presentationTime, unsigned durationInMicroseconds)
inherited

Definition at line 36 of file FramedSource.hh.

typedef void( FramedSource::onCloseFunc)(void *clientData)
inherited

Definition at line 40 of file FramedSource.hh.

Constructor & Destructor Documentation

MPEG4VideoStreamDiscreteFramer::MPEG4VideoStreamDiscreteFramer ( UsageEnvironment env,
FramedSource inputSource,
Boolean  leavePresentationTimesUnmodified 
)
protected
virtual MPEG4VideoStreamDiscreteFramer::~MPEG4VideoStreamDiscreteFramer ( )
protectedvirtual

Member Function Documentation

static void FramedSource::afterGetting ( FramedSource source)
staticinherited
static void MPEG4VideoStreamDiscreteFramer::afterGettingFrame ( void *  clientData,
unsigned  frameSize,
unsigned  numTruncatedBytes,
struct timeval  presentationTime,
unsigned  durationInMicroseconds 
)
staticprotected
void MPEG4VideoStreamDiscreteFramer::afterGettingFrame1 ( unsigned  frameSize,
unsigned  numTruncatedBytes,
struct timeval  presentationTime,
unsigned  durationInMicroseconds 
)
protected
void MPEG4VideoStreamDiscreteFramer::analyzeVOLHeader ( )
protected
void MPEG4VideoStreamFramer::appendToNewConfig ( unsigned char *  newConfigBytes,
unsigned  numNewBytes 
)
protectedinherited
static void Medium::close ( UsageEnvironment env,
char const *  mediumName 
)
staticinherited
static void Medium::close ( Medium medium)
staticinherited
void MPEG4VideoStreamFramer::completeNewConfig ( )
protectedinherited
void MPEGVideoStreamFramer::computePresentationTime ( unsigned  numAdditionalPictures)
protectedinherited
static MPEG4VideoStreamDiscreteFramer* MPEG4VideoStreamDiscreteFramer::createNew ( UsageEnvironment env,
FramedSource inputSource,
Boolean  leavePresentationTimesUnmodified = False 
)
static
static MPEG4VideoStreamFramer* MPEG4VideoStreamFramer::createNew ( UsageEnvironment env,
FramedSource inputSource 
)
staticinherited
void FramedFilter::detachInputSource ( )
inherited
virtual void MPEG4VideoStreamDiscreteFramer::doGetNextFrame ( )
protectedvirtual

Reimplemented from MPEGVideoStreamFramer.

UsageEnvironment& Medium::envir ( ) const
inlineinherited
void MPEGVideoStreamFramer::flushInput ( )
inherited
virtual void FramedFilter::getAttributes ( ) const
protectedvirtualinherited

Reimplemented from MediaSource.

Reimplemented in MP3ADUTranscoder.

unsigned char* MPEG4VideoStreamFramer::getConfigBytes ( unsigned &  numBytes) const
inherited
void FramedSource::getNextFrame ( unsigned char *  to,
unsigned  maxSize,
afterGettingFunc afterGettingFunc,
void *  afterGettingClientData,
onCloseFunc onCloseFunc,
void *  onCloseClientData 
)
inherited
Boolean MPEG4VideoStreamDiscreteFramer::getNextFrameBit ( u_int8_t &  result)
protected
Boolean MPEG4VideoStreamDiscreteFramer::getNextFrameBits ( unsigned  numBits,
u_int32_t &  result 
)
protected
static void FramedSource::handleClosure ( void *  clientData)
staticinherited
void FramedSource::handleClosure ( )
inherited
FramedSource* FramedFilter::inputSource ( ) const
inlineinherited

Definition at line 30 of file FramedFilter.hh.

References FramedFilter::fInputSource.

30 { return fInputSource; }
FramedSource * fInputSource
Definition: FramedFilter.hh:49
virtual Boolean MediaSource::isAMRAudioSource ( ) const
virtualinherited

Reimplemented in AMRAudioSource.

Boolean FramedSource::isCurrentlyAwaitingData ( ) const
inlineinherited

Definition at line 61 of file FramedSource.hh.

References FramedSource::fIsCurrentlyAwaitingData.

Boolean fIsCurrentlyAwaitingData
Definition: FramedSource.hh:92
virtual Boolean MediaSource::isDVVideoStreamFramer ( ) const
virtualinherited

Reimplemented in DVVideoStreamFramer.

virtual Boolean MediaSource::isH264VideoStreamFramer ( ) const
virtualinherited
virtual Boolean MediaSource::isH265VideoStreamFramer ( ) const
virtualinherited
virtual Boolean MediaSource::isJPEGVideoSource ( ) const
virtualinherited

Reimplemented in JPEGVideoSource.

virtual Boolean Medium::isMediaSession ( ) const
virtualinherited

Reimplemented in MediaSession.

virtual Boolean MediaSource::isMPEG1or2VideoStreamFramer ( ) const
virtualinherited

Reimplemented in MPEG1or2VideoStreamFramer.

virtual Boolean Medium::isRTCPInstance ( ) const
virtualinherited

Reimplemented in RTCPInstance.

virtual Boolean MediaSource::isRTPSource ( ) const
virtualinherited

Reimplemented in RTPSource.

virtual Boolean Medium::isRTSPClient ( ) const
virtualinherited

Reimplemented in RTSPClient.

virtual Boolean Medium::isRTSPServer ( ) const
virtualinherited

Reimplemented in RTSPServer.

virtual Boolean Medium::isServerMediaSession ( ) const
virtualinherited

Reimplemented in ServerMediaSession.

virtual Boolean Medium::isSink ( ) const
virtualinherited

Reimplemented in MediaSink.

static Boolean MediaSource::lookupByName ( UsageEnvironment env,
char const *  sourceName,
MediaSource *&  resultSource 
)
staticinherited
static Boolean FramedSource::lookupByName ( UsageEnvironment env,
char const *  sourceName,
FramedSource *&  resultSource 
)
staticinherited
static Boolean Medium::lookupByName ( UsageEnvironment env,
char const *  mediumName,
Medium *&  resultMedium 
)
staticinherited
virtual unsigned FramedSource::maxFrameSize ( ) const
virtualinherited
virtual char const* FramedFilter::MIMEtype ( ) const
protectedvirtualinherited

Reimplemented from MediaSource.

Reimplemented in MP3FromADUSource, and ADUFromMP3Source.

char const* Medium::name ( ) const
inlineinherited

Definition at line 61 of file Media.hh.

References Medium::fMediumName.

61 {return fMediumName;}
char fMediumName[mediumNameMaxLen]
Definition: Media.hh:83
TaskToken& Medium::nextTask ( )
inlineprotectedinherited

Definition at line 77 of file Media.hh.

References Medium::fNextTask.

77  {
78  return fNextTask;
79  }
TaskToken fNextTask
Definition: Media.hh:84
Boolean& MPEGVideoStreamFramer::pictureEndMarker ( )
inlineinherited
u_int8_t MPEG4VideoStreamFramer::profile_and_level_indication ( ) const
inlineinherited
void FramedFilter::reassignInputSource ( FramedSource newInputSource)
inlineinherited

Definition at line 32 of file FramedFilter.hh.

References FramedFilter::fInputSource.

32 { fInputSource = newInputSource; }
FramedSource * fInputSource
Definition: FramedFilter.hh:49
void MPEG4VideoStreamFramer::setConfigInfo ( u_int8_t  profileAndLevelIndication,
char const *  configStr 
)
inherited
void MPEGVideoStreamFramer::setTimeCode ( unsigned  hours,
unsigned  minutes,
unsigned  seconds,
unsigned  pictures,
unsigned  picturesSinceLastGOP 
)
protectedinherited
void MPEG4VideoStreamFramer::startNewConfig ( )
protectedinherited
void FramedSource::stopGettingFrames ( )
inherited

Field Documentation

unsigned char* MPEG4VideoStreamFramer::fConfigBytes
protectedinherited

Definition at line 66 of file MPEG4VideoStreamFramer.hh.

unsigned FramedSource::fDurationInMicroseconds
protectedinherited
double MPEGVideoStreamFramer::fFrameRate
protectedinherited

Definition at line 68 of file MPEGVideoStreamFramer.hh.

unsigned FramedSource::fFrameSize
protectedinherited

Definition at line 77 of file FramedSource.hh.

Referenced by OggDemuxedTrack::frameSize(), and MatroskaDemuxedTrack::frameSize().

FramedSource* FramedFilter::fInputSource
protectedinherited
struct timeval MPEG4VideoStreamDiscreteFramer::fLastNonBFramePresentationTime
protected

Definition at line 66 of file MPEG4VideoStreamDiscreteFramer.hh.

unsigned MPEG4VideoStreamDiscreteFramer::fLastNonBFrameVop_time_increment
protected

Definition at line 67 of file MPEG4VideoStreamDiscreteFramer.hh.

Boolean MPEG4VideoStreamDiscreteFramer::fLeavePresentationTimesUnmodified
protected

Definition at line 62 of file MPEG4VideoStreamDiscreteFramer.hh.

unsigned FramedSource::fMaxSize
protectedinherited

Definition at line 76 of file FramedSource.hh.

Referenced by OggDemuxedTrack::maxSize(), and MatroskaDemuxedTrack::maxSize().

unsigned MPEG4VideoStreamDiscreteFramer::fNumBitsSeenSoFar
private

Definition at line 70 of file MPEG4VideoStreamDiscreteFramer.hh.

unsigned MPEG4VideoStreamFramer::fNumConfigBytes
protectedinherited

Definition at line 67 of file MPEG4VideoStreamFramer.hh.

unsigned FramedSource::fNumTruncatedBytes
protectedinherited
unsigned MPEG4VideoStreamDiscreteFramer::fNumVTIRBits
protected

Definition at line 64 of file MPEG4VideoStreamDiscreteFramer.hh.

class MPEGVideoStreamParser* MPEGVideoStreamFramer::fParser
protectedinherited

Definition at line 74 of file MPEGVideoStreamFramer.hh.

unsigned MPEGVideoStreamFramer::fPictureCount
protectedinherited

Definition at line 69 of file MPEGVideoStreamFramer.hh.

Boolean MPEGVideoStreamFramer::fPictureEndMarker
protectedinherited

Definition at line 70 of file MPEGVideoStreamFramer.hh.

Referenced by MPEGVideoStreamFramer::pictureEndMarker().

struct timeval FramedSource::fPresentationTime
protectedinherited
struct timeval MPEGVideoStreamFramer::fPresentationTimeBase
protectedinherited

Definition at line 71 of file MPEGVideoStreamFramer.hh.

u_int8_t MPEG4VideoStreamFramer::fProfileAndLevelIndication
protectedinherited
unsigned char* FramedSource::fTo
protectedinherited

Definition at line 75 of file FramedSource.hh.

Referenced by OggDemuxedTrack::to(), and MatroskaDemuxedTrack::to().

u_int32_t MPEG4VideoStreamDiscreteFramer::vop_time_increment_resolution
protected

Definition at line 63 of file MPEG4VideoStreamDiscreteFramer.hh.


The documentation for this class was generated from the following file: