버전

menu_open

include/AK/SoundEngine/Common/AkSpeakerVolumes.h File Reference

Go to the source code of this file.

Namespaces

namespace   AK
 

Audiokinetic namespace.


namespace   AK::SpeakerVolumes
 

Multi-channel volume definitions and services.


namespace   AK::SpeakerVolumes::Vector
 

Volume vector services.


namespace   AK::SpeakerVolumes::Matrix
 

Volume matrix (multi-in/multi-out channel configurations) services.


Typedefs

typedef AkReal32 AK::SpeakerVolumes::VectorPtr
  Volume vector. Access each element with the standard bracket [] operator.
typedef AkReal32 AK::SpeakerVolumes::MatrixPtr
  Volume matrix. Access each input channel vector with AK::SpeakerVolumes::Matrix::GetChannel().
typedef const AkReal32 AK::SpeakerVolumes::ConstVectorPtr
  Constant volume vector. Access each element with the standard bracket [] operator.
typedef const AkReal32 AK::SpeakerVolumes::ConstMatrixPtr
  Constant volume matrix. Access each input channel vector with AK::SpeakerVolumes::Matrix::GetChannel().

Functions

AkForceInline void  AK::SpeakerVolumes::Vector::Copy (VectorPtr in_pVolumesDst, ConstVectorPtr in_pVolumesSrc, AkUInt32 in_uNumChannels)
  Copy volumes.
AkForceInline void  AK::SpeakerVolumes::Vector::Copy (VectorPtr in_pVolumesDst, ConstVectorPtr in_pVolumesSrc, AkUInt32 in_uNumChannels, AkReal32 in_fGain)
  Copy volumes with gain.
AkForceInline void  AK::SpeakerVolumes::Vector::Zero (VectorPtr in_pVolumes, AkUInt32 in_uNumChannels)
  Clear volumes.
AkForceInline void  AK::SpeakerVolumes::Vector::Add (VectorPtr in_pVolumesDst, ConstVectorPtr in_pVolumesSrc, AkUInt32 in_uNumChannels)
  Accumulate two volume vectors.
AkForceInline AkReal32  AK::SpeakerVolumes::Vector::L1Norm (ConstVectorPtr io_pVolumes, AkUInt32 in_uNumChannels)
  Compute the sum of all components of a volume vector.
AkForceInline void  AK::SpeakerVolumes::Vector::Mul (VectorPtr in_pVolumesDst, const AkReal32 in_fVol, AkUInt32 in_uNumChannels)
  Multiply volume vector with a scalar.
AkForceInline void  AK::SpeakerVolumes::Vector::Mul (VectorPtr in_pVolumesDst, ConstVectorPtr in_pVolumesSrc, AkUInt32 in_uNumChannels)
  Multiply two volume vectors.
AkForceInline void  AK::SpeakerVolumes::Vector::Max (AkReal32 *in_pVolumesDst, const AkReal32 *in_pVolumesSrc, AkUInt32 in_uNumChannels)
  Get max for all elements of two volume vectors, independently.
AkForceInline void  AK::SpeakerVolumes::Vector::Min (AkReal32 *in_pVolumesDst, const AkReal32 *in_pVolumesSrc, AkUInt32 in_uNumChannels)
  Get min for all elements of two volume vectors, independently.
AkForceInline AkUInt32  AK::SpeakerVolumes::Matrix::GetRequiredSize (AkUInt32 in_uNumChannelsIn, AkUInt32 in_uNumChannelsOut)
  Compute size (in bytes) required for given channel configurations.
AkForceInline AkUInt32  AK::SpeakerVolumes::Matrix::GetNumElements (AkUInt32 in_uNumChannelsIn, AkUInt32 in_uNumChannelsOut)
  Compute size (in number of elements) required for given channel configurations.
AkForceInline VectorPtr  AK::SpeakerVolumes::Matrix::GetChannel (MatrixPtr in_pVolumeMx, AkUInt32 in_uIdxChannelIn, AkUInt32 in_uNumChannelsOut)
  Get pointer to volume distribution for input channel in_uIdxChannelIn.
AkForceInline ConstVectorPtr  AK::SpeakerVolumes::Matrix::GetChannel (ConstMatrixPtr in_pVolumeMx, AkUInt32 in_uIdxChannelIn, AkUInt32 in_uNumChannelsOut)
  Get pointer to volume distribution for input channel in_uIdxChannelIn.
AkForceInline void  AK::SpeakerVolumes::Matrix::Copy (MatrixPtr in_pVolumesDst, ConstMatrixPtr in_pVolumesSrc, AkUInt32 in_uNumChannelsIn, AkUInt32 in_uNumChannelsOut)
  Copy matrix.
AkForceInline void  AK::SpeakerVolumes::Matrix::Copy (MatrixPtr in_pVolumesDst, ConstMatrixPtr in_pVolumesSrc, AkUInt32 in_uNumChannelsIn, AkUInt32 in_uNumChannelsOut, AkReal32 in_fGain)
  Copy matrix with gain.
AkForceInline void  AK::SpeakerVolumes::Matrix::Zero (MatrixPtr in_pVolumes, AkUInt32 in_uNumChannelsIn, AkUInt32 in_uNumChannelsOut)
  Clear matrix.
AkForceInline void  AK::SpeakerVolumes::Matrix::Mul (MatrixPtr in_pVolumesDst, const AkReal32 in_fVol, AkUInt32 in_uNumChannelsIn, AkUInt32 in_uNumChannelsOut)
  Multiply a matrix with a scalar.
AkForceInline void  AK::SpeakerVolumes::Matrix::Add (MatrixPtr in_pVolumesDst, ConstMatrixPtr in_pVolumesSrc, AkUInt32 in_uNumChannelsIn, AkUInt32 in_uNumChannelsOut)
  Add all elements of two volume matrices, independently.
AkForceInline void  AK::SpeakerVolumes::Matrix::AbsMax (MatrixPtr in_pVolumesDst, ConstMatrixPtr in_pVolumesSrc, AkUInt32 in_uNumChannelsIn, AkUInt32 in_uNumChannelsOut)
  Get absolute max for all elements of two volume matrices, independently.
AkForceInline void  AK::SpeakerVolumes::Matrix::Max (MatrixPtr in_pVolumesDst, ConstMatrixPtr in_pVolumesSrc, AkUInt32 in_uNumChannelsIn, AkUInt32 in_uNumChannelsOut)
  Get max for all elements of two volume matrices, independently.

Detailed Description

Multi-channel volume definitions and services. Always associated with an AkChannelConfig. In the case of standard configurations, the volume items ordering match the bit ordering in the channel mask, except for the LFE which is skipped and placed at the end of the volume array. Refer to Advanced Mix Customization Using the Speaker Matrix Callback for an example of how to manipulate speaker volume vectors/matrices.

Definition in file AkSpeakerVolumes.h.


이 페이지가 도움이 되었나요?

지원이 필요하신가요?

질문이 있으신가요? 문제를 겪고 계신가요? 더 많은 정보가 필요하신가요? 저희에게 문의해주시면 도와드리겠습니다!

지원 페이지를 방문해 주세요

작업하는 프로젝트에 대해 알려주세요. 언제든지 도와드릴 준비가 되어 있습니다.

프로젝트를 등록하세요. 아무런 조건이나 의무 사항 없이 빠른 시작을 도와드리겠습니다.

Wwise를 시작해 보세요