MPEG1or2FileServerDemux Class Reference

#include <MPEG1or2FileServerDemux.hh>

Inheritance diagram for MPEG1or2FileServerDemux:

Inheritance graph
[legend]
Collaboration diagram for MPEG1or2FileServerDemux:

Collaboration graph
[legend]

Public Member Functions

ServerMediaSubsessionnewAudioServerMediaSubsession ()
ServerMediaSubsessionnewVideoServerMediaSubsession (Boolean iFramesOnly=False, double vshPeriod=5.0)
ServerMediaSubsessionnewAC3AudioServerMediaSubsession ()
unsigned fileSize () const
float fileDuration () const
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 MPEG1or2FileServerDemuxcreateNew (UsageEnvironment &env, char const *fileName, Boolean reuseFirstSource)
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

TaskTokennextTask ()

Private Member Functions

 MPEG1or2FileServerDemux (UsageEnvironment &env, char const *fileName, Boolean reuseFirstSource)
virtual ~MPEG1or2FileServerDemux ()
MPEG1or2DemuxedElementaryStreamnewElementaryStream (unsigned clientSessionId, u_int8_t streamIdTag)

Private Attributes

char const * fFileName
unsigned fFileSize
float fFileDuration
Boolean fReuseFirstSource
MPEG1or2DemuxfSession0Demux
MPEG1or2DemuxfLastCreatedDemux
unsigned fLastClientSessionId

Friends

class MPEG1or2DemuxedServerMediaSubsession
class MediaLookupTable

Detailed Description

Definition at line 31 of file MPEG1or2FileServerDemux.hh.


Constructor & Destructor Documentation

MPEG1or2FileServerDemux::MPEG1or2FileServerDemux ( UsageEnvironment env,
char const *  fileName,
Boolean  reuseFirstSource 
) [private]

Definition at line 35 of file MPEG1or2FileServerDemux.cpp.

References env, fFileDuration, fFileName, fFileSize, MPEG1or2ProgramStreamFileDuration(), and strDup().

Referenced by createNew().

MPEG1or2FileServerDemux::~MPEG1or2FileServerDemux (  )  [private, virtual]

Definition at line 44 of file MPEG1or2FileServerDemux.cpp.

References Medium::close(), fFileName, and fSession0Demux.

00044                                                   {
00045   Medium::close(fSession0Demux);
00046   delete[] (char*)fFileName;
00047 }


Member Function Documentation

MPEG1or2FileServerDemux * MPEG1or2FileServerDemux::createNew ( UsageEnvironment env,
char const *  fileName,
Boolean  reuseFirstSource 
) [static]

Definition at line 26 of file MPEG1or2FileServerDemux.cpp.

References env, and MPEG1or2FileServerDemux().

Referenced by createNewSMS(), and main().

00027                                                              {
00028   return new MPEG1or2FileServerDemux(env, fileName, reuseFirstSource);
00029 }

ServerMediaSubsession * MPEG1or2FileServerDemux::newAudioServerMediaSubsession (  ) 

Definition at line 50 of file MPEG1or2FileServerDemux.cpp.

References MPEG1or2DemuxedServerMediaSubsession::createNew(), and fReuseFirstSource.

00050                                                        {
00051   return MPEG1or2DemuxedServerMediaSubsession::createNew(*this, 0xC0, fReuseFirstSource);
00052 }

ServerMediaSubsession * MPEG1or2FileServerDemux::newVideoServerMediaSubsession ( Boolean  iFramesOnly = False,
double  vshPeriod = 5.0 
)

Definition at line 55 of file MPEG1or2FileServerDemux.cpp.

References MPEG1or2DemuxedServerMediaSubsession::createNew(), and fReuseFirstSource.

00056                                                                          {
00057   return MPEG1or2DemuxedServerMediaSubsession::createNew(*this, 0xE0, fReuseFirstSource,
00058                                                          iFramesOnly, vshPeriod);
00059 }

ServerMediaSubsession * MPEG1or2FileServerDemux::newAC3AudioServerMediaSubsession (  ) 

Definition at line 62 of file MPEG1or2FileServerDemux.cpp.

