live
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes
MPEG1or2DemuxedServerMediaSubsession Class Reference

#include <MPEG1or2DemuxedServerMediaSubsession.hh>

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

Public Member Functions

void multiplexRTCPWithRTP ()
 
void setRTCPAppPacketHandler (RTCPAppHandlerFunc *handler, void *clientData)
 
void sendRTCPAppPacket (u_int8_t subtype, char const *name, u_int8_t *appDependentData, unsigned appDependentDataSize)
 
unsigned trackNumber () const
 
char const * trackId ()
 
virtual void testScaleFactor (float &scale)
 
virtual void getAbsoluteTimeRange (char *&absStartTime, char *&absEndTime) const
 
void setServerAddressAndPortForSDP (netAddressBits addressBits, portNumBits portBits)
 
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
 
virtual Boolean isDarwinInjector () const
 

Static Public Member Functions

static
MPEG1or2DemuxedServerMediaSubsession
createNew (MPEG1or2FileServerDemux &demux, u_int8_t streamIdTag, Boolean reuseFirstSource, Boolean iFramesOnly=False, double vshPeriod=5.0)
 
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

virtual char const * sdpLines ()
 
virtual void getStreamParameters (unsigned clientSessionId, netAddressBits clientAddress, Port const &clientRTPPort, Port const &clientRTCPPort, int tcpSocketNum, unsigned char rtpChannelId, unsigned char rtcpChannelId, netAddressBits &destinationAddress, u_int8_t &destinationTTL, Boolean &isMulticast, Port &serverRTPPort, Port &serverRTCPPort, void *&streamToken)
 
virtual void startStream (unsigned clientSessionId, void *streamToken, TaskFunc *rtcpRRHandler, void *rtcpRRHandlerClientData, unsigned short &rtpSeqNum, unsigned &rtpTimestamp, ServerRequestAlternativeByteHandler *serverRequestAlternativeByteHandler, void *serverRequestAlternativeByteHandlerClientData)
 
virtual void pauseStream (unsigned clientSessionId, void *streamToken)
 
virtual void seekStream (unsigned clientSessionId, void *streamToken, double &seekNPT, double streamDuration, u_int64_t &numBytes)
 
virtual void seekStream (unsigned clientSessionId, void *streamToken, char *&absStart, char *&absEnd)
 
virtual void nullSeekStream (unsigned clientSessionId, void *streamToken, double streamEndTime, u_int64_t &numBytes)
 
virtual void setStreamScale (unsigned clientSessionId, void *streamToken, float scale)
 
virtual float getCurrentNPT (void *streamToken)
 
virtual FramedSourcegetStreamSource (void *streamToken)
 
virtual void deleteStream (unsigned clientSessionId, void *&streamToken)
 
virtual char const * getAuxSDPLine (RTPSink *rtpSink, FramedSource *inputSource)
 
virtual void seekStreamSource (FramedSource *inputSource, char *&absStart, char *&absEnd)
 
virtual void setStreamSourceScale (FramedSource *inputSource, float scale)
 
virtual void setStreamSourceDuration (FramedSource *inputSource, double streamDuration, u_int64_t &numBytes)
 
virtual void closeStreamSource (FramedSource *inputSource)
 
char const * rangeSDPLine () const
 
TaskTokennextTask ()
 

Protected Attributes

char * fSDPLines
 
HashTablefDestinationsHashTable
 
ServerMediaSessionfParentSession
 
netAddressBits fServerAddressForSDP
 
portNumBits fPortNumForSDP
 

Private Member Functions

 MPEG1or2DemuxedServerMediaSubsession (MPEG1or2FileServerDemux &demux, u_int8_t streamIdTag, Boolean reuseFirstSource, Boolean iFramesOnly, double vshPeriod)
 
virtual ~MPEG1or2DemuxedServerMediaSubsession ()
 
virtual void seekStreamSource (FramedSource *inputSource, double &seekNPT, double streamDuration, u_int64_t &numBytes)
 
virtual FramedSourcecreateNewStreamSource (unsigned clientSessionId, unsigned &estBitrate)
 
virtual RTPSinkcreateNewRTPSink (Groupsock *rtpGroupsock, unsigned char rtpPayloadTypeIfDynamic, FramedSource *inputSource)
 
virtual float duration () const
 

Private Attributes

MPEG1or2FileServerDemuxfOurDemux
 
u_int8_t fStreamIdTag
 
Boolean fIFramesOnly
 
double fVSHPeriod
 

Detailed Description

Definition at line 32 of file MPEG1or2DemuxedServerMediaSubsession.hh.

Constructor & Destructor Documentation

