MythTV  master
Classes | Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Attributes | List of all members
FreeSurround Class Reference

#include <freesurround.h>

Collaboration diagram for FreeSurround:
Collaboration graph
[legend]

Classes

struct  fsurround_params
 

Public Types

enum  SurroundMode { SurroundModePassive, SurroundModeActiveSimple, SurroundModeActiveLinear, SurroundModePassiveHall }
 

Public Member Functions

 FreeSurround (uint srate, bool moviemode, SurroundMode mode)
 
 ~FreeSurround ()
 
uint putFrames (void *buffer, uint numFrames, uint numChannels)
 
uint receiveFrames (void *buffer, uint maxFrames)
 
void flush ()
 
uint numUnprocessedFrames () const
 
uint numFrames () const
 
long long getLatency ()
 
uint frameLatency () const
 

Static Public Member Functions

static uint framesPerBlock ()
 

Protected Member Functions

void process_block ()
 
void open ()
 
void close ()
 
void SetParams ()
 

Private Attributes

struct FreeSurround::fsurround_params m_params
 
uint m_srate
 
struct buffersm_bufs {nullptr}
 
class fsurround_decoderm_decoder {nullptr}
 
int m_inCount {0}
 
int m_outCount {0}
 
bool m_processed {true}
 
int m_processedSize {0}
 
SurroundMode m_surroundMode {SurroundModePassive}
 
int m_latencyFrames {0}
 
int m_channels {0}
 

Detailed Description

Definition at line 26 of file freesurround.h.

Member Enumeration Documentation

◆ SurroundMode

Enumerator
SurroundModePassive 
SurroundModeActiveSimple 
SurroundModeActiveLinear 
SurroundModePassiveHall 

Definition at line 29 of file freesurround.h.

Constructor & Destructor Documentation

◆ FreeSurround()

FreeSurround::FreeSurround ( uint  srate,
bool  moviemode,
SurroundMode  mode 
)

Definition at line 75 of file freesurround.cpp.

◆ ~FreeSurround()

FreeSurround::~FreeSurround ( )

Definition at line 138 of file freesurround.cpp.

Member Function Documentation

◆ putFrames()

uint FreeSurround::putFrames ( void *  buffer,
uint  numFrames,
uint  numChannels 
)

Definition at line 147 of file freesurround.cpp.

Referenced by AudioOutputBase::CopyWithUpmix().

◆ receiveFrames()

uint FreeSurround::receiveFrames ( void *  buffer,
uint  maxFrames 
)

Definition at line 312 of file freesurround.cpp.

Referenced by AudioOutputBase::CopyWithUpmix().

◆ flush()

void FreeSurround::flush ( )

Definition at line 416 of file freesurround.cpp.

Referenced by AudioOutputBase::Reset().

◆ numUnprocessedFrames()

uint FreeSurround::numUnprocessedFrames ( ) const

Definition at line 443 of file freesurround.cpp.

Referenced by AudioOutputBase::AddData().

◆ numFrames()

uint FreeSurround::numFrames ( ) const

Definition at line 448 of file freesurround.cpp.

Referenced by AudioOutputBase::CopyWithUpmix(), and putFrames().

◆ getLatency()

long long FreeSurround::getLatency ( )

Definition at line 408 of file freesurround.cpp.

◆ frameLatency()

uint FreeSurround::frameLatency ( ) const

Definition at line 453 of file freesurround.cpp.

Referenced by AudioOutputBase::SetAudiotime().

◆ framesPerBlock()

uint FreeSurround::framesPerBlock ( )
static

Definition at line 460 of file freesurround.cpp.

◆ process_block()

void FreeSurround::process_block ( )
protected

Definition at line 393 of file freesurround.cpp.

Referenced by putFrames().

◆ open()

void FreeSurround::open ( )
protected

Definition at line 424 of file freesurround.cpp.

Referenced by FreeSurround().

◆ close()

void FreeSurround::close ( )
protected

Definition at line 437 of file freesurround.cpp.

Referenced by ~FreeSurround().

◆ SetParams()

void FreeSurround::SetParams ( )
protected

Definition at line 120 of file freesurround.cpp.

Referenced by open().

Member Data Documentation

◆ m_params

struct FreeSurround::fsurround_params FreeSurround::m_params
private

◆ m_srate

uint FreeSurround::m_srate
private

Definition at line 77 of file freesurround.h.

Referenced by getLatency(), and open().

◆ m_bufs

struct buffers* FreeSurround::m_bufs {nullptr}
private

Definition at line 80 of file freesurround.h.

Referenced by flush(), FreeSurround(), open(), putFrames(), receiveFrames(), and ~FreeSurround().

◆ m_decoder

class fsurround_decoder* FreeSurround::m_decoder {nullptr}
private

◆ m_inCount

int FreeSurround::m_inCount {0}
private

Definition at line 82 of file freesurround.h.

Referenced by frameLatency(), getLatency(), numUnprocessedFrames(), and putFrames().

◆ m_outCount

int FreeSurround::m_outCount {0}
private

Definition at line 83 of file freesurround.h.

Referenced by frameLatency(), numFrames(), putFrames(), and receiveFrames().

◆ m_processed

bool FreeSurround::m_processed {true}
private

Definition at line 84 of file freesurround.h.

Referenced by frameLatency(), putFrames(), and receiveFrames().

◆ m_processedSize

int FreeSurround::m_processedSize {0}
private

Definition at line 85 of file freesurround.h.

Referenced by putFrames(), and receiveFrames().

◆ m_surroundMode

SurroundMode FreeSurround::m_surroundMode {SurroundModePassive}
private

Definition at line 86 of file freesurround.h.

Referenced by FreeSurround(), and putFrames().

◆ m_latencyFrames

int FreeSurround::m_latencyFrames {0}
private

Definition at line 87 of file freesurround.h.

Referenced by FreeSurround(), getLatency(), and putFrames().

◆ m_channels

int FreeSurround::m_channels {0}
private

Definition at line 88 of file freesurround.h.

Referenced by putFrames(), and receiveFrames().


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