References MPEG1or2DemuxedServerMediaSubsession::createNew(), and fReuseFirstSource.

00062                                                           {
00063   return MPEG1or2DemuxedServerMediaSubsession::createNew(*this, 0xBD, fReuseFirstSource);
00064   // because, in a VOB file, the AC3 audio has stream id 0xBD
00065 }

unsigned MPEG1or2FileServerDemux::fileSize (  )  const [inline]

Definition at line 43 of file MPEG1or2FileServerDemux.hh.

References fFileSize.

Referenced by MPEG1or2DemuxedServerMediaSubsession::seekStreamSource().

00043 { return fFileSize; }

float MPEG1or2FileServerDemux::fileDuration (  )  const [inline]

Definition at line 44 of file MPEG1or2FileServerDemux.hh.

References fFileDuration.

Referenced by MPEG1or2DemuxedServerMediaSubsession::duration().

00044 { return fFileDuration; }

MPEG1or2DemuxedElementaryStream * MPEG1or2FileServerDemux::newElementaryStream ( unsigned  clientSessionId,
u_int8_t  streamIdTag 
) [private]

Definition at line 68 of file MPEG1or2FileServerDemux.cpp.

References MPEG1or2Demux::createNew(), ByteStreamFileSource::createNew(), Medium::envir(), False, fFileName, fLastClientSessionId, fLastCreatedDemux, fSession0Demux, MPEG1or2Demux::newElementaryStream(), NULL, and True.

Referenced by MPEG1or2DemuxedServerMediaSubsession::createNewStreamSource().