MPEG1or2DemuxedServerMediaSubsession::MPEG1or2DemuxedServerMediaSubsession ( MPEG1or2FileServerDemux demux,
u_int8_t  streamIdTag,
Boolean  reuseFirstSource,
Boolean  iFramesOnly,
double  vshPeriod 
)
private
virtual MPEG1or2DemuxedServerMediaSubsession::~MPEG1or2DemuxedServerMediaSubsession ( )
privatevirtual

Member Function Documentation

static void Medium::close ( UsageEnvironment env,
char const *  mediumName 
)
staticinherited
static void Medium::close ( Medium medium)
staticinherited
virtual void OnDemandServerMediaSubsession::closeStreamSource ( FramedSource inputSource)
protectedvirtualinherited
static MPEG1or2DemuxedServerMediaSubsession* MPEG1or2DemuxedServerMediaSubsession::createNew ( MPEG1or2FileServerDemux demux,
u_int8_t  streamIdTag,
Boolean  reuseFirstSource,
Boolean  iFramesOnly = False,
double  vshPeriod = 5.0 
)
static
virtual RTPSink* MPEG1or2DemuxedServerMediaSubsession::createNewRTPSink ( Groupsock rtpGroupsock,
unsigned char  rtpPayloadTypeIfDynamic,
FramedSource inputSource 
)
privatevirtual
virtual FramedSource* MPEG1or2DemuxedServerMediaSubsession::createNewStreamSource ( unsigned  clientSessionId,
unsigned &  estBitrate 
)
privatevirtual
virtual void OnDemandServerMediaSubsession::deleteStream ( unsigned  clientSessionId,
void *&  streamToken 
)
protectedvirtualinherited

Reimplemented from ServerMediaSubsession.

Reimplemented in MPEG2TransportFileServerMediaSubsession.

virtual float MPEG1or2DemuxedServerMediaSubsession::duration ( ) const
privatevirtual

Reimplemented from ServerMediaSubsession.

UsageEnvironment& Medium::envir ( ) const
inlineinherited

Definition at line 59 of file Media.hh.

References Medium::fEnviron.

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

59 {return fEnviron;}
UsageEnvironment & fEnviron
Definition: Media.hh:83
virtual void ServerMediaSubsession::getAbsoluteTimeRange ( char *&  absStartTime,
char *&  absEndTime 
) const
virtualinherited
virtual char const* OnDemandServerMediaSubsession::getAuxSDPLine ( RTPSink rtpSink,
FramedSource inputSource 
)
protectedvirtualinherited
virtual float OnDemandServerMediaSubsession::getCurrentNPT ( void *  streamToken)
protectedvirtualinherited

Reimplemented from ServerMediaSubsession.

virtual void OnDemandServerMediaSubsession::getStreamParameters ( unsigned  clientSessionId,
netAddressBits  clientAddress,
Port const &  clientRTPPort,
Port const &  clientRTCPPort,
int  tcpSocketNum,
unsigned char  rtpChannelId,
unsigned char  rtcpChannelId,
netAddressBits destinationAddress,
u_int8_t &  destinationTTL,
Boolean isMulticast,
Port serverRTPPort,
Port serverRTCPPort,
void *&  streamToken 
)
protectedvirtualinherited

Implements ServerMediaSubsession.

virtual FramedSource* OnDemandServerMediaSubsession::getStreamSource ( void *  streamToken)
protectedvirtualinherited

Reimplemented from ServerMediaSubsession.

virtual Boolean Medium::isDarwinInjector ( ) const
virtualinherited

Reimplemented in DarwinInjector.

virtual Boolean Medium::isMediaSession ( ) const
virtualinherited

Reimplemented in MediaSession.

virtual Boolean Medium::isRTCPInstance ( ) const
virtualinherited

Reimplemented in RTCPInstance.

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.

virtual Boolean Medium::isSource ( ) const
virtualinherited

Reimplemented in MediaSource.

static Boolean Medium::lookupByName ( UsageEnvironment env,
char const *  mediumName,
Medium *&  resultMedium 
)
staticinherited
void OnDemandServerMediaSubsession::multiplexRTCPWithRTP ( )
inlineinherited
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:84
TaskToken& Medium::nextTask ( )
inlineprotectedinherited

Definition at line 78 of file Media.hh.

References Medium::fNextTask.

78  {
79  return fNextTask;
80  }
TaskToken fNextTask
Definition: Media.hh:85
virtual void OnDemandServerMediaSubsession::nullSeekStream ( unsigned  clientSessionId,
void *  streamToken,
double  streamEndTime,
u_int64_t &  numBytes 
)
protectedvirtualinherited

Reimplemented from ServerMediaSubsession.

virtual void OnDemandServerMediaSubsession::pauseStream ( unsigned  clientSessionId,
void *  streamToken 
)
protectedvirtualinherited

Reimplemented from ServerMediaSubsession.

Reimplemented in MPEG2TransportFileServerMediaSubsession.

