JPEGVideoRTPSource Class Reference

#include <JPEGVideoRTPSource.hh>

Inheritance diagram for JPEGVideoRTPSource:

Inheritance graph
Collaboration diagram for JPEGVideoRTPSource:

Collaboration graph

Public Types

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

Public Member Functions

Boolean curPacketMarkerBit () const
unsigned char rtpPayloadFormat () const
virtual Boolean hasBeenSynchronizedUsingRTCP ()
GroupsockRTPgs () const
u_int32_t SSRC () const
void registerForMultiplexedRTCPPackets (class RTCPInstance *rtcpInstance)
void deregisterForMultiplexedRTCPPackets ()
unsigned timestampFrequency () const
RTPReceptionStatsDBreceptionStatsDB () const
u_int32_t lastReceivedSSRC () const
BooleanenableRTCPReports ()
Boolean const & enableRTCPReports () const
void setStreamSocket (int sockNum, unsigned char streamChannelId)
void setAuxilliaryReadHandler (AuxHandlerFunc *handlerFunc, void *handlerClientData)
u_int16_t curPacketRTPSeqNum () const
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 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
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
virtual Boolean isDarwinInjector () const

Static Public Member Functions

static JPEGVideoRTPSourcecreateNew (UsageEnvironment &env, Groupsock *RTPgs, unsigned char rtpPayloadFormat=26, unsigned rtpPayloadFrequency=90000, unsigned defaultWidth=0, unsigned defaultHeight=0)
static Boolean lookupByName (UsageEnvironment &env, char const *sourceName, RTPSource *&resultSource)
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

virtual ~JPEGVideoRTPSource ()
virtual Boolean packetIsUsableInJitterCalculation (unsigned char *packet, unsigned packetSize)
virtual void doStopGettingFrames ()
TaskTokennextTask ()

Protected Attributes

Boolean fCurrentPacketBeginsFrame
Boolean fCurrentPacketCompletesFrame
RTPInterface fRTPInterface
u_int16_t fCurPacketRTPSeqNum
u_int32_t fCurPacketRTPTimestamp
Boolean fCurPacketMarkerBit
Boolean fCurPacketHasBeenSynchronizedUsingRTCP
u_int32_t fLastReceivedSSRC
unsigned char * fTo
unsigned fMaxSize
unsigned fFrameSize
unsigned fNumTruncatedBytes
timeval fPresentationTime
unsigned fDurationInMicroseconds

Private Member Functions

 JPEGVideoRTPSource (UsageEnvironment &env, Groupsock *RTPgs, unsigned char rtpPayloadFormat, unsigned rtpTimestampFrequency, unsigned defaultWidth, unsigned defaultHeight)
virtual Boolean processSpecialHeader (BufferedPacket *packet, unsigned &resultSpecialHeaderSize)
virtual char const * MIMEtype () const

Private Attributes

unsigned fDefaultWidth
unsigned fDefaultHeight


class MediaLookupTable

Detailed Description

Definition at line 30 of file JPEGVideoRTPSource.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

virtual JPEGVideoRTPSource::~JPEGVideoRTPSource (  )  [protected, virtual]

JPEGVideoRTPSource::JPEGVideoRTPSource ( UsageEnvironment env,
Groupsock RTPgs,
unsigned char  rtpPayloadFormat,
unsigned  rtpTimestampFrequency,
unsigned  defaultWidth,
unsigned  defaultHeight 
) [private]

Member Function Documentation

static JPEGVideoRTPSource* JPEGVideoRTPSource::createNew ( UsageEnvironment env,
Groupsock RTPgs,
unsigned char  rtpPayloadFormat = 26,
unsigned  rtpPayloadFrequency = 90000,
unsigned  defaultWidth = 0,
unsigned  defaultHeight = 0 
) [static]

virtual Boolean JPEGVideoRTPSource::processSpecialHeader ( BufferedPacket packet,
unsigned &  resultSpecialHeaderSize 
) [private, virtual]