00069                                                                    {
00070   MPEG1or2Demux* demuxToUse;
00071   if (clientSessionId == 0) {
00072     // 'Session 0' is treated especially, because its audio & video streams
00073     // are created and destroyed one-at-a-time, rather than both streams being
00074     // created, and then (later) both streams being destroyed (as is the case
00075     // for other ('real') session ids).  Because of this, a separate demux is
00076     // used for session 0, and its deletion is managed by us, rather than
00077     // happening automatically.
00078     if (fSession0Demux == NULL) {
00079       // Open our input file as a 'byte-stream file source':
00080       ByteStreamFileSource* fileSource
00081         = ByteStreamFileSource::createNew(envir(), fFileName);
00082       if (fileSource == NULL) return NULL;
00083       fSession0Demux = MPEG1or2Demux::createNew(envir(), fileSource, False/*note!*/);
00084     }
00085     demuxToUse = fSession0Demux;
00086   } else {
00087     // First, check whether this is a new client session.  If so, create a new
00088     // demux for it:
00089     if (clientSessionId != fLastClientSessionId) {
00090       // Open our input file as a 'byte-stream file source':
00091       ByteStreamFileSource* fileSource
00092         = ByteStreamFileSource::createNew(envir(), fFileName);
00093       if (fileSource == NULL) return NULL;
00094 
00095       fLastCreatedDemux = MPEG1or2Demux::createNew(envir(), fileSource, True);
00096       // Note: We tell the demux to delete itself when its last
00097       // elementary stream is deleted.
00098       fLastClientSessionId = clientSessionId;
00099       // Note: This code relies upon the fact that the creation of streams for
00100       // different client sessions do not overlap - so one "MPEG1or2Demux" is used
00101       // at a time.
00102     }
00103     demuxToUse = fLastCreatedDemux;
00104   }
00105 
00106   if (demuxToUse == NULL) return NULL; // shouldn't happen
00107 
00108   return demuxToUse->newElementaryStream(streamIdTag);
00109 }

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(), MP3HTTPSource::createNew(), MP3FileSource::createNew(), AVIFileSink::createNew(), AMRAudioRTPSource::createNew(), WAVAudioFileServerMediaSubsession::createNewStreamSource(), MPEG1or2DemuxedServerMediaSubsession::createNewStreamSource(), MediaSubsession::deInitiate(), RTSPServerSupportingHTTPStreaming::RTSPClientSessionSupportingHTTPStreaming::handleHTTPCmd_StreamingGET(), MediaSubsession::initiate(), MPEG1or2ProgramStreamFileDuration(), MPEG1or2Demux::noteElementaryStreamDeletion(), ByteStreamMultiFileSource::onSourceClosure1(), StreamState::reclaim(), RTSPServer::removeServerMediaSession(), OnDemandServerMediaSubsession::sdpLines(), shutdownStream(), T140TextRTPSink::stopPlaying(), H264VideoRTPSink::stopPlaying(), subsessionAfterPlaying(), ClientTrickPlayState::updateStateOnScaleChange(), AMRDeinterleaver::~AMRDeinterleaver(), ByteStreamMultiFileSource::~ByteStreamMultiFileSource(), DarwinInjector::~DarwinInjector(), FramedFilter::~FramedFilter(), InputESSourceRecord::~InputESSourceRecord(), MatroskaFileParser::~MatroskaFileParser(), MatroskaFileServerDemux::~MatroskaFileServerDemux(), MPEG1or2Demux::~MPEG1or2Demux(), ~MPEG1or2FileServerDemux(), MPEG2TransportFileServerMediaSubsession::~MPEG2TransportFileServerMediaSubsession(), MPEG2TransportStreamFromPESSource::~MPEG2TransportStreamFromPESSource(), RTSPServerSupportingHTTPStreaming::RTSPClientSessionSupportingHTTPStreaming::~RTSPClientSessionSupportingHTTPStreaming(), ServerMediaSession::~ServerMediaSession(), ServerMediaSubsession::~ServerMediaSubsession(), StreamClientState::~StreamClientState(), and StreamReplicator::~StreamReplicator().

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(), T140IdleFilter::afterGettingFrame(), MultiFramedRTPSink::afterGettingFrame1(), InputESSourceRecord::afterGettingFrame1(), MPEG2TransportStreamFramer::afterGettingFrame1(), MPEG2IFrameIndexFromTransportStream::afterGettingFrame1(), H264VideoStreamDiscreteFramer::afterGettingFrame1(), BasicUDPSink::afterGettingFrame1(), MPEG4VideoFileServerMediaSubsession::afterPlayingDummy1(), H264VideoFileServerMediaSubsession::afterPlayingDummy1(), MPEG4VideoStreamParser::analyzeVOLHeader(), announceStream(), RTSPServer::RTSPClientSession::changeClientInputSocket(), MPEG4VideoFileServerMediaSubsession::checkForAuxSDPLine1(), H264VideoFileServerMediaSubsession::checkForAuxSDPLine1(), Medium::close(), MPEG2IFrameIndexFromTransportStream::compactParseBuffer(), RTSPClient::connectionHandler1(), RTSPClient::connectToServer(), T140TextRTPSink::continuePlaying(), QuickTimeFileSink::continuePlaying(), H264VideoRTPSink::continuePlaying(), AVIFileSink::continuePlaying(), VP8VideoMatroskaFileServerMediaSubsession::createNewRTPSink(), VorbisAudioMatroskaFileServerMediaSubsession::createNewRTPSink(), T140TextMatroskaFileServerMediaSubsession::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(), 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(), MPEG2IFrameIndexFromTransportStream::doGetNextFrame(), MP3FileSource::doGetNextFrame(), H264FUAFragmenter::doGetNextFrame(), ByteStreamMultiFileSource::doGetNextFrame(), ByteStreamFileSource::doGetNextFrame(), BasicUDPSource::doGetNextFrame(), AMRAudioFileSource::doGetNextFrame(), ADTSAudioFileSource::doGetNextFrame(), MultiFramedRTPSource::doGetNextFrame1(), MP3FileSource::doGetNextFrame1(), ADUFromMP3Source::doGetNextFrame1(), SIPClient::doInviteStateMachine(), ByteStreamFileSource::doReadFromFile(), MPEG1or2VideoRTPSink::doSpecialFrameHandling(), MP3ADURTPSink::doSpecialFrameHandling(), H263plusVideoRTPSink::doSpecialFrameHandling(), T140IdleFilter::doStopGettingFrames(), ByteStreamFileSource::doStopGettingFrames(), BasicUDPSource::doStopGettingFrames(), SegmentQueue::enqueueNewSegment(), StreamParser::ensureValidBytes1(), MediaSubsession::env(), SubsessionIOState::envir(), RTSPServer::RTSPClientSession::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::handleGET_PARAMETERResponse(), RTSPServerSupportingHTTPStreaming::RTSPClientSessionSupportingHTTPStreaming::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(), MatroskaDemux::newDemuxedTrack(), newElementaryStream(), MPEG1or2Demux::newElementaryStream(), MPEG4GenericBufferedPacket::nextEnclosedFrameSize(), AMRBufferedPacket::nextEnclosedFrameSize(), 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(), RTSPClient::resetTCPSockets(), RTSPClient::responseHandlerForHTTP_GET1(), RTSPServer::rtspURLPrefix(), RTCPInstance::schedule(), 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(), tearDownSession(), SIPClient::timerAHandler(), SIPClient::timerBHandler(), SIPClient::timerDHandler(), ClientTrickPlayState::updateStateOnScaleChange(), MPEG2TransportStreamFramer::updateTSPacketDurationEstimate(), BasicUDPSource::~BasicUDPSource(), ByteStreamFileSource::~ByteStreamFileSource(), DeviceSource::~DeviceSource(), RTSPServer::~RTSPServer(), StreamClientState::~StreamClientState(), and T140IdleFilter::~T140IdleFilter().

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]

