live
Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | Friends
MatroskaDemux Class Reference

#include <MatroskaFile.hh>

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

Public Member Functions

FramedSourcenewDemuxedTrack ()
 
FramedSourcenewDemuxedTrack (unsigned &resultTrackNumber)
 
FramedSourcenewDemuxedTrackByTrackNumber (unsigned trackNumber)
 
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

class MatroskaDemuxedTracklookupDemuxedTrack (unsigned trackNumber)
 
 MatroskaDemux (MatroskaFile &ourFile)
 
virtual ~MatroskaDemux ()
 
TaskTokennextTask ()
 

Private Member Functions

void removeTrack (unsigned trackNumber)
 
void continueReading ()
 
void seekToTime (double &seekNPT)
 
void pause ()
 
void handleEndOfFile ()
 
void resetState ()
 

Static Private Member Functions

static void handleEndOfFile (void *clientData)
 

Private Attributes

MatroskaFilefOurFile
 
class MatroskaFileParserfOurParser
 
HashTablefDemuxedTracksTable
 
u_int8_t fNextTrackTypeToCheck
 
UsageEnvironmentfEnviron
 
char fMediumName [mediumNameMaxLen]
 
TaskToken fNextTask
 

Friends

class MatroskaFile
 
class MatroskaFileParser
 
class MatroskaDemuxedTrack
 

Detailed Description

Definition at line 172 of file MatroskaFile.hh.

Constructor & Destructor Documentation

◆ MatroskaDemux()

MatroskaDemux::MatroskaDemux ( MatroskaFile ourFile)
protected

◆ ~MatroskaDemux()

virtual MatroskaDemux::~MatroskaDemux ( )
protectedvirtual

Member Function Documentation

◆ close() [1/2]

static void Medium::close ( Medium medium)
staticinherited

◆ close() [2/2]

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

◆ continueReading()

void MatroskaDemux::continueReading ( )
private

◆ envir()

UsageEnvironment & Medium::envir ( ) const
inlineinherited

◆ handleEndOfFile() [1/2]

void MatroskaDemux::handleEndOfFile ( )
private

◆ handleEndOfFile() [2/2]

static void MatroskaDemux::handleEndOfFile ( void *  clientData)
staticprivate

◆ 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

◆ lookupDemuxedTrack()

class MatroskaDemuxedTrack * MatroskaDemux::lookupDemuxedTrack ( unsigned  trackNumber)
protected

◆ name()

char const * Medium::name ( ) const
inlineinherited

Definition at line 61 of file Media.hh.

61{return fMediumName;}
char fMediumName[mediumNameMaxLen]
Definition: Media.hh:83

References Medium::fMediumName.

◆ newDemuxedTrack() [1/2]

FramedSource * MatroskaDemux::newDemuxedTrack ( )

◆ newDemuxedTrack() [2/2]

FramedSource * MatroskaDemux::newDemuxedTrack ( unsigned &  resultTrackNumber)

◆ newDemuxedTrackByTrackNumber()

FramedSource * MatroskaDemux::newDemuxedTrackByTrackNumber ( unsigned  trackNumber)

◆ nextTask()

TaskToken & Medium::nextTask ( )
inlineprotectedinherited

Definition at line 77 of file Media.hh.

77 {
78 return fNextTask;
79 }
TaskToken fNextTask
Definition: Media.hh:84

References Medium::fNextTask.

◆ pause()

void MatroskaDemux::pause ( )
private

◆ removeTrack()

void MatroskaDemux::removeTrack ( unsigned  trackNumber)
private

◆ resetState()

void MatroskaDemux::resetState ( )
private

◆ seekToTime()

void MatroskaDemux::seekToTime ( double &  seekNPT)
private

Friends And Related Function Documentation

◆ MatroskaDemuxedTrack

friend class MatroskaDemuxedTrack
friend

Definition at line 198 of file MatroskaFile.hh.

◆ MatroskaFile

friend class MatroskaFile
friend

Definition at line 190 of file MatroskaFile.hh.

◆ MatroskaFileParser

friend class MatroskaFileParser
friend

Definition at line 191 of file MatroskaFile.hh.

Field Documentation

◆ fDemuxedTracksTable

HashTable* MatroskaDemux::fDemuxedTracksTable
private

Definition at line 212 of file MatroskaFile.hh.

◆ fEnviron

UsageEnvironment& Medium::fEnviron
privateinherited

Definition at line 82 of file Media.hh.

Referenced by Medium::envir().

◆ fMediumName

char Medium::fMediumName[mediumNameMaxLen]
privateinherited

Definition at line 83 of file Media.hh.

Referenced by Medium::name().

◆ fNextTask

TaskToken Medium::fNextTask
privateinherited

Definition at line 84 of file Media.hh.

Referenced by Medium::nextTask().

◆ fNextTrackTypeToCheck

u_int8_t MatroskaDemux::fNextTrackTypeToCheck
private

Definition at line 215 of file MatroskaFile.hh.

◆ fOurFile

MatroskaFile& MatroskaDemux::fOurFile
private

Definition at line 210 of file MatroskaFile.hh.

◆ fOurParser

class MatroskaFileParser* MatroskaDemux::fOurParser
private

Definition at line 211 of file MatroskaFile.hh.


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