Reimplemented from MultiFramedRTPSource.

virtual char const* JPEGVideoRTPSource::MIMEtype (  )  const [private, virtual]

Reimplemented from MediaSource.

virtual Boolean MultiFramedRTPSource::packetIsUsableInJitterCalculation ( unsigned char *  packet,
unsigned  packetSize 
) [protected, virtual, inherited]

Reimplemented in MPEG1or2VideoRTPSource.

virtual void MultiFramedRTPSource::doStopGettingFrames (  )  [protected, virtual, inherited]

Reimplemented from FramedSource.

static Boolean RTPSource::lookupByName ( UsageEnvironment env,
char const *  sourceName,
RTPSource *&  resultSource 
) [static, inherited]

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

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

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

Boolean RTPSource::curPacketMarkerBit (  )  const [inline, inherited]

Definition at line 38 of file RTPSource.hh.

References RTPSource::fCurPacketMarkerBit.

00038 { return fCurPacketMarkerBit; }

unsigned char RTPSource::rtpPayloadFormat (  )  const [inline, inherited]

Definition at line 40 of file RTPSource.hh.

References RTPSource::fRTPPayloadFormat.

00040 { return fRTPPayloadFormat; }

virtual Boolean RTPSource::hasBeenSynchronizedUsingRTCP (  )  [virtual, inherited]

Groupsock* RTPSource::RTPgs (  )  const [inline, inherited]

Definition at line 44 of file RTPSource.hh.

References RTPSource::fRTPInterface, and RTPInterface::gs().

00044 { return; }

u_int32_t RTPSource::SSRC (  )  const [inline, inherited]

Definition at line 49 of file RTPSource.hh.

References RTPSource::fSSRC.

00049 { return fSSRC; }

void RTPSource::registerForMultiplexedRTCPPackets ( class RTCPInstance rtcpInstance  )  [inline, inherited]

Definition at line 52 of file RTPSource.hh.

References RTPSource::fRTCPInstanceForMultiplexedRTCPPackets.

Referenced by RTPSource::deregisterForMultiplexedRTCPPackets().

00052                                                                            {
00053     fRTCPInstanceForMultiplexedRTCPPackets = rtcpInstance;
00054   }

void RTPSource::deregisterForMultiplexedRTCPPackets (  )  [inline, inherited]

Definition at line 55 of file RTPSource.hh.

References NULL, and RTPSource::registerForMultiplexedRTCPPackets().

unsigned RTPSource::timestampFrequency (  )  const [inline, inherited]

Definition at line 57 of file RTPSource.hh.

References RTPSource::fTimestampFrequency.

00057 {return fTimestampFrequency;}

RTPReceptionStatsDB& RTPSource::receptionStatsDB (  )  const [inline, inherited]

Definition at line 59 of file RTPSource.hh.

References RTPSource::fReceptionStatsDB.

00059                                                 {
00060     return *fReceptionStatsDB;
00061   }

u_int32_t RTPSource::lastReceivedSSRC (  )  const [inline, inherited]

Definition at line 63 of file RTPSource.hh.

References RTPSource::fLastReceivedSSRC.

00063 { return fLastReceivedSSRC; }

Boolean& RTPSource::enableRTCPReports (  )  [inline, inherited]

Definition at line 66 of file RTPSource.hh.

References RTPSource::fEnableRTCPReports.

00066 { return fEnableRTCPReports; }

Boolean const& RTPSource::enableRTCPReports (  )  const [inline, inherited]

Definition at line 67 of file RTPSource.hh.

References RTPSource::fEnableRTCPReports.

00067 { return fEnableRTCPReports; }

void RTPSource::setStreamSocket ( int  sockNum,
unsigned char  streamChannelId 
) [inline, inherited]

Definition at line 69 of file RTPSource.hh.