Reimplemented in MediaSink.

Definition at line 66 of file Media.cpp.

References False.

Referenced by MediaSink::lookupByName().

00066                              {
00067   return False; // default implementation
00068 }

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(), WAVAudioFileSource::doGetNextFrame(), MP3FileSource::doGetNextFrame(), AMRAudioFileSource::doGetNextFrame(), ADTSAudioFileSource::doGetNextFrame(), MultiFramedRTPSource::doGetNextFrame1(), ByteStreamFileSource::doReadFromFile(), RTCPInstance::reschedule(), RTCPInstance::schedule(), MultiFramedRTPSink::sendPacketIfNecessary(), and MediaSink::stopPlaying().

00078                         {
00079         return fNextTask;
00080   }


Friends And Related Function Documentation

friend class MPEG1or2DemuxedServerMediaSubsession [friend]

Definition at line 53 of file MPEG1or2FileServerDemux.hh.

friend class MediaLookupTable [friend, inherited]

Definition at line 74 of file Media.hh.


Field Documentation

char const* MPEG1or2FileServerDemux::fFileName [private]

Definition at line 58 of file MPEG1or2FileServerDemux.hh.

Referenced by MPEG1or2FileServerDemux(), newElementaryStream(), and ~MPEG1or2FileServerDemux().

unsigned MPEG1or2FileServerDemux::fFileSize [private]

Definition at line 59 of file MPEG1or2FileServerDemux.hh.

Referenced by fileSize(), and MPEG1or2FileServerDemux().

float MPEG1or2FileServerDemux::fFileDuration [private]

Definition at line 60 of file MPEG1or2FileServerDemux.hh.

Referenced by fileDuration(), and MPEG1or2FileServerDemux().

Boolean MPEG1or2FileServerDemux::fReuseFirstSource [private]

Definition at line 61 of file MPEG1or2FileServerDemux.hh.

Referenced by newAC3AudioServerMediaSubsession(), newAudioServerMediaSubsession(), and newVideoServerMediaSubsession().

MPEG1or2Demux* MPEG1or2FileServerDemux::fSession0Demux [private]

Definition at line 62 of file MPEG1or2FileServerDemux.hh.

Referenced by newElementaryStream(), and ~MPEG1or2FileServerDemux().

MPEG1or2Demux* MPEG1or2FileServerDemux::fLastCreatedDemux [private]

Definition at line 63 of file MPEG1or2FileServerDemux.hh.

Referenced by newElementaryStream().

unsigned MPEG1or2FileServerDemux::fLastClientSessionId [private]

Definition at line 64 of file MPEG1or2FileServerDemux.hh.

Referenced by newElementaryStream().


The documentation for this class was generated from the following files:
Generated on Thu Feb 2 23:55:22 2012 for live by  doxygen 1.5.2