#include <ServerMediaSession.hh>
Inheritance diagram for ServerMediaSubsession:


Public Member Functions | |
| virtual | ~ServerMediaSubsession () |
| unsigned | trackNumber () const |
| char const * | trackId () |
| virtual char const * | sdpLines ()=0 |
| 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)=0 |
| virtual void | startStream (unsigned clientSessionId, void *streamToken, TaskFunc *rtcpRRHandler, void *rtcpRRHandlerClientData, unsigned short &rtpSeqNum, unsigned &rtpTimestamp, ServerRequestAlternativeByteHandler *serverRequestAlternativeByteHandler, void *serverRequestAlternativeByteHandlerClientData)=0 |
| 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) |
| virtual void | setStreamScale (unsigned clientSessionId, void *streamToken, float scale) |
| virtual float | getCurrentNPT (void *streamToken) |
| virtual FramedSource * | getStreamSource (void *streamToken) |
| virtual void | deleteStream (unsigned clientSessionId, void *&streamToken) |
| virtual void | testScaleFactor (float &scale) |
| virtual float | duration () const |
| virtual void | getAbsoluteTimeRange (char *&absStartTime, char *&absEndTime) const |
| void | setServerAddressAndPortForSDP (netAddressBits addressBits, portNumBits portBits) |
| UsageEnvironment & | envir () 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 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 | |
| ServerMediaSubsession (UsageEnvironment &env) | |
| char const * | rangeSDPLine () const |
| TaskToken & | nextTask () |
Protected Attributes | |
| ServerMediaSession * | fParentSession |
| netAddressBits | fServerAddressForSDP |
| portNumBits | fPortNumForSDP |
Private Attributes | |
| ServerMediaSubsession * | fNext |
| unsigned | fTrackNumber |
| char const * | fTrackId |
Friends | |
| class | ServerMediaSession |
| class | ServerMediaSubsessionIterator |
| class | MediaLookupTable |
Definition at line 124 of file ServerMediaSession.hh.
| ServerMediaSubsession::~ServerMediaSubsession | ( | ) | [virtual] |
Definition at line 339 of file ServerMediaSession.cpp.
References Medium::close(), fNext, and fTrackId.
00339 { 00340 delete[] (char*)fTrackId; 00341 Medium::close(fNext); 00342 }
| ServerMediaSubsession::ServerMediaSubsession | ( | UsageEnvironment & | env | ) | [protected] |
Definition at line 333 of file ServerMediaSession.cpp.
00334 : Medium(env), 00335 fParentSession(NULL), fServerAddressForSDP(0), fPortNumForSDP(0), 00336 fNext(NULL), fTrackNumber(0), fTrackId(NULL) { 00337 }
| unsigned ServerMediaSubsession::trackNumber | ( | ) | const [inline] |
Definition at line 128 of file ServerMediaSession.hh.
References fTrackNumber.
Referenced by OnDemandServerMediaSubsession::getStreamParameters(), and OnDemandServerMediaSubsession::sdpLines().
00128 { return fTrackNumber; }
| char const * ServerMediaSubsession::trackId | ( | ) |
Definition at line 344 of file ServerMediaSession.cpp.
References fTrackId, fTrackNumber, NULL, and strDup().
Referenced by PassiveServerMediaSubsession::sdpLines(), and OnDemandServerMediaSubsession::setSDPLinesFromRTPSink().
00344 { 00345 if (fTrackNumber == 0) return NULL; // not yet in a ServerMediaSession 00346 00347 if (fTrackId == NULL) { 00348 char buf[100]; 00349 sprintf(buf, "track%d", fTrackNumber); 00350 fTrackId = strDup(buf); 00351 } 00352 return fTrackId; 00353 }
| virtual char const* ServerMediaSubsession::sdpLines | ( | ) | [pure virtual] |
Implemented in OnDemandServerMediaSubsession, and PassiveServerMediaSubsession.
| virtual void ServerMediaSubsession::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 | |||
| ) | [pure virtual] |
Implemented in OnDemandServerMediaSubsession, and PassiveServerMediaSubsession.
| virtual void ServerMediaSubsession::startStream | ( | unsigned | clientSessionId, | |
| void * | streamToken, | |||
| TaskFunc * | rtcpRRHandler, | |||
| void * | rtcpRRHandlerClientData, | |||
| unsigned short & | rtpSeqNum, | |||
| unsigned & | rtpTimestamp, | |||
| ServerRequestAlternativeByteHandler * | serverRequestAlternativeByteHandler, | |||
| void * | serverRequestAlternativeByteHandlerClientData | |||
| ) | [pure virtual] |
Implemented in MPEG2TransportFileServerMediaSubsession, OnDemandServerMediaSubsession, and PassiveServerMediaSubsession.
| void ServerMediaSubsession::pauseStream | ( | unsigned | clientSessionId, | |
| void * | streamToken | |||
| ) | [virtual] |
Reimplemented in MPEG2TransportFileServerMediaSubsession, and OnDemandServerMediaSubsession.
Definition at line 355 of file ServerMediaSession.cpp.
| void ServerMediaSubsession::seekStream | ( | unsigned | clientSessionId, | |
| void * | streamToken, | |||
| double & | seekNPT, | |||
| double | streamDuration, | |||
| u_int64_t & | numBytes | |||
| ) | [virtual] |
Reimplemented in MPEG2TransportFileServerMediaSubsession, and OnDemandServerMediaSubsession.
Definition at line 359 of file ServerMediaSession.cpp.
| void ServerMediaSubsession::seekStream | ( | unsigned | clientSessionId, | |
| void * | streamToken, | |||
| char *& | absStart, | |||
| char *& | absEnd | |||
| ) | [virtual] |
Reimplemented in OnDemandServerMediaSubsession.
Definition at line 364 of file ServerMediaSession.cpp.
References NULL.
00365 { 00366 // default implementation: do nothing (but delete[] and assign "absStart" and "absEnd" to NULL, to show that we don't handle this) 00367 delete[] absStart; absStart = NULL; 00368 delete[] absEnd; absEnd = NULL; 00369 }
| void ServerMediaSubsession::nullSeekStream | ( | unsigned | clientSessionId, | |
| void * | streamToken | |||
| ) | [virtual] |
Reimplemented in OnDemandServerMediaSubsession.
Definition at line 370 of file ServerMediaSession.cpp.
| void ServerMediaSubsession::setStreamScale | ( | unsigned | clientSessionId, | |
| void * | streamToken, | |||
| float | scale | |||
| ) | [virtual] |
Reimplemented in MPEG2TransportFileServerMediaSubsession, and OnDemandServerMediaSubsession.
Definition at line 373 of file ServerMediaSession.cpp.
| float ServerMediaSubsession::getCurrentNPT | ( | void * | streamToken | ) | [virtual] |
Reimplemented in OnDemandServerMediaSubsession, and PassiveServerMediaSubsession.
Definition at line 377 of file ServerMediaSession.cpp.
| FramedSource * ServerMediaSubsession::getStreamSource | ( | void * | streamToken | ) | [virtual] |
Reimplemented in OnDemandServerMediaSubsession.
Definition at line 381 of file ServerMediaSession.cpp.
References NULL.
00381 { 00382 // default implementation: return NULL 00383 return NULL; 00384 }
| void ServerMediaSubsession::deleteStream | ( | unsigned | clientSessionId, | |
| void *& | streamToken | |||
| ) | [virtual] |
Reimplemented in MPEG2TransportFileServerMediaSubsession, OnDemandServerMediaSubsession, and PassiveServerMediaSubsession.
Definition at line 385 of file ServerMediaSession.cpp.
| void ServerMediaSubsession::testScaleFactor | ( | float & | scale | ) | [virtual] |
Reimplemented in MP3AudioFileServerMediaSubsession, MPEG2TransportFileServerMediaSubsession, and WAVAudioFileServerMediaSubsession.
Definition at line 390 of file ServerMediaSession.cpp.
00390 { 00391 // default implementation: Support scale = 1 only 00392 scale = 1; 00393 }
| float ServerMediaSubsession::duration | ( | ) | const [virtual] |
Reimplemented in AACAudioMatroskaFileServerMediaSubsession, AC3AudioMatroskaFileServerMediaSubsession, H264VideoMatroskaFileServerMediaSubsession, DVVideoFileServerMediaSubsession, MP3AudioFileServerMediaSubsession, MPEG1or2DemuxedServerMediaSubsession, MPEG2TransportFileServerMediaSubsession, WAVAudioFileServerMediaSubsession, T140TextMatroskaFileServerMediaSubsession, VorbisAudioMatroskaFileServerMediaSubsession, and VP8VideoMatroskaFileServerMediaSubsession.
Definition at line 395 of file ServerMediaSession.cpp.
Referenced by rangeSDPLine().
| void ServerMediaSubsession::getAbsoluteTimeRange | ( | char *& | absStartTime, | |
| char *& | absEndTime | |||
| ) | const [virtual] |
Definition at line 400 of file ServerMediaSession.cpp.
References NULL.
Referenced by rangeSDPLine().
00400 { 00401 // default implementation: We don't support seeking by 'absolute' time, so indicate this by setting both parameters to NULL: 00402 absStartTime = absEndTime = NULL; 00403 }
| void ServerMediaSubsession::setServerAddressAndPortForSDP | ( | netAddressBits | addressBits, | |
| portNumBits | portBits | |||
| ) |
Definition at line 405 of file ServerMediaSession.cpp.
References fPortNumForSDP, and fServerAddressForSDP.
00406 { 00407 fServerAddressForSDP = addressBits; 00408 fPortNumForSDP = portBits; 00409 }
| char const * ServerMediaSubsession::rangeSDPLine | ( | ) | const [protected] |
Definition at line 412 of file ServerMediaSession.cpp.
References duration(), ServerMediaSession::duration(), fParentSession, getAbsoluteTimeRange(), NULL, and strDup().
Referenced by PassiveServerMediaSubsession::sdpLines(), and OnDemandServerMediaSubsession::setSDPLinesFromRTPSink().
00412 { 00413 // First, check for the special case where we support seeking by 'absolute' time: 00414 char* absStart = NULL; char* absEnd = NULL; 00415 getAbsoluteTimeRange(absStart, absEnd); 00416 if (absStart != NULL) { 00417 char buf[100]; 00418 00419 if (absEnd != NULL) { 00420 sprintf(buf, "a=range:clock=%s-%s\r\n", absStart, absEnd); 00421 } else { 00422 sprintf(buf, "a=range:clock=%s-\r\n", absStart); 00423 } 00424 return strDup(buf); 00425 } 00426 00427 if (fParentSession == NULL) return NULL; 00428 00429 // If all of our parent's subsessions have the same duration 00430 // (as indicated by "fParentSession->duration() >= 0"), there's no "a=range:" line: 00431 if (fParentSession->duration() >= 0.0) return strDup(""); 00432 00433 // Use our own duration for a "a=range:" line: 00434 float ourDuration = duration(); 00435 if (ourDuration == 0.0) { 00436 return strDup("a=range:npt=0-\r\n"); 00437 } else { 00438 char buf[100]; 00439 sprintf(buf, "a=range:npt=0-%.3f\r\n", ourDuration); 00440 return strDup(buf); 00441 } 00442 }
| Boolean Medium::lookupByName | ( | UsageEnvironment & | env, | |
| char const * | mediumName, | |||
| Medium *& | resultMedium | |||
| ) | [static, inherited] |
Definition at line 41 of file Media.cpp.
References env, False, MediaLookupTable::lookup(), NULL, MediaLookupTable::ourMedia(), UsageEnvironment::setResultMsg(), and True.
Referenced by ServerMediaSession::lookupByName(), RTSPServer::lookupByName(), RTSPClient::lookupByName(), RTCPInstance::lookupByName(), MediaSource::lookupByName(), MediaSink::lookupByName(), MediaSession::lookupByName(), and DarwinInjector::lookupByName().
00042 { 00043 resultMedium = MediaLookupTable::ourMedia(env)->lookup(mediumName); 00044 if (resultMedium == NULL) { 00045 env.setResultMsg("Medium ", mediumName, " does not exist"); 00046 return False; 00047 } 00048 00049 return True; 00050 }
| void Medium::close | ( | UsageEnvironment & | env, | |
| char const * | mediumName | |||
| ) | [static, inherited] |
Definition at line 52 of file Media.cpp.
References env, MediaLookupTable::ourMedia(), and MediaLookupTable::remove().
Referenced by afterPlaying(), Medium::close(), closeMediaSinks(), OnDemandServerMediaSubsession::closeStreamSource(), continueAfterTEARDOWN(), WAVAudioFileSource::createNew(), QuickTimeFileSink::createNew(), QCELPAudioRTPSource::createNew(), MP3FileSource::createNew(), AVIFileSink::createNew(), AMRAudioRTPSource::createNew(), WAVAudioFileServerMediaSubsession::createNewStreamSource(), MPEG1or2DemuxedServerMediaSubsession::createNewStreamSource(), MediaSubsession::deInitiate(), ServerMediaSession::deleteAllSubsessions(), RTSPServerSupportingHTTPStreaming::RTSPClientConnectionSupportingHTTPStreaming::handleHTTPCmd_StreamingGET(), MediaSubsession::initiate(), MPEG1or2ProgramStreamFileDuration(), MPEG1or2Demux::noteElementaryStreamDeletion(), ByteStreamMultiFileSource::onSourceClosure1(), StreamState::reclaim(), RTSPServer::removeServerMediaSession(), ProxyServerMediaSession::resetDESCRIBEState(), OnDemandServerMediaSubsession::sdpLines(), shutdownStream(), subsessionAfterPlaying(), ClientTrickPlayState::updateStateOnScaleChange(), AMRDeinterleaver::~AMRDeinterleaver(), ByteStreamMultiFileSource::~ByteStreamMultiFileSource(), DarwinInjector::~DarwinInjector(), FramedFilter::~FramedFilter(), H264VideoRTPSink::~H264VideoRTPSink(), InputESSourceRecord::~InputESSourceRecord(), MatroskaFileParser::~MatroskaFileParser(), MatroskaFileServerDemux::~MatroskaFileServerDemux(), MPEG1or2Demux::~MPEG1or2Demux(), MPEG1or2FileServerDemux::~MPEG1or2FileServerDemux(), MPEG2TransportFileServerMediaSubsession::~MPEG2TransportFileServerMediaSubsession(), MPEG2TransportStreamFromPESSource::~MPEG2TransportStreamFromPESSource(), ProxyServerMediaSession::~ProxyServerMediaSession(), RTSPServerSupportingHTTPStreaming::RTSPClientConnectionSupportingHTTPStreaming::~RTSPClientConnectionSupportingHTTPStreaming(), ~ServerMediaSubsession(), StreamClientState::~StreamClientState(), StreamReplicator::~StreamReplicator(), and T140TextRTPSink::~T140TextRTPSink().
00052 { 00053 MediaLookupTable::ourMedia(env)->remove(name); 00054 }
| void Medium::close | ( | Medium * | medium | ) | [static, inherited] |
Definition at line 56 of file Media.cpp.
References Medium::close(), Medium::envir(), Medium::name(), and NULL.
00056 { 00057 if (medium == NULL) return; 00058 00059 close(medium->envir(), medium->name()); 00060 }
| UsageEnvironment& Medium::envir | ( | ) | const [inline, inherited] |
Definition at line 59 of file Media.hh.
References Medium::fEnviron.
Referenced by QuickTimeFileSink::addArbitraryString(), FileSink::addData(), RTCPInstance::addStreamSocket(), MPEG2IFrameIndexFromTransportStream::addToTail(), StreamParser::afterGettingBytes1(), DummySink::afterGettingFrame(), TCPStreamSink::afterGettingFrame(), T140IdleFilter::afterGettingFrame(), FileSink::afterGettingFrame(), MultiFramedRTPSink::afterGettingFrame1(), InputESSourceRecord::afterGettingFrame1(), MPEG2TransportStreamFramer::afterGettingFrame1(), MPEG2IFrameIndexFromTransportStream::afterGettingFrame1(), H264VideoStreamDiscreteFramer::afterGettingFrame1(), BasicUDPSink::afterGettingFrame1(), MPEG4VideoFileServerMediaSubsession::afterPlayingDummy1(), H264VideoFileServerMediaSubsession::afterPlayingDummy1(), MPEG4VideoStreamParser::analyzeVOLHeader(), announceStream(), RTSPServer::RTSPClientConnection::changeClientInputSocket(), MPEG4VideoFileServerMediaSubsession::checkForAuxSDPLine1(), H264VideoFileServerMediaSubsession::checkForAuxSDPLine1(), Medium::close(), ProxyServerMediaSubsession::closeStreamSource(), MPEG2IFrameIndexFromTransportStream::compactParseBuffer(), RTSPClient::connectionHandler1(), RTSPClient::connectToServer(), ProxyServerMediaSession::continueAfterDESCRIBE(), ProxyRTSPClient::continueAfterLivenessCommand(), ProxyRTSPClient::continueAfterSETUP(), T140TextRTPSink::continuePlaying(), QuickTimeFileSink::continuePlaying(), H264VideoRTPSink::continuePlaying(), AVIFileSink::continuePlaying(), VP8VideoMatroskaFileServerMediaSubsession::createNewRTPSink(), VorbisAudioMatroskaFileServerMediaSubsession::createNewRTPSink(), T140TextMatroskaFileServerMediaSubsession::createNewRTPSink(), ProxyServerMediaSubsession::createNewRTPSink(), MPEG4VideoFileServerMediaSubsession::createNewRTPSink(), MPEG2TransportUDPServerMediaSubsession::createNewRTPSink(), MPEG2TransportFileServerMediaSubsession::createNewRTPSink(), MPEG1or2VideoFileServerMediaSubsession::createNewRTPSink(), MPEG1or2DemuxedServerMediaSubsession::createNewRTPSink(), MP3AudioFileServerMediaSubsession::createNewRTPSink(), H264VideoFileServerMediaSubsession::createNewRTPSink(), H263plusVideoFileServerMediaSubsession::createNewRTPSink(), DVVideoFileServerMediaSubsession::createNewRTPSink(), AMRAudioFileServerMediaSubsession::createNewRTPSink(), ADTSAudioFileServerMediaSubsession::createNewRTPSink(), AC3AudioMatroskaFileServerMediaSubsession::createNewRTPSink(), AC3AudioFileServerMediaSubsession::createNewRTPSink(), AACAudioMatroskaFileServerMediaSubsession::createNewRTPSink(), ProxyServerMediaSubsession::createNewStreamSource(), MPEG4VideoFileServerMediaSubsession::createNewStreamSource(), MPEG2TransportUDPServerMediaSubsession::createNewStreamSource(), MPEG2TransportFileServerMediaSubsession::createNewStreamSource(), MPEG1or2VideoFileServerMediaSubsession::createNewStreamSource(), MPEG1or2DemuxedServerMediaSubsession::createNewStreamSource(), MP3AudioFileServerMediaSubsession::createNewStreamSource(), H264VideoMatroskaFileServerMediaSubsession::createNewStreamSource(), H264VideoFileServerMediaSubsession::createNewStreamSource(), H263plusVideoFileServerMediaSubsession::createNewStreamSource(), DVVideoFileServerMediaSubsession::createNewStreamSource(), AMRAudioFileServerMediaSubsession::createNewStreamSource(), ADTSAudioFileServerMediaSubsession::createNewStreamSource(), AC3AudioFileServerMediaSubsession::createNewStreamSource(), AMRDeinterleavingBuffer::deliverIncomingFrame(), MPEG2IFrameIndexFromTransportStream::deliverIndexRecord(), SegmentQueue::dequeue(), DeviceSource::DeviceSource(), WAVAudioFileSource::doGetNextFrame(), T140IdleFilter::doGetNextFrame(), MPEG2TransportStreamMultiplexor::doGetNextFrame(), MPEG2IFrameIndexFromTransportStream::doGetNextFrame(), MP3FileSource::doGetNextFrame(), H264FUAFragmenter::doGetNextFrame(), ByteStreamMultiFileSource::doGetNextFrame(), ByteStreamFileSource::doGetNextFrame(), BasicUDPSource::doGetNextFrame(), AMRAudioFileSource::doGetNextFrame(), ADTSAudioFileSource::doGetNextFrame(), MultiFramedRTPSource::doGetNextFrame1(), MP3FileSource::doGetNextFrame1(), ADUFromMP3Source::doGetNextFrame1(), SIPClient::doInviteStateMachine(), WAVAudioFileSource::doReadFromFile(), ByteStreamFileSource::doReadFromFile(), MPEG1or2VideoRTPSink::doSpecialFrameHandling(), MP3ADURTPSink::doSpecialFrameHandling(), H263plusVideoRTPSink::doSpecialFrameHandling(), WAVAudioFileSource::doStopGettingFrames(), T140IdleFilter::doStopGettingFrames(), MultiFramedRTPSource::doStopGettingFrames(), FramedSource::doStopGettingFrames(), ByteStreamFileSource::doStopGettingFrames(), BasicUDPSource::doStopGettingFrames(), SegmentQueue::enqueueNewSegment(), StreamParser::ensureValidBytes1(), MediaSubsession::env(), SubsessionIOState::envir(), RTSPServer::RTSPClientSession::envir(), RTSPServer::RTSPClientConnection::envir(), RTPInterface::envir(), AVISubsessionIOState::envir(), ServerMediaSession::generateSDPDescription(), RTPSource::getAttributes(), MP3FileSource::getAttributes(), MP3ADUTranscoder::getAttributes(), MediaSource::getAttributes(), MPEG4VideoFileServerMediaSubsession::getAuxSDPLine(), H264VideoFileServerMediaSubsession::getAuxSDPLine(), getMPEG1or2TimeCode(), FramedSource::getNextFrame(), getOptions(), DVVideoStreamFramer::getProfile(), SIPClient::getResponse(), SIPClient::getResponseCode(), getSDPDescription(), OnDemandServerMediaSubsession::getStreamParameters(), RTSPClient::handleAlternativeRequestByte1(), RTSPClient::handleGET_PARAMETERResponse(), RTSPServerSupportingHTTPStreaming::RTSPClientConnectionSupportingHTTPStreaming::handleHTTPCmd_StreamingGET(), RTSPClient::handleIncomingRequest(), RTSPClient::handlePLAYResponse(), RTSPClient::handleRequestError(), RTSPClient::handleResponseBytes(), RTSPClient::handleSETUPResponse(), RTSPServer::incomingConnectionHandler(), RTSPClient::incomingDataHandler1(), RTCPInstance::incomingReportHandler1(), MP3FileSource::initializeStream(), MediaSession::initializeWithSDP(), MediaSession::initiateByMediaType(), SIPClient::invite1(), DynamicRTSPServer::lookupServerMediaSession(), MatroskaDemux::MatroskaDemux(), MatroskaFile::MatroskaFile(), MPEG4GenericRTPSource::MPEG4GenericRTPSource(), MultiFramedRTPSource::networkReadHandler1(), MatroskaDemux::newDemuxedTrack(), MPEG1or2FileServerDemux::newElementaryStream(), MPEG1or2Demux::newElementaryStream(), MPEG4GenericBufferedPacket::nextEnclosedFrameSize(), AMRBufferedPacket::nextEnclosedFrameSize(), T140IdleFilter::onSourceClosure(), RTSPClient::openConnection(), MPEG2TransportStreamIndexFile::openFid(), MPEG2IFrameIndexFromTransportStream::parseFrame(), AC3AudioStreamParser::parseFrame(), MPEGProgramStreamParser::parsePackHeader(), MPEGProgramStreamParser::parsePESPacket(), SIPClient::parseResponseCode(), MediaSession::parseSDPLine(), MPEG1or2VideoStreamParser::parseSlice(), MatroskaFileParser::parseStartOfFile(), MPEGProgramStreamParser::parseSystemHeader(), MPEG4VideoStreamParser::parseVideoObjectLayer(), MPEG4VideoStreamParser::parseVideoObjectPlane(), MPEG4VideoStreamParser::parseVisualObject(), TCPStreamSink::processBuffer(), SIPClient::processURL(), AC3AudioStreamParser::readAndSaveAFrame(), MPEG1or2Demux::registerReadInterest(), RTCPInstance::reschedule(), RTSPClient::resendCommand(), ProxyRTSPClient::reset(), RTSPClient::resetTCPSockets(), RTSPClient::responseHandlerForHTTP_GET1(), RTSPServer::rtspURLPrefix(), RTCPInstance::schedule(), ProxyRTSPClient::scheduleDESCRIBECommand(), ProxyRTSPClient::scheduleLivenessCommand(), OnDemandServerMediaSubsession::sdpLines(), SIPClient::sendACK(), SIPClient::sendBYE(), SIPClient::sendINVITE(), MultiFramedRTPSink::sendPacketIfNecessary(), SIPClient::sendRequest(), RTSPClient::sendRequest(), DarwinInjector::setDestination(), RTSPClient::setupHTTPTunneling1(), setupNextSubsession(), RTSPServer::setUpTunnelingOverHTTP(), QuickTimeFileSink::setWord(), AVIFileSink::setWord(), QuickTimeFileSink::setWord64(), shutdownStream(), SIPClient::SIPClient(), TCPStreamSink::socketWritableHandler1(), AMRAudioRTPSink::sourceIsCompatibleWithUs(), QuickTimeFileSink::startPlaying(), StreamState::startPlaying(), MediaSink::startPlaying(), AVIFileSink::startPlaying(), startPlayingSession(), PassiveServerMediaSubsession::startStream(), MediaSink::stopPlaying(), ProxyServerMediaSubsession::subsessionByeHandler(), tearDownSession(), SIPClient::timerAHandler(), SIPClient::timerBHandler(), SIPClient::timerDHandler(), ClientTrickPlayState::updateStateOnScaleChange(), MPEG2TransportStreamFramer::updateTSPacketDurationEstimate(), BasicUDPSource::~BasicUDPSource(), ByteStreamFileSource::~ByteStreamFileSource(), DeviceSource::~DeviceSource(), ProxyServerMediaSession::~ProxyServerMediaSession(), ProxyServerMediaSubsession::~ProxyServerMediaSubsession(), RTSPServer::~RTSPServer(), StreamClientState::~StreamClientState(), T140IdleFilter::~T140IdleFilter(), and WAVAudioFileSource::~WAVAudioFileSource().
00059 {return fEnviron;}
| char const* Medium::name | ( | ) | const [inline, inherited] |
Definition at line 61 of file Media.hh.
References Medium::fMediumName.
Referenced by QuickTimeFileSink::addAtom_hdlr2(), Medium::close(), MP3ADUTranscoder::createNew(), MP3FromADUSource::createNew(), ADUFromMP3Source::createNew(), and MP3FileSource::initializeStream().
00061 {return fMediumName;}
| Boolean Medium::isSource | ( | ) | const [virtual, inherited] |
Reimplemented in MediaSource.
Definition at line 62 of file Media.cpp.
References False.
Referenced by MediaSource::lookupByName().
00062 { 00063 return False; // default implementation 00064 }
| Boolean Medium::isSink | ( | ) | const [virtual, inherited] |
| Boolean Medium::isRTCPInstance | ( | ) | const [virtual, inherited] |
Reimplemented in RTCPInstance.
Definition at line 70 of file Media.cpp.
References False.
Referenced by RTCPInstance::lookupByName().
00070 { 00071 return False; // default implementation 00072 }
| Boolean Medium::isRTSPClient | ( | ) | const [virtual, inherited] |
Reimplemented in RTSPClient.
Definition at line 74 of file Media.cpp.
References False.
Referenced by RTSPClient::lookupByName().
00074 { 00075 return False; // default implementation 00076 }
| Boolean Medium::isRTSPServer | ( | ) | const [virtual, inherited] |
Reimplemented in RTSPServer.
Definition at line 78 of file Media.cpp.
References False.
Referenced by RTSPServer::lookupByName().
00078 { 00079 return False; // default implementation 00080 }
| Boolean Medium::isMediaSession | ( | ) | const [virtual, inherited] |
Reimplemented in MediaSession.
Definition at line 82 of file Media.cpp.
References False.
Referenced by MediaSession::lookupByName().
00082 { 00083 return False; // default implementation 00084 }
| Boolean Medium::isServerMediaSession | ( | ) | const [virtual, inherited] |
Reimplemented in ServerMediaSession.
Definition at line 86 of file Media.cpp.
References False.
Referenced by ServerMediaSession::lookupByName().
00086 { 00087 return False; // default implementation 00088 }
| Boolean Medium::isDarwinInjector | ( | ) | const [virtual, inherited] |
Reimplemented in DarwinInjector.
Definition at line 90 of file Media.cpp.
References False.
Referenced by DarwinInjector::lookupByName().
00090 { 00091 return False; // default implementation 00092 }
| TaskToken& Medium::nextTask | ( | ) | [inline, protected, inherited] |
Definition at line 78 of file Media.hh.
References Medium::fNextTask.
Referenced by BasicUDPSink::afterGettingFrame1(), MPEG4VideoFileServerMediaSubsession::afterPlayingDummy1(), H264VideoFileServerMediaSubsession::afterPlayingDummy1(), MPEG4VideoFileServerMediaSubsession::checkForAuxSDPLine1(), H264VideoFileServerMediaSubsession::checkForAuxSDPLine1(), MP3FileSource::doGetNextFrame(), AMRAudioFileSource::doGetNextFrame(), ADTSAudioFileSource::doGetNextFrame(), MultiFramedRTPSource::doGetNextFrame1(), WAVAudioFileSource::doReadFromFile(), ByteStreamFileSource::doReadFromFile(), MultiFramedRTPSource::doStopGettingFrames(), FramedSource::doStopGettingFrames(), ByteStreamFileSource::doStopGettingFrames(), RTCPInstance::reschedule(), RTCPInstance::schedule(), MultiFramedRTPSink::sendPacketIfNecessary(), and MediaSink::stopPlaying().
00078 { 00079 return fNextTask; 00080 }
friend class ServerMediaSession [friend] |
Definition at line 192 of file ServerMediaSession.hh.
friend class ServerMediaSubsessionIterator [friend] |
Definition at line 193 of file ServerMediaSession.hh.
friend class MediaLookupTable [friend, inherited] |
ServerMediaSession* ServerMediaSubsession::fParentSession [protected] |
Definition at line 187 of file ServerMediaSession.hh.
Referenced by ProxyServerMediaSubsession::closeStreamSource(), ProxyRTSPClient::continueAfterSETUP(), ProxyServerMediaSubsession::createNewStreamSource(), rangeSDPLine(), and ProxyServerMediaSubsession::verbosityLevel().
Definition at line 188 of file ServerMediaSession.hh.
Referenced by OnDemandServerMediaSubsession::setSDPLinesFromRTPSink(), and setServerAddressAndPortForSDP().
portNumBits ServerMediaSubsession::fPortNumForSDP [protected] |
Definition at line 189 of file ServerMediaSession.hh.
Referenced by OnDemandServerMediaSubsession::setSDPLinesFromRTPSink(), and setServerAddressAndPortForSDP().
Reimplemented in ProxyServerMediaSubsession.
Definition at line 194 of file ServerMediaSession.hh.
Referenced by ServerMediaSession::addSubsession(), ServerMediaSubsessionIterator::next(), and ~ServerMediaSubsession().
unsigned ServerMediaSubsession::fTrackNumber [private] |
Reimplemented in AACAudioMatroskaFileServerMediaSubsession, AC3AudioMatroskaFileServerMediaSubsession, H264VideoMatroskaFileServerMediaSubsession, MP3AudioMatroskaFileServerMediaSubsession, T140TextMatroskaFileServerMediaSubsession, VorbisAudioMatroskaFileServerMediaSubsession, and VP8VideoMatroskaFileServerMediaSubsession.
Definition at line 196 of file ServerMediaSession.hh.
Referenced by trackId(), and trackNumber().
char const* ServerMediaSubsession::fTrackId [private] |
Definition at line 197 of file ServerMediaSession.hh.
Referenced by trackId(), and ~ServerMediaSubsession().
1.5.2