live
MPEG1or2Demux Class Reference

#include <MPEG1or2Demux.hh>

Inheritance diagram for MPEG1or2Demux:
Collaboration diagram for MPEG1or2Demux:

Data Structures

class  SCR
struct  OutputDescriptor

Public Member Functions

MPEG1or2DemuxedElementaryStreamnewElementaryStream (u_int8_t streamIdTag)
MPEG1or2DemuxedElementaryStreamnewAudioStream ()
MPEG1or2DemuxedElementaryStreamnewVideoStream ()
MPEG1or2DemuxedElementaryStreamnewRawPESStream ()
void getNextFrame (u_int8_t streamIdTag, unsigned char *to, unsigned maxSize, FramedSource::afterGettingFunc *afterGettingFunc, void *afterGettingClientData, FramedSource::onCloseFunc *onCloseFunc, void *onCloseClientData)
void stopGettingFrames (u_int8_t streamIdTag)
FramedSourceinputSource () const
SCRlastSeenSCR ()
unsigned char mpegVersion () const
void flushInput ()
UsageEnvironmentenvir () const
char const * name () const
virtual Boolean isSource () 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 MPEG1or2DemuxcreateNew (UsageEnvironment &env, FramedSource *inputSource, Boolean reclaimWhenLastESDies=False, MPEG1or2DemuxOnDeletionFunc *onDeletionFunc=NULL, void *objectToNotify=NULL)
static void handleClosure (void *clientData)
static Boolean lookupByName (UsageEnvironment &env, char const *mediumName, Medium *&resultMedium)
static void close (UsageEnvironment &env, char const *mediumName)
static void close (Medium *medium)

Protected Member Functions

TaskTokennextTask ()

Private Types

typedef struct MPEG1or2Demux::OutputDescriptor OutputDescriptor_t

Private Member Functions

 MPEG1or2Demux (UsageEnvironment &env, FramedSource *inputSource, Boolean reclaimWhenLastESDies, MPEG1or2DemuxOnDeletionFunc *onDeletionFunc, void *objectToNotify)
virtual ~MPEG1or2Demux ()
void registerReadInterest (u_int8_t streamIdTag, unsigned char *to, unsigned maxSize, FramedSource::afterGettingFunc *afterGettingFunc, void *afterGettingClientData, FramedSource::onCloseFunc *onCloseFunc, void *onCloseClientData)
Boolean useSavedData (u_int8_t streamIdTag, unsigned char *to, unsigned maxSize, FramedSource::afterGettingFunc *afterGettingFunc, void *afterGettingClientData)
void continueReadProcessing ()
void noteElementaryStreamDeletion (MPEG1or2DemuxedElementaryStream *es)

Static Private Member Functions

static void continueReadProcessing (void *clientData, unsigned char *ptr, unsigned size, struct timeval presentationTime)

Private Attributes

FramedSourcefInputSource
SCR fLastSeenSCR
unsigned char fMPEGversion
unsigned char fNextAudioStreamNumber
unsigned char fNextVideoStreamNumber
Boolean fReclaimWhenLastESDies
unsigned fNumOutstandingESs
OutputDescriptor_t fOutput [256]
unsigned fNumPendingReads
Boolean fHaveUndeliveredData
MPEG1or2DemuxOnDeletionFuncfOnDeletionFunc
void * fOnDeletionObjectToNotify
class MPEGProgramStreamParserfParser
UsageEnvironmentfEnviron
char fMediumName [mediumNameMaxLen]
TaskToken fNextTask

Friends

class MPEG1or2DemuxedElementaryStream
class MPEGProgramStreamParser

Detailed Description

Definition at line 32 of file MPEG1or2Demux.hh.

Member Typedef Documentation

◆ OutputDescriptor_t

Constructor & Destructor Documentation

◆ MPEG1or2Demux()

MPEG1or2Demux::MPEG1or2Demux ( UsageEnvironment & env,
FramedSource * inputSource,
Boolean reclaimWhenLastESDies,
MPEG1or2DemuxOnDeletionFunc * onDeletionFunc,
void * objectToNotify )
private

References inputSource().

Referenced by createNew().

◆ ~MPEG1or2Demux()

virtual MPEG1or2Demux::~MPEG1or2Demux ( )
privatevirtual

Member Function Documentation

◆ close() [1/2]

void Medium::close ( Medium * medium)
staticinherited

References Medium().

◆ close() [2/2]

