sipxmedialib  Version 3.3
Classes | List of all members
MpBridgeAlgLinear Class Reference

Brief description. More...

#include <MpBridgeAlgLinear.h>

Inheritance diagram for MpBridgeAlgLinear:
Inheritance graph
[legend]
Collaboration diagram for MpBridgeAlgLinear:
Collaboration graph
[legend]

Classes

struct  ExtendedInputs
 
struct  MixAction
 

Public Member Functions

Creators
 MpBridgeAlgLinear (int inputs, int outputs, UtlBoolean mixSilence, int samplesPerFrame)
 Constructor. More...
 
 ~MpBridgeAlgLinear ()
 Destructor. More...
 
Manipulators
UtlBoolean doMix (MpBufPtr inBufs[], int inBufsSize, MpBufPtr outBufs[], int outBufsSize, int samplesPerFrame)
 Mix together inputs onto outputs according to mpGainMatrix matrix. More...
 
void setGainMatrixValue (int column, int row, MpBridgeGain val)
 Set selected gain to the given value. More...
 
void setGainMatrixRow (int row, int numValues, const MpBridgeGain val[])
 Set selected gain row to the given value. More...
 
void setGainMatrixColumn (int column, int numValues, const MpBridgeGain val[])
 Set selected gain column to the given value. More...
 
Accessors
void dumpOutputMix (UtlString &dumpString)
 Dump the mix matrix to log. More...
 
- Public Member Functions inherited from MpBridgeAlgBase
 MpBridgeAlgBase (int maxInputs, int maxOutputs, UtlBoolean mixSilence)
 Constructor. More...
 
virtual ~MpBridgeAlgBase ()
 Destructor. More...
 
void saveAmplitudes (MpBufPtr inBufs[], int inBufsSize)
 Save buffers amplitudes to internal array. More...
 
int maxInputs () const
 Get maximum number of inputs. More...
 
int maxOutputs () const
 Get maximum number of outputs. More...
 

Protected Attributes

Extended inputs
ExtendedInputs mExtendedInputs
 Storage for all extended inputs data. More...
 
Active inputs
int mActiveInputsListSize
 Length of mpActiveInputsList array. More...
 
int * mpActiveInputsList
 inputs. Used in doMix() only. More...
 
- Protected Attributes inherited from MpBridgeAlgBase
int mMaxInputs
 Number of possible bridge inputs. More...
 
int mMaxOutputs
 Number of possible bridge outputs. More...
 
UtlBoolean mMixSilence
 Should Bridge ignore or mix frames marked as silence? More...
 
MpAudioSamplempPrevAmplitudes
 the previous frame processing interval. More...
 

Mix Engine

int mMixActionsStackLength
 
int mMixActionsStackTop
 
MixActionmpMixActionsStack
 
int mMixDataStackStep
 
int mMixDataStackLength
 
MpBridgeAccummpMixDataStackTop
 
MpBridgeAccummpMixDataStack
 
MpSpeechTypempMixDataSpeechType
 Speech type of data frames in mpMixDataStack. More...
 
MpBridgeAccummpMixDataAmplitude
 Amplitude of data frames in mpMixDataStack. More...
 
int mMixDataInfoStackStep
 
int mMixDataInfoStackLength
 
int * mpMixDataInfoStackTop
 
int * mpMixDataInfoStack
 
int mMixDataInfoProcessedStackLength
 
int mMixDataInfoProcessedStackTop
 
int * mpMixDataInfoProcessedStack
 
void initMixActions ()
 
void pushMixAction (MixAction::Type type, int src1, int src2, int dst)
 
void pushMixActionCopyToOutput (int src, int dst)
 
void pushMixActionCopyFromInput (int src, int dst)
 
void pushMixActionMix (int src1, int src2, int dst)
 
void moveTopMixActionMix (int dst)
 
void initMixDataInfoStack (int step)
 
void initMixDataStack ()
 
bool searchClosestUnprocessedData (int *pDataInfoStackPtr, int *pStartDataInfoStackPtr, int startDataInfoStackPos, int *&pFoundDataInfoStackPtr, int &foundDataInfoStackPos)
 
void searchExistingData (int *pDataInfoStackPtr, int &foundDataInfoStackPos)
 
