live
MP3StreamState Class Reference

#include <MP3StreamState.hh>

Collaboration diagram for MP3StreamState:

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 )

References fileSize().

◆ checkForXingHeader()

void MP3StreamState::checkForXingHeader ( )

◆ currentFramePlayTime()

struct timeval MP3StreamState::currentFramePlayTime ( ) const
private

References currentFramePlayTime().

Referenced by currentFramePlayTime().

◆ filePlayTime()

float MP3StreamState::filePlayTime ( ) const

◆ fileSize()

unsigned MP3StreamState::fileSize ( ) const
inline

Definition at line 57 of file MP3StreamState.hh.

57{ return fFileSize; }

References fFileSize.

Referenced by assignStream().

◆ 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(), and 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: