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

控制Voice池的抽象类 更多...

类 CriAtomExVoicePool 继承关系图:
CriAtomExRawPcmVoicePool CriAtomExStandardVoicePool CriAtomExWaveVoicePool

struct  PlayerConfig
 Voice驱动操作规范配置结构体 更多...
 
struct  UsedVoicesInfo
 用于显示Voice池的Voice使用情况的结构体 更多...
 

Public 类型

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 成员函数

override void Dispose ()
 丢弃Voice池 更多...
 
UsedVoicesInfo GetNumUsedVoices ()
 获取Voice池的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池标识符 更多...
 

详细描述

控制Voice池的抽象类

说明:
这是一个用于控制Voice Pool的抽象类。
实际创建Voice Pool时,会使用其继承类对应不同的编码/播放格式。

成员枚举类型说明

enum VoicePoolId
strong

用于存取在插件内部创建的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
strong

移调器DSP的动作模式

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

成员函数说明

static UsedVoicesInfo GetNumUsedVoices ( VoicePoolId  voicePoolId)
inlinestatic

获取Voice池的Voice使用情况

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

丢弃Voice池

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

获取Voice池的Voice使用情况

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

添加时间拉伸DSP

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

添加移调器DSP

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

切断DSP

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

属性说明

uint identifier
get

Voice池标识符

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

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