void searchExistingUnprocessedData (int *pDataInfoStackPtr, int &foundDataInfoStackPos, int ignoreDataInfoStackLevel)
 
bool searchData (int *pDataInfoStackPtr, int &foundDataInfoStackPos)
 
void moveDataUp (int startDataInfoStackPos, int dataInfoStackPos)
 

Detailed Description

Brief description.

Long description here. Even multiline.

Constructor & Destructor Documentation

MpBridgeAlgLinear ( int  inputs,
int  outputs,
UtlBoolean  mixSilence,
int  samplesPerFrame 
)

Constructor.

Destructor.

Member Function Documentation

UtlBoolean doMix ( MpBufPtr  inBufs[],
int  inBufsSize,
MpBufPtr  outBufs[],
int  outBufsSize,
int  samplesPerFrame 
)
virtual

Mix together inputs onto outputs according to mpGainMatrix matrix.

Implements MpBridgeAlgBase.

void setGainMatrixValue ( int  column,
int  row,
MpBridgeGain  val 
)
virtual

Set selected gain to the given value.

Implements MpBridgeAlgBase.

void setGainMatrixRow ( int  row,
int  numValues,
const MpBridgeGain  val[] 
)
virtual

Set selected gain row to the given value.

Implements MpBridgeAlgBase.

void setGainMatrixColumn ( int  column,
int  numValues,
const MpBridgeGain  val[] 
)
virtual

Set selected gain column to the given value.

Implements MpBridgeAlgBase.

void dumpOutputMix ( UtlString &  dumpString)

Dump the mix matrix to log.

void initMixActions ( )
inlineprotected
void pushMixAction ( MixAction::Type  type,
int  src1,
int  src2,
int  dst 
)
inlineprotected
void pushMixActionCopyToOutput ( int  src,
int  dst 
)
inlineprotected
void pushMixActionCopyFromInput ( int  src,
int  dst 
)
inlineprotected
void pushMixActionMix ( int  src1,
int  src2,
int  dst 
)
inlineprotected
void moveTopMixActionMix ( int  dst)
inlineprotected
void initMixDataInfoStack ( int  step)
inlineprotected
void initMixDataStack ( )
inlineprotected
bool searchClosestUnprocessedData ( int *  pDataInfoStackPtr,
int *  pStartDataInfoStackPtr,
int  startDataInfoStackPos,
int *&  pFoundDataInfoStackPtr,
int &  foundDataInfoStackPos 
)
inlineprotected
void searchExistingData ( int *  pDataInfoStackPtr,
int &  foundDataInfoStackPos 
)
inlineprotected
void searchExistingUnprocessedData ( int *  pDataInfoStackPtr,
int &  foundDataInfoStackPos,
int  ignoreDataInfoStackLevel 
)
inlineprotected
bool searchData ( int *  pDataInfoStackPtr,
int &  foundDataInfoStackPos 
)
inlineprotected
void moveDataUp ( int  startDataInfoStackPos,
int  dataInfoStackPos 
)
inlineprotected

Member Data Documentation

ExtendedInputs mExtendedInputs
protected

Storage for all extended inputs data.

int mActiveInputsListSize
protected

Length of mpActiveInputsList array.

int* mpActiveInputsList
protected

inputs. Used in doMix() only.

Store the list of active extended

int mMixActionsStackLength
protected
int mMixActionsStackTop
protected
MixAction* mpMixActionsStack
protected
int mMixDataStackStep
protected
int mMixDataStackLength
protected
MpBridgeAccum* mpMixDataStackTop
protected
MpBridgeAccum* mpMixDataStack
protected
MpSpeechType* mpMixDataSpeechType
protected

Speech type of data frames in mpMixDataStack.

MpBridgeAccum* mpMixDataAmplitude
protected

Amplitude of data frames in mpMixDataStack.

int mMixDataInfoStackStep
protected
int mMixDataInfoStackLength
protected
int* mpMixDataInfoStackTop
protected
int* mpMixDataInfoStack
protected
int mMixDataInfoProcessedStackLength
protected
int mMixDataInfoProcessedStackTop
protected
int* mpMixDataInfoProcessedStack
protected