char const* ServerMediaSubsession::rangeSDPLine ( ) const
protectedinherited
virtual char const* OnDemandServerMediaSubsession::sdpLines ( )
protectedvirtualinherited

Implements ServerMediaSubsession.

virtual void OnDemandServerMediaSubsession::seekStream ( unsigned  clientSessionId,
void *  streamToken,
double &  seekNPT,
double  streamDuration,
u_int64_t &  numBytes 
)
protectedvirtualinherited

Reimplemented from ServerMediaSubsession.

Reimplemented in MPEG2TransportFileServerMediaSubsession.

virtual void OnDemandServerMediaSubsession::seekStream ( unsigned  clientSessionId,
void *  streamToken,
char *&  absStart,
char *&  absEnd 
)
protectedvirtualinherited

Reimplemented from ServerMediaSubsession.

virtual void MPEG1or2DemuxedServerMediaSubsession::seekStreamSource ( FramedSource inputSource,
double &  seekNPT,
double  streamDuration,
u_int64_t &  numBytes 
)
privatevirtual

Reimplemented from OnDemandServerMediaSubsession.

virtual void OnDemandServerMediaSubsession::seekStreamSource ( FramedSource inputSource,
char *&  absStart,
char *&  absEnd 
)
protectedvirtualinherited
void OnDemandServerMediaSubsession::sendRTCPAppPacket ( u_int8_t  subtype,
char const *  name,
u_int8_t *  appDependentData,
unsigned  appDependentDataSize 
)
inherited
void OnDemandServerMediaSubsession::setRTCPAppPacketHandler ( RTCPAppHandlerFunc handler,
void *  clientData 
)
inherited
void ServerMediaSubsession::setServerAddressAndPortForSDP ( netAddressBits  addressBits,
portNumBits  portBits 
)
inherited
virtual void OnDemandServerMediaSubsession::setStreamScale ( unsigned  clientSessionId,
void *  streamToken,
float  scale 
)
protectedvirtualinherited

Reimplemented from ServerMediaSubsession.

Reimplemented in MPEG2TransportFileServerMediaSubsession.

virtual void OnDemandServerMediaSubsession::setStreamSourceDuration ( FramedSource inputSource,
double  streamDuration,
u_int64_t &  numBytes 
)
protectedvirtualinherited
virtual void OnDemandServerMediaSubsession::setStreamSourceScale ( FramedSource inputSource,
float  scale 
)
protectedvirtualinherited
virtual void OnDemandServerMediaSubsession::startStream ( unsigned  clientSessionId,
void *  streamToken,
TaskFunc rtcpRRHandler,
void *  rtcpRRHandlerClientData,
unsigned short &  rtpSeqNum,
unsigned &  rtpTimestamp,
ServerRequestAlternativeByteHandler serverRequestAlternativeByteHandler,
void *  serverRequestAlternativeByteHandlerClientData 
)
protectedvirtualinherited
virtual void ServerMediaSubsession::testScaleFactor ( float &  scale)
virtualinherited
char const* ServerMediaSubsession::trackId ( )
inherited
unsigned ServerMediaSubsession::trackNumber ( ) const
inlineinherited

Definition at line 126 of file ServerMediaSession.hh.

References ServerMediaSubsession::fTrackNumber.

126 { return fTrackNumber; }

Field Documentation

HashTable* OnDemandServerMediaSubsession::fDestinationsHashTable
protectedinherited

Definition at line 128 of file OnDemandServerMediaSubsession.hh.

Boolean MPEG1or2DemuxedServerMediaSubsession::fIFramesOnly
private

Definition at line 59 of file MPEG1or2DemuxedServerMediaSubsession.hh.

MPEG1or2FileServerDemux& MPEG1or2DemuxedServerMediaSubsession::fOurDemux
private

Definition at line 57 of file MPEG1or2DemuxedServerMediaSubsession.hh.

ServerMediaSession* ServerMediaSubsession::fParentSession
protectedinherited

Definition at line 188 of file ServerMediaSession.hh.

portNumBits ServerMediaSubsession::fPortNumForSDP
protectedinherited

Definition at line 190 of file ServerMediaSession.hh.

char* OnDemandServerMediaSubsession::fSDPLines
protectedinherited

Definition at line 127 of file OnDemandServerMediaSubsession.hh.

netAddressBits ServerMediaSubsession::fServerAddressForSDP
protectedinherited

Definition at line 189 of file ServerMediaSession.hh.

u_int8_t MPEG1or2DemuxedServerMediaSubsession::fStreamIdTag
private

Definition at line 58 of file MPEG1or2DemuxedServerMediaSubsession.hh.

double MPEG1or2DemuxedServerMediaSubsession::fVSHPeriod
private

Definition at line 60 of file MPEG1or2DemuxedServerMediaSubsession.hh.


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