References RTPSource::fRTPInterface, and RTPInterface::setStreamSocket().

00069                                                                    {
00070     // hack to allow sending RTP over TCP (RFC 2236, section 10.12)
00071     fRTPInterface.setStreamSocket(sockNum, streamChannelId);
00072   }

void RTPSource::setAuxilliaryReadHandler ( AuxHandlerFunc handlerFunc,
void *  handlerClientData 
) [inline, inherited]

Definition at line 74 of file RTPSource.hh.

References RTPSource::fRTPInterface, and RTPInterface::setAuxilliaryReadHandler().

00075                                                          {
00076     fRTPInterface.setAuxilliaryReadHandler(handlerFunc,
00077                                            handlerClientData);
00078   }

u_int16_t RTPSource::curPacketRTPSeqNum (  )  const [inline, inherited]

Definition at line 83 of file RTPSource.hh.

References RTPSource::fCurPacketRTPSeqNum.

00083 { return fCurPacketRTPSeqNum; }

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

static void FramedSource::handleClosure ( void *  clientData  )  [static, inherited]

void FramedSource::handleClosure (  )  [inherited]

void FramedSource::stopGettingFrames (  )  [inherited]

virtual unsigned FramedSource::maxFrameSize (  )  const [virtual, inherited]

Reimplemented in MPEG1or2DemuxedElementaryStream.

Boolean FramedSource::isCurrentlyAwaitingData (  )  const [inline, inherited]

Definition at line 61 of file FramedSource.hh.

References FramedSource::fIsCurrentlyAwaitingData.

00061 {return fIsCurrentlyAwaitingData;}

static void FramedSource::afterGetting ( FramedSource source  )  [static, inherited]

virtual Boolean MediaSource::isMPEG1or2VideoStreamFramer (  )  const [virtual, inherited]

Reimplemented in MPEG1or2VideoStreamFramer.

virtual Boolean MediaSource::isMPEG4VideoStreamFramer (  )  const [virtual, inherited]

Reimplemented in MPEG4VideoStreamFramer.

virtual Boolean MediaSource::isH264VideoStreamFramer (  )  const [virtual, inherited]

Reimplemented in H264VideoStreamDiscreteFramer, and H264VideoStreamFramer.

virtual Boolean MediaSource::isH265VideoStreamFramer (  )  const [virtual, inherited]

Reimplemented in H265VideoStreamDiscreteFramer, and H265VideoStreamFramer.

virtual Boolean MediaSource::isDVVideoStreamFramer (  )  const [virtual, inherited]

Reimplemented in DVVideoStreamFramer.

virtual Boolean MediaSource::isJPEGVideoSource (  )  const [virtual, inherited]

Reimplemented in JPEGVideoSource.

virtual Boolean MediaSource::isAMRAudioSource (  )  const [virtual, inherited]

Reimplemented in AMRAudioSource.

static void Medium::close ( UsageEnvironment env,
char const *  mediumName 
) [static, inherited]

static void Medium::close ( Medium medium  )  [static, inherited]

UsageEnvironment& Medium::envir (  )  const [inline, inherited]

Definition at line 59 of file Media.hh.

References Medium::fEnviron.

Referenced by MediaSubsession::env(), RTSPServer::RTSPClientSession::envir(), RTSPServer::RTSPClientConnection::envir(), and RTPInterface::envir().

00059 {return fEnviron;}

char const* Medium::name (  )  const [inline, inherited]

Definition at line 61 of file Media.hh.

References Medium::fMediumName.

00061 {return fMediumName;}

virtual Boolean Medium::isSink (  )  const [virtual, inherited]

Reimplemented in MediaSink.

virtual Boolean Medium::isRTCPInstance (  )  const [virtual, inherited]

Reimplemented in RTCPInstance.

virtual Boolean Medium::isRTSPClient (  )  const [virtual, inherited]

Reimplemented in RTSPClient.

virtual Boolean Medium::isRTSPServer (  )  const [virtual, inherited]

