OpenMW
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | Friends | List of all members
MWSound::FFmpeg_Decoder Class Reference

#include <ffmpeg_decoder.hpp>

Inheritance diagram for MWSound::FFmpeg_Decoder:
Collaboration diagram for MWSound::FFmpeg_Decoder:

Public Member Functions

virtual ~FFmpeg_Decoder ()
 
- Public Member Functions inherited from MWSound::Sound_Decoder
 Sound_Decoder (const VFS::Manager *resourceMgr)
 
virtual ~Sound_Decoder ()
 

Private Member Functions

bool getNextPacket ()
 
bool getAVAudioData ()
 
size_t readAVAudioData (void *data, size_t length)
 
virtual void open (const std::string &fname)
 
virtual void close ()
 
virtual std::string getName ()
 
virtual void getInfo (int *samplerate, ChannelConfig *chans, SampleType *type)
 
virtual size_t read (char *buffer, size_t bytes)
 
virtual void readAll (std::vector< char > &output)
 
virtual size_t getSampleOffset ()
 
void fail (const std::string &msg)
 
FFmpeg_Decoderoperator= (const FFmpeg_Decoder &rhs)
 
 FFmpeg_Decoder (const FFmpeg_Decoder &rhs)
 
 FFmpeg_Decoder (const VFS::Manager *vfs)
 

Static Private Member Functions

static int readPacket (void *user_data, uint8_t *buf, int buf_size)
 
static int writePacket (void *user_data, uint8_t *buf, int buf_size)
 
static int64_t seek (void *user_data, int64_t offset, int whence)
 

Private Attributes

AVFormatContext * mFormatCtx
 
AVStream ** mStream
 
AVPacket mPacket
 
AVFrame * mFrame
 
int mFrameSize
 
int mFramePos
 
double mNextPts
 
SwrContext * mSwr
 
enum AVSampleFormat mOutputSampleFormat
 
int64_t mOutputChannelLayout
 
uint8_t * mDataBuf
 
uint8_t ** mFrameData
 
int mDataBufLen
 
Files::IStreamPtr mDataStream
 

Friends

class SoundManager
 

Additional Inherited Members

- Public Attributes inherited from MWSound::Sound_Decoder
const VFS::ManagermResourceMgr
 

Constructor & Destructor Documentation

MWSound::FFmpeg_Decoder::FFmpeg_Decoder ( const FFmpeg_Decoder rhs)
private
MWSound::FFmpeg_Decoder::FFmpeg_Decoder ( const VFS::Manager vfs)
private
MWSound::FFmpeg_Decoder::~FFmpeg_Decoder ( )
virtual

Here is the call graph for this function:

Member Function Documentation

void MWSound::FFmpeg_Decoder::close ( )
privatevirtual

Implements MWSound::Sound_Decoder.

Here is the caller graph for this function:

void MWSound::FFmpeg_Decoder::fail ( const std::string &  msg)
private

Here is the caller graph for this function:

bool MWSound::FFmpeg_Decoder::getAVAudioData ( )
private

Here is the call graph for this function:

Here is the caller graph for this function:

void MWSound::FFmpeg_Decoder::getInfo ( int samplerate,
ChannelConfig chans,
SampleType type 
)
privatevirtual

Implements MWSound::Sound_Decoder.

Here is the call graph for this function:

std::string MWSound::FFmpeg_Decoder::getName ( )
privatevirtual
bool MWSound::FFmpeg_Decoder::getNextPacket ( )
private

Here is the caller graph for this function:

size_t MWSound::FFmpeg_Decoder::getSampleOffset ( )
privatevirtual
void MWSound::FFmpeg_Decoder::open ( const std::string &  fname)
privatevirtual

Implements MWSound::Sound_Decoder.

Here is the call graph for this function:

FFmpeg_Decoder& MWSound::FFmpeg_Decoder::operator= ( const FFmpeg_Decoder rhs)
private
size_t MWSound::FFmpeg_Decoder::read ( char *  buffer,
size_t  bytes 
)
privatevirtual

Implements MWSound::Sound_Decoder.

Here is the call graph for this function:

void MWSound::FFmpeg_Decoder::readAll ( std::vector< char > &  output)
privatevirtual

Reimplemented from MWSound::Sound_Decoder.

Here is the call graph for this function:

size_t MWSound::FFmpeg_Decoder::readAVAudioData ( void *  data,
size_t  length 
)
private

Here is the call graph for this function:

Here is the caller graph for this function:

int MWSound::FFmpeg_Decoder::readPacket ( void *  user_data,
uint8_t *  buf,
int  buf_size 
)
staticprivate

Here is the caller graph for this function:

int64_t MWSound::FFmpeg_Decoder::seek ( void *  user_data,
int64_t  offset,
int  whence 
)
staticprivate

Here is the caller graph for this function:

int MWSound::FFmpeg_Decoder::writePacket ( void *  user_data,
uint8_t *  buf,
int  buf_size 
)
staticprivate

Here is the caller graph for this function:

Friends And Related Function Documentation

friend class SoundManager
friend

Member Data Documentation

uint8_t* MWSound::FFmpeg_Decoder::mDataBuf
private
int MWSound::FFmpeg_Decoder::mDataBufLen
private
Files::IStreamPtr MWSound::FFmpeg_Decoder::mDataStream
private
AVFormatContext* MWSound::FFmpeg_Decoder::mFormatCtx
private
AVFrame* MWSound::FFmpeg_Decoder::mFrame
private
uint8_t** MWSound::FFmpeg_Decoder::mFrameData
private
int MWSound::FFmpeg_Decoder::mFramePos
private
int MWSound::FFmpeg_Decoder::mFrameSize
private
double MWSound::FFmpeg_Decoder::mNextPts
private
int64_t MWSound::FFmpeg_Decoder::mOutputChannelLayout
private
enum AVSampleFormat MWSound::FFmpeg_Decoder::mOutputSampleFormat
private
AVPacket MWSound::FFmpeg_Decoder::mPacket
private
AVStream** MWSound::FFmpeg_Decoder::mStream
private
SwrContext* MWSound::FFmpeg_Decoder::mSwr
private

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