live
OggFileSink Class Reference

#include <OggFileSink.hh>

Inheritance diagram for OggFileSink:
Collaboration diagram for OggFileSink:

Public Types

typedef void afterPlayingFunc(void *clientData)

Public Member Functions

Boolean startPlaying (MediaSource &source, afterPlayingFunc *afterFunc, void *afterClientData)
virtual void stopPlaying ()
virtual Boolean isRTPSink () const
FramedSource * source () const
UsageEnvironment & envir () const
char const * name () const
virtual Boolean isSource () 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 OggFileSink * createNew (UsageEnvironment &env, char const *fileName, unsigned samplingFrequency=0, char const *configStr=NULL, unsigned bufferSize=100000, Boolean oneFilePerFrame=False)
static FileSink * createNew (UsageEnvironment &env, char const *fileName, unsigned bufferSize=20000, Boolean oneFilePerFrame=False)
static Boolean lookupByName (UsageEnvironment &env, char const *sinkName, MediaSink *&resultSink)
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

 OggFileSink (UsageEnvironment &env, FILE *fid, unsigned samplingFrequency, char const *configStr, unsigned bufferSize, char const *perFrameFileNamePrefix)
virtual ~OggFileSink ()
virtual Boolean continuePlaying ()
virtual void addData (unsigned char const *data, unsigned dataSize, struct timeval presentationTime)
virtual void afterGettingFrame (unsigned frameSize, unsigned numTruncatedBytes, struct timeval presentationTime)
virtual Boolean sourceIsCompatibleWithUs (MediaSource &source)
void onSourceClosure ()
TaskToken & nextTask ()

Static Protected Member Functions

static void afterGettingFrame (void *clientData, unsigned frameSize, unsigned numTruncatedBytes, struct timeval presentationTime, unsigned durationInMicroseconds)
static void onSourceClosure (void *clientData)

Protected Attributes

FILE * fOutFid
unsigned char * fBuffer
unsigned fBufferSize
char * fPerFrameFileNamePrefix
char * fPerFrameFileNameBuffer
struct timeval fPrevPresentationTime
unsigned fSamePresentationTimeCounter
FramedSource * fSource

Private Member Functions

void ourOnSourceClosure ()
virtual Boolean isSink () const

Static Private Member Functions

static void ourOnSourceClosure (void *clientData)

Private Attributes

unsigned fSamplingFrequency
char const * fConfigStr
Boolean fHaveWrittenFirstFrame
Boolean fHaveSeenEOF
struct timeval fFirstPresentationTime
int64_t fGranulePosition
int64_t fGranulePositionAdjustment
u_int32_t fPageSequenceNumber
u_int8_t fPageHeaderBytes [27]
Boolean fIsTheora
u_int64_t fGranuleIncrementPerFrame
unsigned char * fAltBuffer
unsigned fAltFrameSize
unsigned fAltNumTruncatedBytes
struct timeval fAltPresentationTime
afterPlayingFunc * fAfterFunc
void * fAfterClientData
UsageEnvironment & fEnviron
char fMediumName [mediumNameMaxLen]
TaskToken fNextTask

Detailed Description

Definition at line 28 of file OggFileSink.hh.

Member Typedef Documentation

◆ afterPlayingFunc

typedef void MediaSink::afterPlayingFunc(void *clientData)
inherited

Definition at line 33 of file MediaSink.hh.

Constructor & Destructor Documentation

◆ OggFileSink()

OggFileSink::OggFileSink ( UsageEnvironment & env,
FILE * fid,
unsigned samplingFrequency,
char const * configStr,
unsigned bufferSize,
char const * perFrameFileNamePrefix )
protected

Referenced by createNew().

◆ ~OggFileSink()

virtual OggFileSink::~OggFileSink ( )
protectedvirtual

Member Function Documentation

◆ addData()

virtual void OggFileSink::addData ( unsigned char const * data,
unsigned dataSize,
struct timeval presentationTime )
protectedvirtual

Reimplemented from FileSink.

◆ afterGettingFrame() [1/2]

