live
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes
FileServerMediaSubsession Class Referenceabstract

#include <FileServerMediaSubsession.hh>

Inheritance diagram for FileServerMediaSubsession:
Inheritance graph
[legend]
Collaboration diagram for FileServerMediaSubsession:
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 float duration () const
 
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
 

Static Public Member Functions

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

 FileServerMediaSubsession (UsageEnvironment &env, char const *fileName, Boolean reuseFirstSource)
 
virtual ~FileServerMediaSubsession ()
 
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 getRTPSinkandRTCP (void *streamToken, RTPSink const *&rtpSink, RTCPInstance const *&rtcp)
 
virtual void deleteStream (unsigned clientSessionId, void *&streamToken)
 
virtual char const * getAuxSDPLine (RTPSink *rtpSink, FramedSource *inputSource)
 
virtual void seekStreamSource (FramedSource *inputSource, double &seekNPT, double streamDuration, u_int64_t &numBytes)
 
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)
 
virtual FramedSourcecreateNewStreamSource (unsigned clientSessionId, unsigned &estBitrate)=0
 
virtual RTPSinkcreateNewRTPSink (Groupsock *rtpGroupsock, unsigned char rtpPayloadTypeIfDynamic, FramedSource *inputSource)=0
 
virtual GroupsockcreateGroupsock (struct in_addr const &addr, Port port)
 
virtual RTCPInstancecreateRTCP (Groupsock *RTCPgs, unsigned totSessionBW, unsigned char const *cname, RTPSink *sink)
 
char const * rangeSDPLine () const
 
TaskTokennextTask ()
 

Protected Attributes

char const * fFileName
 
u_int64_t fFileSize
 
char * fSDPLines
 
HashTablefDestinationsHashTable
 
ServerMediaSessionfParentSession
 
netAddressBits fServerAddressForSDP
 
portNumBits fPortNumForSDP
 

Detailed Description

Definition at line 32 of file FileServerMediaSubsession.hh.

Constructor & Destructor Documentation

◆ FileServerMediaSubsession()

FileServerMediaSubsession::FileServerMediaSubsession ( UsageEnvironment env,
char const *  fileName,
Boolean  reuseFirstSource 
)
protected

◆ ~FileServerMediaSubsession()

virtual FileServerMediaSubsession::~FileServerMediaSubsession ( )
protectedvirtual

Member Function Documentation

◆ close() [1/2]

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

◆ close() [2/2]

static void Medium::close ( Medium medium)
staticinherited

◆ closeStreamSource()

virtual void OnDemandServerMediaSubsession::closeStreamSource ( FramedSource inputSource)
protectedvirtualinherited

◆ createGroupsock()

virtual Groupsock* OnDemandServerMediaSubsession::createGroupsock ( struct in_addr const &  addr,
Port  port 
)
protectedvirtualinherited

◆ createNewRTPSink()

virtual RTPSink* OnDemandServerMediaSubsession::createNewRTPSink ( Groupsock rtpGroupsock,
unsigned char  rtpPayloadTypeIfDynamic,
FramedSource inputSource 
)
protectedpure virtualinherited

◆ createNewStreamSource()

virtual FramedSource* OnDemandServerMediaSubsession::createNewStreamSource ( unsigned  clientSessionId,
unsigned &  estBitrate 
)
protectedpure virtualinherited

◆ createRTCP()

virtual RTCPInstance* OnDemandServerMediaSubsession::createRTCP ( Groupsock RTCPgs,
unsigned  totSessionBW,
unsigned char const *  cname,
RTPSink sink 
)
protectedvirtualinherited

◆ deleteStream()

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

Reimplemented from ServerMediaSubsession.

Reimplemented in MPEG2TransportFileServerMediaSubsession.

◆ duration()

virtual float ServerMediaSubsession::duration ( ) const
virtualinherited

◆ envir()

UsageEnvironment& Medium::envir ( ) const
inlineinherited

◆ getAbsoluteTimeRange()

virtual void ServerMediaSubsession::getAbsoluteTimeRange ( char *&  absStartTime,
char *&  absEndTime 
) const
virtualinherited

◆ getAuxSDPLine()

virtual char const* OnDemandServerMediaSubsession::getAuxSDPLine ( RTPSink rtpSink,
FramedSource inputSource 
)
protectedvirtualinherited

◆ getCurrentNPT()

virtual float OnDemandServerMediaSubsession::getCurrentNPT ( void *  streamToken)
protectedvirtualinherited

Reimplemented from ServerMediaSubsession.

◆ getRTPSinkandRTCP()

virtual void OnDemandServerMediaSubsession::getRTPSinkandRTCP ( void *  streamToken,
RTPSink const *&  rtpSink,
RTCPInstance const *&  rtcp 
)
protectedvirtualinherited

Implements ServerMediaSubsession.

◆ getStreamParameters()

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.

◆ getStreamSource()

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

Reimplemented from ServerMediaSubsession.

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

◆ lookupByName()

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

◆ multiplexRTCPWithRTP()

void OnDemandServerMediaSubsession::multiplexRTCPWithRTP ( )
inlineinherited