Reimplemented in RTSPServer.

virtual Boolean Medium::isMediaSession (  )  const [virtual, inherited]

Reimplemented in MediaSession.

virtual Boolean Medium::isServerMediaSession (  )  const [virtual, inherited]

Reimplemented in ServerMediaSession.

virtual Boolean Medium::isDarwinInjector (  )  const [virtual, inherited]

Reimplemented in DarwinInjector.

TaskToken& Medium::nextTask (  )  [inline, protected, inherited]

Definition at line 78 of file Media.hh.

References Medium::fNextTask.

00078                         {
00079         return fNextTask;
00080   }

Friends And Related Function Documentation

friend class MediaLookupTable [friend, inherited]

Definition at line 74 of file Media.hh.

Field Documentation

unsigned JPEGVideoRTPSource::fDefaultWidth [private]

Definition at line 49 of file JPEGVideoRTPSource.hh.

unsigned JPEGVideoRTPSource::fDefaultHeight [private]

Definition at line 49 of file JPEGVideoRTPSource.hh.

Boolean MultiFramedRTPSource::fCurrentPacketBeginsFrame [protected, inherited]

Definition at line 51 of file MultiFramedRTPSource.hh.

Boolean MultiFramedRTPSource::fCurrentPacketCompletesFrame [protected, inherited]

Definition at line 52 of file MultiFramedRTPSource.hh.

RTPInterface RTPSource::fRTPInterface [protected, inherited]

Definition at line 94 of file RTPSource.hh.

Referenced by RTPSource::RTPgs(), RTPSource::setAuxilliaryReadHandler(), and RTPSource::setStreamSocket().

u_int16_t RTPSource::fCurPacketRTPSeqNum [protected, inherited]

Definition at line 95 of file RTPSource.hh.

Referenced by RTPSource::curPacketRTPSeqNum().

u_int32_t RTPSource::fCurPacketRTPTimestamp [protected, inherited]

Definition at line 96 of file RTPSource.hh.

Referenced by RTPSource::curPacketRTPTimestamp().

Boolean RTPSource::fCurPacketMarkerBit [protected, inherited]

Definition at line 97 of file RTPSource.hh.

Referenced by RTPSource::curPacketMarkerBit().

Boolean RTPSource::fCurPacketHasBeenSynchronizedUsingRTCP [protected, inherited]

Definition at line 98 of file RTPSource.hh.

u_int32_t RTPSource::fLastReceivedSSRC [protected, inherited]

Definition at line 99 of file RTPSource.hh.

Referenced by RTPSource::lastReceivedSSRC().

class RTCPInstance* RTPSource::fRTCPInstanceForMultiplexedRTCPPackets [protected, inherited]

Definition at line 100 of file RTPSource.hh.

Referenced by RTPSource::registerForMultiplexedRTCPPackets().

unsigned char* FramedSource::fTo [protected, inherited]

Definition at line 75 of file FramedSource.hh.

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

unsigned FramedSource::fMaxSize [protected, inherited]

Definition at line 76 of file FramedSource.hh.

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

unsigned FramedSource::fFrameSize [protected, inherited]

Definition at line 77 of file FramedSource.hh.

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

unsigned FramedSource::fNumTruncatedBytes [protected, inherited]

Definition at line 78 of file FramedSource.hh.

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

struct timeval FramedSource::fPresentationTime [read, protected, inherited]

Definition at line 79 of file FramedSource.hh.

Referenced by OggDemuxedTrack::presentationTime(), MatroskaDemuxedTrack::presentationTime(), and H264or5VideoStreamFramer::setPresentationTime().

unsigned FramedSource::fDurationInMicroseconds [protected, inherited]

Definition at line 80 of file FramedSource.hh.

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

The documentation for this class was generated from the following file:
Generated on Sun Jan 4 13:16:20 2015 for live by  doxygen 1.5.2