void FileSink::afterGettingFrame ( void * clientData,
unsigned frameSize,
unsigned numTruncatedBytes,
struct timeval presentationTime,
unsigned durationInMicroseconds )
staticprotectedinherited

◆ afterGettingFrame() [2/2]

virtual void OggFileSink::afterGettingFrame ( unsigned frameSize,
unsigned numTruncatedBytes,
struct timeval presentationTime )
protectedvirtual

Reimplemented from FileSink.

◆ close() [1/2]

void Medium::close ( Medium * medium)
staticinherited

References Medium().

◆ close() [2/2]

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

◆ continuePlaying()

virtual Boolean OggFileSink::continuePlaying ( )
protectedvirtual

Reimplemented from FileSink.

◆ createNew() [1/2]

FileSink * FileSink::createNew ( UsageEnvironment & env,
char const * fileName,
unsigned bufferSize = 20000,
Boolean oneFilePerFrame = False )
staticinherited

References False, and FileSink().

◆ createNew() [2/2]

OggFileSink * OggFileSink::createNew ( UsageEnvironment & env,
char const * fileName,
unsigned samplingFrequency = 0,
char const * configStr = NULL,
unsigned bufferSize = 100000,
Boolean oneFilePerFrame = False )
static

References False, NULL, and OggFileSink().

◆ envir()

UsageEnvironment & Medium::envir ( ) const
inlineinherited

Definition at line 59 of file Media.hh.

59{return fEnviron;}
UsageEnvironment & fEnviron
Definition Media.hh:82

References fEnviron.

Referenced by MediaSubsession::env(), GenericMediaServer::ClientConnection::envir(), GenericMediaServer::ClientSession::envir(), and RTPInterface::envir().

◆ isMediaSession()

virtual Boolean Medium::isMediaSession ( ) const
virtualinherited

Reimplemented in MediaSession.

◆ isRTCPInstance()

virtual Boolean Medium::isRTCPInstance ( ) const
virtualinherited

Reimplemented in RTCPInstance.

◆ isRTPSink()

virtual Boolean MediaSink::isRTPSink ( ) const
virtualinherited

Reimplemented in RTPSink.

◆ 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 MediaSink::isSink ( ) const
privatevirtualinherited

Reimplemented from Medium.

◆ isSource()

virtual Boolean Medium::isSource ( ) const
virtualinherited

Reimplemented in MediaSource.

◆ lookupByName() [1/2]

Boolean MediaSink::lookupByName ( UsageEnvironment & env,
char const * sinkName,
MediaSink *& resultSink )
staticinherited

References MediaSink().

◆ lookupByName() [2/2]

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

References Medium().

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

Referenced by QuickTimeFileSink::_atom(), RTSPServer::lookupByName(), RTCPInstance::sendAppPacket(), and OnDemandServerMediaSubsession::sendRTCPAppPacket().

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

◆ onSourceClosure() [1/2]

void MediaSink::onSourceClosure ( )
protectedinherited

◆ onSourceClosure() [2/2]

void MediaSink::onSourceClosure ( void * clientData)
staticprotectedinherited

◆ ourOnSourceClosure() [1/2]

void OggFileSink::ourOnSourceClosure ( )
private

◆ ourOnSourceClosure() [2/2]

void OggFileSink::ourOnSourceClosure ( void * clientData)
staticprivate

◆ source()

◆ sourceIsCompatibleWithUs()

virtual Boolean MediaSink::sourceIsCompatibleWithUs ( MediaSource & source)
protectedvirtualinherited

◆ startPlaying()

Boolean MediaSink::startPlaying ( MediaSource & source,
afterPlayingFunc * afterFunc,
void * afterClientData )
inherited

References source().

◆ stopPlaying()

virtual void MediaSink::stopPlaying ( )
virtualinherited

Reimplemented in MultiFramedRTPSink.

Field Documentation

◆ fAfterClientData

void* MediaSink::fAfterClientData
privateinherited

Definition at line 67 of file MediaSink.hh.

◆ fAfterFunc