◆ name()

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

◆ nextTask()

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

◆ nullSeekStream()

virtual void OnDemandServerMediaSubsession::nullSeekStream ( unsigned  clientSessionId,
void *  streamToken,
double  streamEndTime,
u_int64_t &  numBytes 
)
protectedvirtualinherited

Reimplemented from ServerMediaSubsession.

◆ pauseStream()

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

Reimplemented from ServerMediaSubsession.

Reimplemented in MPEG2TransportFileServerMediaSubsession.

◆ rangeSDPLine()

char const* ServerMediaSubsession::rangeSDPLine ( ) const
protectedinherited

◆ sdpLines()

virtual char const* OnDemandServerMediaSubsession::sdpLines ( )
protectedvirtualinherited

Implements ServerMediaSubsession.

◆ seekStream() [1/2]

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

Reimplemented from ServerMediaSubsession.

Reimplemented in MPEG2TransportFileServerMediaSubsession.

◆ seekStream() [2/2]

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

Reimplemented from ServerMediaSubsession.

◆ seekStreamSource() [1/2]

virtual void OnDemandServerMediaSubsession::seekStreamSource ( FramedSource inputSource,
double &  seekNPT,
double  streamDuration,
u_int64_t &  numBytes 
)
protectedvirtualinherited

◆ seekStreamSource() [2/2]

virtual void OnDemandServerMediaSubsession::seekStreamSource ( FramedSource inputSource,
char *&  absStart,
char *&  absEnd 
)
protectedvirtualinherited

◆ sendRTCPAppPacket()

void OnDemandServerMediaSubsession::sendRTCPAppPacket ( u_int8_t  subtype,
char const *  name,
u_int8_t *  appDependentData,
unsigned  appDependentDataSize 
)
inherited

◆ setRTCPAppPacketHandler()

void OnDemandServerMediaSubsession::setRTCPAppPacketHandler ( RTCPAppHandlerFunc handler,
void *  clientData 
)
inherited

◆ setServerAddressAndPortForSDP()

void ServerMediaSubsession::setServerAddressAndPortForSDP ( netAddressBits  addressBits,
portNumBits  portBits 
)
inherited

◆ setStreamScale()

virtual void OnDemandServerMediaSubsession::setStreamScale ( unsigned  clientSessionId,
void *  streamToken,
float  scale 
)
protectedvirtualinherited

Reimplemented from ServerMediaSubsession.

Reimplemented in MPEG2TransportFileServerMediaSubsession.

◆ setStreamSourceDuration()

virtual void OnDemandServerMediaSubsession::setStreamSourceDuration ( FramedSource inputSource,
double  streamDuration,
u_int64_t &  numBytes 
)
protectedvirtualinherited

◆ setStreamSourceScale()

virtual void OnDemandServerMediaSubsession::setStreamSourceScale ( FramedSource inputSource,
float  scale 
)
protectedvirtualinherited

◆ startStream()

virtual void OnDemandServerMediaSubsession::startStream ( unsigned  clientSessionId,
void *  streamToken,
TaskFunc rtcpRRHandler,
void *  rtcpRRHandlerClientData,
unsigned short &  rtpSeqNum,
unsigned &  rtpTimestamp,
ServerRequestAlternativeByteHandler serverRequestAlternativeByteHandler,
void *  serverRequestAlternativeByteHandlerClientData 
)
protectedvirtualinherited

◆ testScaleFactor()

virtual void ServerMediaSubsession::testScaleFactor ( float &  scale)
virtualinherited

◆ trackId()

char const* ServerMediaSubsession::trackId ( )
inherited

◆ trackNumber()

unsigned ServerMediaSubsession::trackNumber ( ) const
inlineinherited

Definition at line 122 of file ServerMediaSession.hh.

References ServerMediaSubsession::fTrackNumber.

122 { return fTrackNumber; }

Field Documentation

◆ fDestinationsHashTable

HashTable* OnDemandServerMediaSubsession::fDestinationsHashTable
protectedinherited

Definition at line 135 of file OnDemandServerMediaSubsession.hh.

◆ fFileName

char const* FileServerMediaSubsession::fFileName
protected

Definition at line 39 of file FileServerMediaSubsession.hh.

◆ fFileSize

u_int64_t FileServerMediaSubsession::fFileSize
protected

Definition at line 40 of file FileServerMediaSubsession.hh.

◆ fParentSession

ServerMediaSession* ServerMediaSubsession::fParentSession
protectedinherited

Definition at line 190 of file ServerMediaSession.hh.

◆ fPortNumForSDP

portNumBits ServerMediaSubsession::fPortNumForSDP
protectedinherited

Definition at line 192 of file ServerMediaSession.hh.

◆ fSDPLines

char* OnDemandServerMediaSubsession::fSDPLines
protectedinherited

Definition at line 134 of file OnDemandServerMediaSubsession.hh.

◆ fServerAddressForSDP

netAddressBits ServerMediaSubsession::fServerAddressForSDP
protectedinherited

Definition at line 191 of file ServerMediaSession.hh.


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