live
Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes
MP3StreamState Class Reference

#include <MP3StreamState.hh>

Collaboration diagram for MP3StreamState:
Collaboration graph
[legend]

Public Member Functions

 MP3StreamState ()
 
virtual ~MP3StreamState ()
 
void assignStream (FILE *fid, unsigned fileSize)
 
unsigned findNextHeader (struct timeval &presentationTime)
 
Boolean readFrame (unsigned char *outBuf, unsigned outBufSize, unsigned &resultFrameSize, unsigned &resultDurationInMicroseconds)
 
void getAttributes (char *buffer, unsigned bufferSize) const
 
float filePlayTime () const
 
unsigned fileSize () const
 
void setPresentationTimeScale (unsigned scale)
 
unsigned getByteNumberFromPositionFraction (float fraction)
 
void seekWithinFile (unsigned seekByteNumber)
 
void checkForXingHeader ()
 

Protected Member Functions

unsigned readFromStream (unsigned char *buf, unsigned numChars)
 

Private Member Functions

MP3FrameParamsfr ()
 
MP3FrameParams const & fr () const
 
struct timeval currentFramePlayTime () const
 
Boolean findNextFrame ()
 

Private Attributes

FILE * fFid
 
Boolean fFidIsReallyASocket
 
unsigned fFileSize
 
unsigned fNumFramesInFile
 
unsigned fPresentationTimeScale
 
Boolean fIsVBR
 
Boolean fHasXingTOC
 
u_int8_t fXingTOC [XING_TOC_LENGTH]
 
MP3FrameParams fCurrentFrame
 
struct timeval fNextFramePresentationTime
 

Detailed Description

Definition at line 41 of file MP3StreamState.hh.

Constructor & Destructor Documentation

◆ MP3StreamState()

MP3StreamState::MP3StreamState ( )

◆ ~MP3StreamState()

virtual MP3StreamState::~MP3StreamState ( )
virtual

Member Function Documentation

◆ assignStream()

void MP3StreamState::assignStream ( FILE *  fid,
unsigned  fileSize 
)

◆ checkForXingHeader()

void MP3StreamState::checkForXingHeader ( )

◆ currentFramePlayTime()

struct timeval MP3StreamState::currentFramePlayTime ( ) const
private

◆ filePlayTime()

float MP3StreamState::filePlayTime ( ) const

◆ fileSize()

unsigned MP3StreamState::fileSize ( ) const
inline

Definition at line 57 of file MP3StreamState.hh.

57{ return fFileSize; }
unsigned fFileSize

References fFileSize.

◆ findNextFrame()

Boolean MP3StreamState::findNextFrame ( )
private

◆ findNextHeader()

unsigned MP3StreamState::findNextHeader ( struct timeval &  presentationTime)

◆ fr() [1/2]

MP3FrameParams & MP3StreamState::fr ( )
inlineprivate

Definition at line 68 of file MP3StreamState.hh.

68{return fCurrentFrame;}
MP3FrameParams fCurrentFrame

References fCurrentFrame.

◆ fr() [2/2]

MP3FrameParams const & MP3StreamState::fr ( ) const
inlineprivate

Definition at line 69 of file MP3StreamState.hh.

69{return fCurrentFrame;}

References fCurrentFrame.

◆ getAttributes()

void MP3StreamState::getAttributes ( char *  buffer,
unsigned  bufferSize 
) const

◆ getByteNumberFromPositionFraction()

unsigned MP3StreamState::getByteNumberFromPositionFraction ( float  fraction)

◆ readFrame()

Boolean MP3StreamState::readFrame ( unsigned char *  outBuf,
unsigned  outBufSize,
unsigned &  resultFrameSize,
unsigned &  resultDurationInMicroseconds 
)

◆ readFromStream()

unsigned MP3StreamState::readFromStream ( unsigned char *  buf,
unsigned  numChars 
)
protected

◆ seekWithinFile()

void MP3StreamState::seekWithinFile ( unsigned  seekByteNumber)

◆ setPresentationTimeScale()

void MP3StreamState::setPresentationTimeScale ( unsigned  scale)
inline

Definition at line 58 of file MP3StreamState.hh.

58{ fPresentationTimeScale = scale; }
unsigned fPresentationTimeScale

References fPresentationTimeScale.

Field Documentation

◆ fCurrentFrame

MP3FrameParams MP3StreamState::fCurrentFrame
private

Definition at line 85 of file MP3StreamState.hh.

Referenced by fr().

◆ fFid

FILE* MP3StreamState::fFid
private

Definition at line 76 of file MP3StreamState.hh.

◆ fFidIsReallyASocket

Boolean MP3StreamState::fFidIsReallyASocket
private

Definition at line 77 of file MP3StreamState.hh.

◆ fFileSize

unsigned MP3StreamState::fFileSize
private

Definition at line 78 of file MP3StreamState.hh.

Referenced by fileSize().

◆ fHasXingTOC

Boolean MP3StreamState::fHasXingTOC
private

Definition at line 82 of file MP3StreamState.hh.

◆ fIsVBR

Boolean MP3StreamState::fIsVBR
private

Definition at line 82 of file MP3StreamState.hh.

◆ fNextFramePresentationTime

struct timeval MP3StreamState::fNextFramePresentationTime
private

Definition at line 86 of file MP3StreamState.hh.

◆ fNumFramesInFile

unsigned MP3StreamState::fNumFramesInFile
private

Definition at line 79 of file MP3StreamState.hh.

◆ fPresentationTimeScale

unsigned MP3StreamState::fPresentationTimeScale
private

Definition at line 80 of file MP3StreamState.hh.

Referenced by setPresentationTimeScale().

◆ fXingTOC

u_int8_t MP3StreamState::fXingTOC[XING_TOC_LENGTH]
private

Definition at line 83 of file MP3StreamState.hh.


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