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 74 of file freesurround.cpp.

◆ ~FreeSurround()

FreeSurround::~FreeSurround ( )

Definition at line 137 of file freesurround.cpp.

Member Function Documentation

◆ putFrames()

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

Definition at line 146 of file freesurround.cpp.

Referenced by AudioOutputBase::CopyWithUpmix().

◆ receiveFrames()

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

Definition at line 311 of file freesurround.cpp.

Referenced by AudioOutputBase::CopyWithUpmix().

◆ flush()

void FreeSurround::flush ( )

Definition at line 415 of file freesurround.cpp.

Referenced by AudioOutputBase::Reset().

◆ numUnprocessedFrames()

uint FreeSurround::numUnprocessedFrames ( ) const

Definition at line 442 of file freesurround.cpp.

Referenced by AudioOutputBase::AddData().

◆ numFrames()

uint FreeSurround::numFrames ( ) const

Definition at line 447 of file freesurround.cpp.

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

◆ getLatency()

long long FreeSurround::getLatency ( )

Definition at line 407 of file freesurround.cpp.

◆ frameLatency()

uint FreeSurround::frameLatency ( ) const

Definition at line 452 of file freesurround.cpp.

Referenced by AudioOutputBase::SetAudiotime().

◆ framesPerBlock()

uint FreeSurround::framesPerBlock ( )
static

Definition at line 459 of file freesurround.cpp.

◆ process_block()

void FreeSurround::process_block ( )
protected

Definition at line 392 of file freesurround.cpp.

Referenced by putFrames().

◆ open()

void FreeSurround::open ( )
protected

Definition at line 423 of file freesurround.cpp.

Referenced by FreeSurround().

◆ close()

void FreeSurround::close ( )
protected

Definition at line 436 of file freesurround.cpp.

Referenced by ~FreeSurround().

◆ SetParams()

void FreeSurround::SetParams ( )
protected

Definition at line 119 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: