![]() |
Mach1 Spatial SDK
|
Public Member Functions | |
void | setPlatformType (Mach1PlatformType type) |
Set the device's angle order and convention if applicable. | |
void | setDecodeMode (Mach1DecodeMode mode) |
Set the decoding mode. | |
Mach1PlatformType | getPlatformType () |
Get the device's angle order and convention if applicable. | |
Mach1DecodeMode | getDecodeMode () |
Get the decoding mode. | |
int | getFormatChannelCount () |
Get the get amount of channels that this Mach1Decode expects to decode, based on the currently active decoding mode. | |
int | getFormatCoeffCount () |
Get the get amount of decoding coefficients this Mach1Decode will generate, based on the currently active decoding algorithm. | |
void | setRotation (Mach1Point3D newRotationFromMinusOnetoOne) |
Set current buffer/sample intended decoding orientation YPR. | |
void | setRotationDegrees (Mach1Point3D newRotationDegrees) |
Set current buffer/sample intended decoding orientation YPR. | |
void | setRotationRadians (Mach1Point3D newRotationRadians) |
Set current buffer/sample intended decoding orientation YPR. | |
void | setRotationQuat (Mach1Point4D newRotationQuat) |
Set current buffer/sample intended decoding orientation YPR. | |
void | setFilterSpeed (float filterSpeed) |
Set the amount of angle smoothing applied to the orientation angles used for this Mach1Decode. | |
long | getCurrentTime () |
Get the current elapsed time in milliseconds (ms) this Mach1Decode has been constructed. | |
Mach1Point3D | getCurrentAngle () |
Get this Mach1Decode's current 3D angle for feedback design. | |
std::vector< PCM > | decode (float Yaw, float Pitch, float Roll, int bufferSize=0, int sampleIndex=0) |
std::vector< PCM > | decodeCoeffs (int bufferSize=0, int sampleIndex=0) |
std::vector< PCM > | decodePannedCoeffs (int bufferSize=0, int sampleIndex=0, bool applyPanLaw=true) |
std::vector< PCM > | decodeCoeffsUsingTranscodeMatrix (std::vector< std::vector< float > > matrix, int channels, int bufferSize=0, int sampleIndex=0) |
void | decodeBuffer (std::vector< std::vector< PCM > > &in, std::vector< std::vector< PCM > > &out, int size) |
void | decodeBufferInPlace (std::vector< std::vector< PCM > > &buffer, int size) |
void | decodeBufferRebuffer (std::vector< std::vector< PCM > > &in, std::vector< std::vector< PCM > > &out, int size) |
void | decodeBufferInPlaceRebuffer (std::vector< std::vector< PCM > > &buffer, int size) |
void | decode (float Yaw, float Pitch, float Roll, float *result, int bufferSize=0, int sampleIndex=0) |
void | decodeCoeffs (float *result, int bufferSize=0, int sampleIndex=0) |
void | decodePannedCoeffs (float *result, int bufferSize=0, int sampleIndex=0, bool applyPanLaw=true) |
char * | getLog () |
Get the internal log that has been accumulated into this Mach1Decode. | |
std::vector< PCM > Mach1Decode< PCM >::decode | ( | float | Yaw, |
float | Pitch, | ||
float | Roll, | ||
int | bufferSize = 0 , |
||
int | sampleIndex = 0 |
||
) |
Call with current update's angles to return the coefficients with which an incoming audio buffer may be decoded.
Includes two modes of use:
Setting bufferSize and sampleIndex to 0 will enable the second mode.
Yaw | float for device/listener yaw angle: [Range: 0->360 | -180->180] |
Pitch | float for device/listener pitch angle: [Range: -90->90] |
Roll | float for device/listener roll angle: [Range: -90->90] |
bufferSize | int for number of samples in a buffer, ideally supplied from your audioplayer/engine |
sampleIndex | int for current sample index array, ideally supplied from your audioplayer/engine |
std::vector< PCM > Mach1Decode< PCM >::decodeCoeffs | ( | int | bufferSize = 0 , |
int | sampleIndex = 0 |
||
) |
Call with current update's angles to return the coefficients with which an incoming audio buffer may be decoded.
Includes two modes of use:
Setting bufferSize and sampleIndex to 0 will enable the second mode.
bufferSize | int for number of samples in a buffer, ideally supplied from your audioplayer/engine |
sampleIndex | int for current sample index array, ideally supplied from your audioplayer/engine |
std::vector< PCM > Mach1Decode< PCM >::decodePannedCoeffs | ( | int | bufferSize = 0 , |
int | sampleIndex = 0 , |
||
bool | applyPanLaw = true |
||
) |
Call with current update's angles to return the coefficients with which an incoming audio buffer may be decoded.
Includes two modes of use:
Setting bufferSize and sampleIndex to 0 will enable the second mode.
bufferSize | int for number of samples in a buffer, ideally supplied from your audioplayer/engine |
sampleIndex | int for current sample index array, ideally supplied from your audioplayer/engine |
applyPanLaw | bool for control over panLaw application. |
void Mach1Decode< PCM >::setFilterSpeed | ( | float | filterSpeed | ) |
Set the amount of angle smoothing applied to the orientation angles used for this Mach1Decode.
filterSpeed | floating point value between [0.0001 -> 1.0], where 1.0 represents no filter. |
void Mach1Decode< PCM >::setRotation | ( | Mach1Point3D | newRotationFromMinusOnetoOne | ) |
Set current buffer/sample intended decoding orientation YPR.
newRotationFromMinusOnetoOne |
|
void Mach1Decode< PCM >::setRotationDegrees | ( | Mach1Point3D | newRotationDegrees | ) |
Set current buffer/sample intended decoding orientation YPR.
newRotationFromMinusOnetoOne |
|
void Mach1Decode< PCM >::setRotationQuat | ( | Mach1Point4D | newRotationQuat | ) |
Set current buffer/sample intended decoding orientation YPR.
newRotationFromMinusOnetoOne |
|
void Mach1Decode< PCM >::setRotationRadians | ( | Mach1Point3D | newRotationRadians | ) |
Set current buffer/sample intended decoding orientation YPR.
newRotationFromMinusOnetoOne |
|