void Medium::close ( UsageEnvironment & env,
char const * mediumName )
staticinherited

◆ continueReadProcessing() [1/2]

void MPEG1or2Demux::continueReadProcessing ( )
private

◆ continueReadProcessing() [2/2]

void MPEG1or2Demux::continueReadProcessing ( void * clientData,
unsigned char * ptr,
unsigned size,
struct timeval presentationTime )
staticprivate

◆ createNew()

MPEG1or2Demux * MPEG1or2Demux::createNew ( UsageEnvironment & env,
FramedSource * inputSource,
Boolean reclaimWhenLastESDies = False,
MPEG1or2DemuxOnDeletionFunc * onDeletionFunc = NULL,
void * objectToNotify = NULL )
static

◆ envir()

UsageEnvironment & Medium::envir ( ) const
inlineinherited

Definition at line 59 of file Media.hh.

59{return fEnviron;}
UsageEnvironment & fEnviron
Definition Media.hh:82

References fEnviron.

Referenced by MediaSubsession::env(), GenericMediaServer::ClientConnection::envir(), GenericMediaServer::ClientSession::envir(), and RTPInterface::envir().

◆ flushInput()

void MPEG1or2Demux::flushInput ( )

◆ getNextFrame()

void MPEG1or2Demux::getNextFrame ( u_int8_t streamIdTag,
unsigned char * to,
unsigned maxSize,
FramedSource::afterGettingFunc * afterGettingFunc,
void * afterGettingClientData,
FramedSource::onCloseFunc * onCloseFunc,
void * onCloseClientData )

◆ handleClosure()

void MPEG1or2Demux::handleClosure ( void * clientData)
static

◆ inputSource()

FramedSource * MPEG1or2Demux::inputSource ( ) const
inline

Definition at line 68 of file MPEG1or2Demux.hh.

68{ return fInputSource; }
FramedSource * fInputSource

References fInputSource.

Referenced by createNew(), and MPEG1or2Demux().

◆ isMediaSession()

virtual Boolean Medium::isMediaSession ( ) const
virtualinherited

Reimplemented in MediaSession.

◆ isRTCPInstance()

virtual Boolean Medium::isRTCPInstance ( ) const
virtualinherited

Reimplemented in RTCPInstance.

◆ isRTSPClient()

virtual Boolean Medium::isRTSPClient ( ) const
virtualinherited

Reimplemented in RTSPClient.

◆ isRTSPServer()

virtual Boolean Medium::isRTSPServer ( ) const
virtualinherited

Reimplemented in RTSPServer.

◆ isServerMediaSession()

virtual Boolean Medium::isServerMediaSession ( ) const
virtualinherited

Reimplemented in ServerMediaSession.

◆ isSink()

virtual Boolean Medium::isSink ( ) const
virtualinherited

Reimplemented in MediaSink.

◆ isSource()

virtual Boolean Medium::isSource ( ) const
virtualinherited

Reimplemented in MediaSource.

◆ lastSeenSCR()

SCR & MPEG1or2Demux::lastSeenSCR ( )
inline

Definition at line 80 of file MPEG1or2Demux.hh.

80{ return fLastSeenSCR; }

References fLastSeenSCR.

◆ lookupByName()

Boolean Medium::lookupByName ( UsageEnvironment & env,
char const * mediumName,
Medium *& resultMedium )
staticinherited

References Medium().

◆ mpegVersion()

unsigned char MPEG1or2Demux::mpegVersion ( ) const
inline

Definition at line 82 of file MPEG1or2Demux.hh.

82{ return fMPEGversion; }
unsigned char fMPEGversion

References fMPEGversion.

◆ name()

char const * Medium::name ( ) const
inlineinherited

Definition at line 61 of file Media.hh.

61{return fMediumName;}
char fMediumName[mediumNameMaxLen]
Definition Media.hh:83

References fMediumName.

Referenced by QuickTimeFileSink::_atom(), RTSPServer::lookupByName(), RTCPInstance::sendAppPacket(), and OnDemandServerMediaSubsession::sendRTCPAppPacket().

◆ newAudioStream()

MPEG1or2DemuxedElementaryStream * MPEG1or2Demux::newAudioStream ( )

◆ newElementaryStream()

MPEG1or2DemuxedElementaryStream * MPEG1or2Demux::newElementaryStream ( u_int8_t streamIdTag)

◆ newRawPESStream()

MPEG1or2DemuxedElementaryStream * MPEG1or2Demux::newRawPESStream ( )

