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

#include <MP3AudioMatroskaFileServerMediaSubsession.hh>

Inheritance diagram for MP3AudioMatroskaFileServerMediaSubsession:
Inheritance graph
[legend]
Collaboration diagram for MP3AudioMatroskaFileServerMediaSubsession:
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 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 MP3AudioMatroskaFileServerMediaSubsessioncreateNew (MatroskaFileServerDemux &demux, MatroskaTrack *track, Boolean generateADUs=False, Interleaving *interleaving=NULL)
 
static MP3AudioFileServerMediaSubsessioncreateNew (UsageEnvironment &env, char const *fileName, Boolean reuseFirstSource, Boolean generateADUs, Interleaving *interleaving)
 
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

FramedSourcecreateNewStreamSourceCommon (FramedSource *baseMP3Source, unsigned mp3NumBytes, unsigned &estBitrate)
 
void getBaseStreams (FramedSource *frontStream, FramedSource *&sourceMP3Stream, ADUFromMP3Source *&aduStream)
 
virtual void seekStreamSource (FramedSource *inputSource, char *&absStart, char *&absEnd)
 
virtual void setStreamSourceScale (FramedSource *inputSource, float scale)
 
virtual RTPSinkcreateNewRTPSink (Groupsock *rtpGroupsock, unsigned char rtpPayloadTypeIfDynamic, FramedSource *inputSource)
 
virtual void testScaleFactor (float &scale)
 
virtual float duration () const
 
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 setStreamSourceDuration (FramedSource *inputSource, double streamDuration, u_int64_t &numBytes)
 
virtual void closeStreamSource (FramedSource *inputSource)
 
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

Boolean fGenerateADUs
 
InterleavingfInterleaving
 
float fFileDuration
 
char const * fFileName
 
u_int64_t fFileSize
 
char * fSDPLines
 
HashTablefDestinationsHashTable
 
ServerMediaSessionfParentSession
 
netAddressBits fServerAddressForSDP
 
portNumBits fPortNumForSDP
 

Private Member Functions

 MP3AudioMatroskaFileServerMediaSubsession (MatroskaFileServerDemux &demux, MatroskaTrack *track, Boolean generateADUs, Interleaving *interleaving)
 
virtual ~MP3AudioMatroskaFileServerMediaSubsession ()
 
virtual void seekStreamSource (FramedSource *inputSource, double &seekNPT, double streamDuration, u_int64_t &numBytes)
 
virtual FramedSourcecreateNewStreamSource (unsigned clientSessionId, unsigned &estBitrate)
 

Private Attributes

MatroskaFileServerDemuxfOurDemux
 
unsigned fTrackNumber
 

Detailed Description

Definition at line 33 of file MP3AudioMatroskaFileServerMediaSubsession.hh.

Constructor & Destructor Documentation

MP3AudioMatroskaFileServerMediaSubsession::MP3AudioMatroskaFileServerMediaSubsession ( MatroskaFileServerDemux demux,
MatroskaTrack track,
Boolean  generateADUs,
Interleaving interleaving 
)
private
virtual MP3AudioMatroskaFileServerMediaSubsession::~MP3AudioMatroskaFileServerMediaSubsession ( )
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
virtual Groupsock* OnDemandServerMediaSubsession::createGroupsock ( struct in_addr const &  addr,
Port  port 
)
protectedvirtualinherited
static MP3AudioMatroskaFileServerMediaSubsession* MP3AudioMatroskaFileServerMediaSubsession::createNew ( MatroskaFileServerDemux demux,
MatroskaTrack track,
Boolean  generateADUs = False,
Interleaving interleaving = NULL 
)
static
static MP3AudioFileServerMediaSubsession* MP3AudioFileServerMediaSubsession::createNew ( UsageEnvironment env,
char const *  fileName,
Boolean  reuseFirstSource,
Boolean  generateADUs,
Interleaving interleaving 
)
staticinherited
virtual RTPSink* MP3AudioFileServerMediaSubsession::createNewRTPSink ( Groupsock rtpGroupsock,
unsigned char  rtpPayloadTypeIfDynamic,
FramedSource inputSource 
)
protectedvirtualinherited
virtual FramedSource* MP3AudioMatroskaFileServerMediaSubsession::createNewStreamSource ( unsigned  clientSessionId,
unsigned &  estBitrate 
)
privatevirtual

Reimplemented from MP3AudioFileServerMediaSubsession.

FramedSource* MP3AudioFileServerMediaSubsession::createNewStreamSourceCommon ( FramedSource baseMP3Source,
unsigned  mp3NumBytes,
unsigned &  estBitrate 
)
protectedinherited
virtual RTCPInstance* OnDemandServerMediaSubsession::createRTCP ( Groupsock RTCPgs,
unsigned  totSessionBW,
unsigned char const *  cname,
RTPSink sink 
)
protectedvirtualinherited
virtual void OnDemandServerMediaSubsession::deleteStream ( unsigned  clientSessionId,
void *&  streamToken 
)
protectedvirtualinherited

Reimplemented from ServerMediaSubsession.

Reimplemented in MPEG2TransportFileServerMediaSubsession.

virtual float MP3AudioFileServerMediaSubsession::duration ( ) const
protectedvirtualinherited

Reimplemented from ServerMediaSubsession.

UsageEnvironment& Medium::envir ( ) const
inlineinherited
virtual void ServerMediaSubsession::getAbsoluteTimeRange ( char *&  absStartTime,
char *&  absEndTime 
) const
virtualinherited
virtual char const* OnDemandServerMediaSubsession::getAuxSDPLine ( RTPSink rtpSink,
FramedSource inputSource 
)
protectedvirtualinherited
void MP3AudioFileServerMediaSubsession::getBaseStreams ( FramedSource frontStream,
FramedSource *&  sourceMP3Stream,
ADUFromMP3Source *&  aduStream 
)
protectedinherited
virtual float OnDemandServerMediaSubsession::getCurrentNPT ( void *  streamToken)
protectedvirtualinherited

Reimplemented from ServerMediaSubsession.

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

Implements 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::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:83
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
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 MP3AudioMatroskaFileServerMediaSubsession::seekStreamSource ( FramedSource inputSource,
double &  seekNPT,
double  streamDuration,
u_int64_t &  numBytes 
)
privatevirtual

Reimplemented from MP3AudioFileServerMediaSubsession.

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 MP3AudioFileServerMediaSubsession::setStreamSourceScale ( FramedSource inputSource,
float  scale 
)
protectedvirtualinherited

Reimplemented from OnDemandServerMediaSubsession.

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

Reimplemented from ServerMediaSubsession.

char const* ServerMediaSubsession::trackId ( )
inherited
unsigned ServerMediaSubsession::trackNumber ( ) const
inlineinherited

Definition at line 122 of file ServerMediaSession.hh.

References ServerMediaSubsession::fTrackNumber.

122 { return fTrackNumber; }

Field Documentation

HashTable* OnDemandServerMediaSubsession::fDestinationsHashTable
protectedinherited

Definition at line 135 of file OnDemandServerMediaSubsession.hh.

float MP3AudioFileServerMediaSubsession::fFileDuration
protectedinherited

Definition at line 70 of file MP3AudioFileServerMediaSubsession.hh.

char const* FileServerMediaSubsession::fFileName
protectedinherited

Definition at line 39 of file FileServerMediaSubsession.hh.

u_int64_t FileServerMediaSubsession::fFileSize
protectedinherited

Definition at line 40 of file FileServerMediaSubsession.hh.

Boolean MP3AudioFileServerMediaSubsession::fGenerateADUs
protectedinherited

Definition at line 68 of file MP3AudioFileServerMediaSubsession.hh.

Interleaving* MP3AudioFileServerMediaSubsession::fInterleaving
protectedinherited

Definition at line 69 of file MP3AudioFileServerMediaSubsession.hh.

MatroskaFileServerDemux& MP3AudioMatroskaFileServerMediaSubsession::fOurDemux
private

Definition at line 53 of file MP3AudioMatroskaFileServerMediaSubsession.hh.

ServerMediaSession* ServerMediaSubsession::fParentSession
protectedinherited

Definition at line 190 of file ServerMediaSession.hh.

portNumBits ServerMediaSubsession::fPortNumForSDP
protectedinherited

Definition at line 192 of file ServerMediaSession.hh.

char* OnDemandServerMediaSubsession::fSDPLines
protectedinherited

Definition at line 134 of file OnDemandServerMediaSubsession.hh.

netAddressBits ServerMediaSubsession::fServerAddressForSDP
protectedinherited

Definition at line 191 of file ServerMediaSession.hh.

unsigned MP3AudioMatroskaFileServerMediaSubsession::fTrackNumber
private

Definition at line 54 of file MP3AudioMatroskaFileServerMediaSubsession.hh.


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