afterPlayingFunc* MediaSink::fAfterFunc
privateinherited

Definition at line 66 of file MediaSink.hh.

◆ fAltBuffer

unsigned char* OggFileSink::fAltBuffer
private

Definition at line 74 of file OggFileSink.hh.

◆ fAltFrameSize

unsigned OggFileSink::fAltFrameSize
private

Definition at line 75 of file OggFileSink.hh.

◆ fAltNumTruncatedBytes

unsigned OggFileSink::fAltNumTruncatedBytes
private

Definition at line 75 of file OggFileSink.hh.

◆ fAltPresentationTime

struct timeval OggFileSink::fAltPresentationTime
private

Definition at line 76 of file OggFileSink.hh.

◆ fBuffer

unsigned char* FileSink::fBuffer
protectedinherited

Definition at line 63 of file FileSink.hh.

◆ fBufferSize

unsigned FileSink::fBufferSize
protectedinherited

Definition at line 64 of file FileSink.hh.

◆ fConfigStr

char const* OggFileSink::fConfigStr
private

Definition at line 59 of file OggFileSink.hh.

◆ fEnviron

UsageEnvironment& Medium::fEnviron
privateinherited

Definition at line 82 of file Media.hh.

Referenced by envir().

◆ fFirstPresentationTime

struct timeval OggFileSink::fFirstPresentationTime
private

Definition at line 61 of file OggFileSink.hh.

◆ fGranuleIncrementPerFrame

u_int64_t OggFileSink::fGranuleIncrementPerFrame
private

Definition at line 70 of file OggFileSink.hh.

◆ fGranulePosition

int64_t OggFileSink::fGranulePosition
private

Definition at line 62 of file OggFileSink.hh.

◆ fGranulePositionAdjustment

int64_t OggFileSink::fGranulePositionAdjustment
private

Definition at line 63 of file OggFileSink.hh.

◆ fHaveSeenEOF

Boolean OggFileSink::fHaveSeenEOF
private

Definition at line 60 of file OggFileSink.hh.

◆ fHaveWrittenFirstFrame

Boolean OggFileSink::fHaveWrittenFirstFrame
private

Definition at line 60 of file OggFileSink.hh.

◆ fIsTheora

Boolean OggFileSink::fIsTheora
private

Definition at line 69 of file OggFileSink.hh.

◆ fMediumName

char Medium::fMediumName[mediumNameMaxLen]
privateinherited

Definition at line 83 of file Media.hh.

Referenced by name().

◆ fNextTask

TaskToken Medium::fNextTask
privateinherited

Definition at line 84 of file Media.hh.

Referenced by nextTask().

◆ fOutFid

FILE* FileSink::fOutFid
protectedinherited

Definition at line 62 of file FileSink.hh.

◆ fPageHeaderBytes

u_int8_t OggFileSink::fPageHeaderBytes[27]
private

Definition at line 65 of file OggFileSink.hh.

◆ fPageSequenceNumber

u_int32_t OggFileSink::fPageSequenceNumber
private

Definition at line 64 of file OggFileSink.hh.

◆ fPerFrameFileNameBuffer

char* FileSink::fPerFrameFileNameBuffer
protectedinherited

Definition at line 66 of file FileSink.hh.

◆ fPerFrameFileNamePrefix

char* FileSink::fPerFrameFileNamePrefix
protectedinherited

Definition at line 65 of file FileSink.hh.

◆ fPrevPresentationTime

struct timeval FileSink::fPrevPresentationTime
protectedinherited

Definition at line 67 of file FileSink.hh.

◆ fSamePresentationTimeCounter

unsigned FileSink::fSamePresentationTimeCounter
protectedinherited

Definition at line 68 of file FileSink.hh.

◆ fSamplingFrequency

unsigned OggFileSink::fSamplingFrequency
private

Definition at line 58 of file OggFileSink.hh.

◆ fSource

FramedSource* MediaSink::fSource
protectedinherited

Definition at line 58 of file MediaSink.hh.

Referenced by source().


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