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

#include <MPEG2TransportStreamFramer.hh>

Inheritance diagram for MPEG2TransportStreamFramer:
Inheritance graph
[legend]
Collaboration diagram for MPEG2TransportStreamFramer:
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_int64_t tsPacketCount () const
 
void changeInputSource (FramedSource *newInputSource)
 
void clearPIDStatusTable ()
 
void setNumTSPacketsToStream (unsigned long numTSRecordsToStream)
 
void setPCRLimit (float pcrLimit)
 
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 isMPEG4VideoStreamFramer () const
 
virtual Boolean isH264VideoStreamFramer () const
 
virtual Boolean isH265VideoStreamFramer () const
 
virtual Boolean isDVVideoStreamFramer () const
 
virtual Boolean isJPEGVideoSource () const
 
virtual Boolean isAMRAudioSource () const
 
virtual Boolean isMPEG2TransportStreamMultiplexor () 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 MPEG2TransportStreamFramercreateNew (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

 MPEG2TransportStreamFramer (UsageEnvironment &env, FramedSource *inputSource)
 
virtual ~MPEG2TransportStreamFramer ()
 
virtual char const * MIMEtype () const
 
virtual void getAttributes () const
 
TaskTokennextTask ()
 

Protected Attributes

FramedSourcefInputSource
 
unsigned char * fTo
 
unsigned fMaxSize
 
unsigned fFrameSize
 
unsigned fNumTruncatedBytes
 
struct timeval fPresentationTime
 
unsigned fDurationInMicroseconds
 

Private Member Functions

virtual void doGetNextFrame ()
 
virtual void doStopGettingFrames ()
 
void afterGettingFrame1 (unsigned frameSize, struct timeval presentationTime)
 
Boolean updateTSPacketDurationEstimate (unsigned char *pkt, double timeNow)
 

Static Private Member Functions

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

Private Attributes

u_int64_t fTSPacketCount
 
double fTSPacketDurationEstimate
 
HashTablefPIDStatusTable
 
u_int64_t fTSPCRCount
 
Boolean fLimitNumTSPacketsToStream
 
unsigned long fNumTSPacketsToStream
 
Boolean fLimitTSPacketsToStreamByPCR
 
float fPCRLimit
 

Detailed Description

Definition at line 34 of file MPEG2TransportStreamFramer.hh.

Member Typedef Documentation

◆ afterGettingFunc

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

Definition at line 36 of file FramedSource.hh.

◆ onCloseFunc

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

Definition at line 40 of file FramedSource.hh.

Constructor & Destructor Documentation

◆ MPEG2TransportStreamFramer()

MPEG2TransportStreamFramer::MPEG2TransportStreamFramer ( UsageEnvironment env,
FramedSource inputSource 
)
protected

◆ ~MPEG2TransportStreamFramer()

virtual MPEG2TransportStreamFramer::~MPEG2TransportStreamFramer ( )
protectedvirtual

Member Function Documentation

◆ afterGetting()

static void FramedSource::afterGetting ( FramedSource source)
staticinherited

◆ afterGettingFrame()

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

◆ afterGettingFrame1()

void MPEG2TransportStreamFramer::afterGettingFrame1 ( unsigned  frameSize,
struct timeval  presentationTime 
)
private

◆ changeInputSource()

void MPEG2TransportStreamFramer::changeInputSource ( FramedSource newInputSource)
inline

Definition at line 41 of file MPEG2TransportStreamFramer.hh.

41 { fInputSource = newInputSource; }
FramedSource * fInputSource
Definition: FramedFilter.hh:49

References FramedFilter::fInputSource.

◆ clearPIDStatusTable()

void MPEG2TransportStreamFramer::clearPIDStatusTable ( )

◆ close() [1/2]

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

◆ close() [2/2]

static void Medium::close ( Medium medium)
staticinherited

◆ createNew()

static MPEG2TransportStreamFramer* MPEG2TransportStreamFramer::createNew ( UsageEnvironment env,
FramedSource inputSource 
)
static

◆ detachInputSource()

void FramedFilter::detachInputSource ( )
inherited

◆ doGetNextFrame()

virtual void MPEG2TransportStreamFramer::doGetNextFrame ( )
privatevirtual

Implements FramedSource.

◆ doStopGettingFrames()

virtual void MPEG2TransportStreamFramer::doStopGettingFrames ( )
privatevirtual

Reimplemented from FramedFilter.

◆ envir()

UsageEnvironment& Medium::envir ( ) const
inlineinherited

◆ getAttributes()

virtual void FramedFilter::getAttributes ( ) const
protectedvirtualinherited

Reimplemented from MediaSource.

Reimplemented in MP3ADUTranscoder.

◆ getNextFrame()

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

◆ handleClosure() [1/2]

static void FramedSource::handleClosure ( void *  clientData)
staticinherited

◆ handleClosure() [2/2]

void FramedSource::handleClosure ( )
inherited

◆ inputSource()

FramedSource* FramedFilter::inputSource ( ) const
inlineinherited

Definition at line 30 of file FramedFilter.hh.

30 { return fInputSource; }
FramedSource * fInputSource
Definition: FramedFilter.hh:49

References FramedFilter::fInputSource.

◆ isAMRAudioSource()

virtual Boolean MediaSource::isAMRAudioSource ( ) const
virtualinherited

Reimplemented in AMRAudioSource.

◆ isCurrentlyAwaitingData()

Boolean FramedSource::isCurrentlyAwaitingData ( ) const
inlineinherited

Definition at line 61 of file FramedSource.hh.

Boolean fIsCurrentlyAwaitingData
Definition: FramedSource.hh:92

References FramedSource::fIsCurrentlyAwaitingData.

◆ isDVVideoStreamFramer()

virtual Boolean MediaSource::isDVVideoStreamFramer ( ) const
virtualinherited

Reimplemented in DVVideoStreamFramer.

◆ isH264VideoStreamFramer()

virtual Boolean MediaSource::isH264VideoStreamFramer ( ) const
virtualinherited

◆ isH265VideoStreamFramer()

virtual Boolean MediaSource::isH265VideoStreamFramer ( ) const
virtualinherited

◆ isJPEGVideoSource()

virtual Boolean MediaSource::isJPEGVideoSource ( ) const
virtualinherited

Reimplemented in JPEGVideoSource.

◆ isMediaSession()

virtual Boolean Medium::isMediaSession ( ) const
virtualinherited

Reimplemented in MediaSession.

◆ isMPEG1or2VideoStreamFramer()

virtual Boolean MediaSource::isMPEG1or2VideoStreamFramer ( ) const
virtualinherited

Reimplemented in MPEG1or2VideoStreamFramer.

◆ isMPEG2TransportStreamMultiplexor()

virtual Boolean MediaSource::isMPEG2TransportStreamMultiplexor ( ) const
virtualinherited

◆ isMPEG4VideoStreamFramer()

virtual Boolean MediaSource::isMPEG4VideoStreamFramer ( ) const
virtualinherited

Reimplemented in MPEG4VideoStreamFramer.

◆ isRTCPInstance()

virtual Boolean Medium::isRTCPInstance ( ) const
virtualinherited

Reimplemented in RTCPInstance.

◆ isRTPSource()

virtual Boolean MediaSource::isRTPSource ( ) const
virtualinherited

Reimplemented in RTPSource.

◆ 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.

◆ lookupByName() [1/3]

static Boolean MediaSource::lookupByName ( UsageEnvironment env,
char const *  sourceName,
MediaSource *&  resultSource 
)
staticinherited

◆ lookupByName() [2/3]

static Boolean FramedSource::lookupByName ( UsageEnvironment env,
char const *  sourceName,
FramedSource *&  resultSource 
)
staticinherited

◆ lookupByName() [3/3]

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

◆ maxFrameSize()

virtual unsigned FramedSource::maxFrameSize ( ) const
virtualinherited

◆ MIMEtype()

virtual char const* FramedFilter::MIMEtype ( ) const
protectedvirtualinherited

Reimplemented from MediaSource.

Reimplemented in MP3FromADUSource, and ADUFromMP3Source.

◆ 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 Medium::fMediumName.

◆ 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 Medium::fNextTask.

◆ reassignInputSource()

void FramedFilter::reassignInputSource ( FramedSource newInputSource)
inlineinherited

Definition at line 32 of file FramedFilter.hh.

32 { fInputSource = newInputSource; }
FramedSource * fInputSource
Definition: FramedFilter.hh:49

References FramedFilter::fInputSource.

◆ setNumTSPacketsToStream()

void MPEG2TransportStreamFramer::setNumTSPacketsToStream ( unsigned long  numTSRecordsToStream)

◆ setPCRLimit()

void MPEG2TransportStreamFramer::setPCRLimit ( float  pcrLimit)

◆ stopGettingFrames()

void FramedSource::stopGettingFrames ( )
inherited

◆ tsPacketCount()

u_int64_t MPEG2TransportStreamFramer::tsPacketCount ( ) const
inline

Definition at line 39 of file MPEG2TransportStreamFramer.hh.

References fTSPacketCount.

◆ updateTSPacketDurationEstimate()

Boolean MPEG2TransportStreamFramer::updateTSPacketDurationEstimate ( unsigned char *  pkt,
double  timeNow 
)
private

Field Documentation

◆ fDurationInMicroseconds

unsigned FramedSource::fDurationInMicroseconds
protectedinherited

◆ fFrameSize

unsigned FramedSource::fFrameSize
protectedinherited

◆ fInputSource

FramedSource* FramedFilter::fInputSource
protectedinherited

◆ fLimitNumTSPacketsToStream

Boolean MPEG2TransportStreamFramer::fLimitNumTSPacketsToStream
private

Definition at line 72 of file MPEG2TransportStreamFramer.hh.

◆ fLimitTSPacketsToStreamByPCR

Boolean MPEG2TransportStreamFramer::fLimitTSPacketsToStreamByPCR
private

Definition at line 74 of file MPEG2TransportStreamFramer.hh.

◆ fMaxSize

unsigned FramedSource::fMaxSize
protectedinherited

◆ fNumTruncatedBytes

unsigned FramedSource::fNumTruncatedBytes
protectedinherited

◆ fNumTSPacketsToStream

unsigned long MPEG2TransportStreamFramer::fNumTSPacketsToStream
private

Definition at line 73 of file MPEG2TransportStreamFramer.hh.

◆ fPCRLimit

float MPEG2TransportStreamFramer::fPCRLimit
private

Definition at line 75 of file MPEG2TransportStreamFramer.hh.

◆ fPIDStatusTable

HashTable* MPEG2TransportStreamFramer::fPIDStatusTable
private

Definition at line 70 of file MPEG2TransportStreamFramer.hh.

◆ fPresentationTime

struct timeval FramedSource::fPresentationTime
protectedinherited

◆ fTo

unsigned char* FramedSource::fTo
protectedinherited

◆ fTSPacketCount

u_int64_t MPEG2TransportStreamFramer::fTSPacketCount
private

Definition at line 68 of file MPEG2TransportStreamFramer.hh.

Referenced by tsPacketCount().

◆ fTSPacketDurationEstimate

double MPEG2TransportStreamFramer::fTSPacketDurationEstimate
private

Definition at line 69 of file MPEG2TransportStreamFramer.hh.

◆ fTSPCRCount

u_int64_t MPEG2TransportStreamFramer::fTSPCRCount
private

Definition at line 71 of file MPEG2TransportStreamFramer.hh.


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