◆ newVideoStream()

MPEG1or2DemuxedElementaryStream * MPEG1or2Demux::newVideoStream ( )

◆ nextTask()

TaskToken & Medium::nextTask ( )
inlineprotectedinherited

Definition at line 77 of file Media.hh.

77 {
78 return fNextTask;
79 }
TaskToken fNextTask
Definition Media.hh:84

References fNextTask.

◆ noteElementaryStreamDeletion()

void MPEG1or2Demux::noteElementaryStreamDeletion ( MPEG1or2DemuxedElementaryStream * es)
private

◆ registerReadInterest()

void MPEG1or2Demux::registerReadInterest ( u_int8_t streamIdTag,
unsigned char * to,
unsigned maxSize,
FramedSource::afterGettingFunc * afterGettingFunc,
void * afterGettingClientData,
FramedSource::onCloseFunc * onCloseFunc,
void * onCloseClientData )
private

◆ stopGettingFrames()

void MPEG1or2Demux::stopGettingFrames ( u_int8_t streamIdTag)

◆ useSavedData()

Boolean MPEG1or2Demux::useSavedData ( u_int8_t streamIdTag,
unsigned char * to,
unsigned maxSize,
FramedSource::afterGettingFunc * afterGettingFunc,
void * afterGettingClientData )
private

◆ MPEG1or2DemuxedElementaryStream

◆ MPEGProgramStreamParser

friend class MPEGProgramStreamParser
friend

Definition at line 155 of file MPEG1or2Demux.hh.

References MPEGProgramStreamParser.

Referenced by MPEGProgramStreamParser.

Field Documentation

◆ fEnviron

UsageEnvironment& Medium::fEnviron
privateinherited

Definition at line 82 of file Media.hh.

Referenced by envir().

◆ fHaveUndeliveredData

Boolean MPEG1or2Demux::fHaveUndeliveredData
private

Definition at line 148 of file MPEG1or2Demux.hh.

◆ fInputSource

FramedSource* MPEG1or2Demux::fInputSource
private

Definition at line 115 of file MPEG1or2Demux.hh.

Referenced by inputSource().

◆ fLastSeenSCR

SCR MPEG1or2Demux::fLastSeenSCR
private

Definition at line 116 of file MPEG1or2Demux.hh.

Referenced by lastSeenSCR().

◆ fMediumName

char Medium::fMediumName[mediumNameMaxLen]
privateinherited

Definition at line 83 of file Media.hh.

Referenced by name().

◆ fMPEGversion

unsigned char MPEG1or2Demux::fMPEGversion
private

Definition at line 117 of file MPEG1or2Demux.hh.

Referenced by mpegVersion().

◆ fNextAudioStreamNumber

unsigned char MPEG1or2Demux::fNextAudioStreamNumber
private

Definition at line 119 of file MPEG1or2Demux.hh.

◆ fNextTask

TaskToken Medium::fNextTask
privateinherited

Definition at line 84 of file Media.hh.

Referenced by nextTask().

◆ fNextVideoStreamNumber

unsigned char MPEG1or2Demux::fNextVideoStreamNumber
private

Definition at line 120 of file MPEG1or2Demux.hh.

◆ fNumOutstandingESs

unsigned MPEG1or2Demux::fNumOutstandingESs
private

Definition at line 122 of file MPEG1or2Demux.hh.

◆ fNumPendingReads

unsigned MPEG1or2Demux::fNumPendingReads
private

Definition at line 147 of file MPEG1or2Demux.hh.

◆ fOnDeletionFunc

MPEG1or2DemuxOnDeletionFunc* MPEG1or2Demux::fOnDeletionFunc
private

Definition at line 150 of file MPEG1or2Demux.hh.

◆ fOnDeletionObjectToNotify

void* MPEG1or2Demux::fOnDeletionObjectToNotify
private

Definition at line 151 of file MPEG1or2Demux.hh.

◆ fOutput

OutputDescriptor_t MPEG1or2Demux::fOutput[256]
private

Definition at line 145 of file MPEG1or2Demux.hh.

◆ fParser

class MPEGProgramStreamParser* MPEG1or2Demux::fParser
private

Definition at line 154 of file MPEG1or2Demux.hh.

◆ fReclaimWhenLastESDies

Boolean MPEG1or2Demux::fReclaimWhenLastESDies
private

Definition at line 121 of file MPEG1or2Demux.hh.


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