Firelight Technologies FMOD Studio API
Retrieves a 2D pan matrix that maps input channels (columns) to output speakers (rows).
FMOD_RESULT ChannelControl::getMixMatrix(
float *matrix,
int *outchannels,
int *inchannels,
int inchannel_hop
);
matrix
Address of a 2 dimensional array of volume levels in row-major order. Each row represents an output speaker, each column represents an input channel.
outchannels
Address of a variable to receive the number of output channels (rows) in the matrix being passed in.
inchannels
Address of a variable to receive the number of input channels (columns) in the matrix being passed in.
inchannel_hop
Width of the memory the matrix is being stored in. Allows the function to skip memory after processing each row. If your inchannels = 2, and the array size is 32, then 32 would be the hop size.
If the function succeeds then the return value is FMOD_OK.
If the function fails then the return value will be one of the values defined in the FMOD_RESULT enumeration.
Levels can be below 0 to invert a signal and above 1 to amplify the signal. Note that increasing the signal level too far may cause audible distortion.
The matrix size will generally be the size of the number of channels in the current speaker mode. Use System::getSoftwareFormat to determine this.
Passing NULL for 'matrix' will allow you to query 'outchannels' and 'inchannels' without copying any data.
Version 1.03.06 Built on Apr 17, 2014