CRIWARE Unity Plugin Manual  Last Updated: 2024-07-12
CriAtomExRawPcmVoicePool类 参考

RawPCM Voice池 更多...

类 CriAtomExRawPcmVoicePool 继承关系图:
CriAtomExVoicePool

Public 类型

enum  RawPcmFormat
 RawPCM 格式 更多...
 
enum  VoicePoolId {
  StandardMemory = StandardMemoryAsrVoicePoolId, StandardStreaming = StandardStreamingAsrVoicePoolId, StandardMemory = StandardMemoryNsrVoicePoolId, StandardStreaming = StandardStreamingNsrVoicePoolId,
  HcaMxMemory = 4, HcaMxStreaming = 5, LowLatencyMemory = StandardMemoryNsrVoicePoolId, LowLatencyStreaming = StandardStreamingNsrVoicePoolId
}
 用于存取在插件内部创建的Voice池的ID 更多...
 
enum  PitchShifterMode : int
 移调器DSP的动作模式 更多...
 

Public 成员函数

 CriAtomExRawPcmVoicePool (int numVoices, int maxChannels, int maxSamplingRate, RawPcmFormat format, uint identifier=0)
 创建RawPCM Voice池 更多...
 
UsedVoicesInfo GetNumUsedVoices ()
 获取Voice池的Voice使用情况 更多...
 
override void Dispose ()
 丢弃Voice池 更多...
 
void AttachDspTimeStretch ()
 添加时间拉伸DSP 更多...
 
void AttachDspPitchShifter (PitchShifterMode mode=PitchShifterMode.Music, int windosSize=1024, int overlapTimes=4)
 添加移调器DSP 更多...
 
void DetachDsp ()
 切断DSP 更多...
 

静态 Public 成员函数

static UsedVoicesInfo GetNumUsedVoices (VoicePoolId voicePoolId)
 获取Voice池的Voice使用情况 更多...
 

属性

uint identifier [get]
 Voice池标识符 更多...
 

详细描述

RawPCM Voice池

成员枚举类型说明

enum RawPcmFormat
strong

RawPCM 格式

说明:
使用 RawPCM Voice池播放的数据格式。
参见
CriAtomExVoicePool.CriAtomExRawPcmVoicePool
enum VoicePoolId
stronginherited

用于存取在插件内部创建的Voice池的ID

参见
CriAtomExVoicePool.GetNumUsedVoices
枚举值
StandardMemory 

机型标准的内存播放Voice池ID

StandardStreaming 

机型标准的串流播放Voice池ID

StandardMemory 

机型标准的内存播放Voice池ID

StandardStreaming 

机型标准的串流播放Voice池ID

HcaMxMemory 

HCA-MX内存播放Voice池ID

HcaMxStreaming 

HCA-MX串流播放Voice池ID

LowLatencyMemory 

[Android] 低延迟内存播放Voice池ID

LowLatencyStreaming 

[Android] 低延迟串流播放Voice池ID

enum PitchShifterMode : int
stronginherited

移调器DSP的动作模式

说明:
指定移调的处理方法(算法)。
参见
CriAtomExVoicePool.AttachDspPitchShifter, CriAtomExPlayer.SetDspParameter

构造及析构函数说明

CriAtomExRawPcmVoicePool ( int  numVoices,
int  maxChannels,
int  maxSamplingRate,
RawPcmFormat  format,
uint  identifier = 0 
)
inline

创建RawPCM Voice池

参数
numVoicesVoice数
maxChannels最大声道数
maxSamplingRate最大采样率
formatRawPCM 格式
identifierVoice池标识符
返回
RawPCM Voice池
说明:
通过执行本函数,可以进行 RawPCM 播放的Voice将被提取。
如果用 AtomExPlayer播放 RawPCM 数据(或包含 RawPCM 数据的Cue), 则 AtomExPlayer将会从创建的 RawPCM Voice池获取Voice来进行播放。
播放结束后,请务必用 Dispose 函数将对象丢弃。
如果想针对特定的 CriAtomExPlayer,明确地设置为从创建的Voice池获取Voice时, 作为 identifier,请指定预设的 0 以外的值来进行创建, 调用 CriAtomExPlayer::SetVoicePoolIdentifier 函数。
注意:
目前无法更改创建后的 RawPCM Voice池的格式。
请根据要播放的数据,指定格式来创建。
此外,即使针对 CriWare.CriAtomExPlayer 指定声道数和采样率, 也不会针对Voice池,基于所设置的格式来进行播放。
参见
CriAtomExPlayer::SetVoicePoolIdentifier

成员函数说明

static UsedVoicesInfo GetNumUsedVoices ( VoicePoolId  voicePoolId)
inlinestaticinherited

获取Voice池的Voice使用情况

参数
voicePoolIdVoice池的ID
返回
Voice使用情况
说明:
获取指定的Voice池的Voice使用情况。
注意:
请仅将本函数用于调试目的。
参见
CriAtomExVoicePool::VoicePoolId, CriAtomExVoicePool::UsedVoicesInfo
UsedVoicesInfo GetNumUsedVoices ( )
inlineinherited

获取Voice池的Voice使用情况

返回
Voice使用情况
说明:
获取Voice使用情况。
注意:
请仅将本函数用于调试目的。
参见
CriAtomExVoicePool::UsedVoicesInfo
override void Dispose ( )
inlineinherited

丢弃Voice池

说明:
对Voice池对象进行丢弃。
如果不用本API丢弃创建的对象,则会发生资源泄露,因此请务必将其丢弃。
void AttachDspTimeStretch ( )
inlineinherited

添加时间拉伸DSP

说明:
在Voice池中添加时间拉伸DSP。
注意:
本函数是完成返回型函数。
执行本函数后,一段时间内,Atom运行库的Server处理将被阻断。
如果在音频播放过程中执行本函数,则可能会发生声音中断等异常, 要调用本函数时,请在场景切换等能够承受负荷变动的时机上进行调用。
参见
CriAtomExVoicePool::DetachInsertionDsp
void AttachDspPitchShifter ( PitchShifterMode  mode = PitchShifterMode.Music,
int  windosSize = 1024,
int  overlapTimes = 4 
)
inlineinherited

添加移调器DSP

参数
mode移调模式
windosSize窗口大小
overlapTimes重叠次数
说明:
在Voice池中添加移调器DSP。
注意:
本函数是完成返回型函数。
执行本函数后,一段时间内,Atom运行库的Server处理将被阻断。
如果在音频播放过程中执行本函数,则可能会发生声音中断等异常, 要调用本函数时,请在场景切换等能够承受负荷变动的时机上进行调用。
参见
CriAtomExVoicePool::DetachInsertionDsp
void DetachDsp ( )
inlineinherited

切断DSP

说明:
删除Voice池中添加的DSP。
注意:
本函数是完成返回型函数。
执行本函数后,一段时间内,Atom运行库的Server处理将被阻断。
如果在音频播放过程中执行本函数,则可能会发生声音中断等异常, 要调用本函数时,请在场景切换等能够承受负荷变动的时机上进行调用。
参见
CriAtomExVoicePool::AttachDspPitchShifter, CriAtomExVoicePool::AttachDspTimeStretch

属性说明

uint identifier
getinherited

Voice池标识符

说明:
Voice池标识符是唯一标识Voice池的ID。
备注:
通过为播放器 (CriAtomExPlayer.SetVoicePoolIdentifier) 和Voice Pool设置相同的标识符,
播放器将仅从配置的Voice Pool中获取Voice。
参见
CriAtomExVoicePool::VoicePoolId, CriAtomExVoicePool::UsedVoicesInfo

该类的文档由以下文件生成: