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

AtomExPlayer 更多...

继承自 CriDisposable .

Public 类型

enum  Status {
  Stop = 0, Prep, Playing, PlayEnd,
  Error
}
 Player状态 更多...
 
enum  TimeStretchParameterId : int { Ratio = 0, FrameTime = 1, Quality = 2 }
 时间拉伸用参数 更多...
 
enum  PitchShifterParameterId : int { Pitch = 0, Formant = 1, Mode = 2 }
 移调器用参数 更多...
 

Public 成员函数

 CriAtomExPlayer ()
 创建AtomExPlayer 更多...
 
 CriAtomExPlayer (int maxPath, int maxPathStrings)
 创建AtomExPlayer(单个文件播放用) 更多...
 
 CriAtomExPlayer (bool enableAudioSyncedTimer)
 创建AtomExPlayer(利用音频同步计时器) 更多...
 
 CriAtomExPlayer (int maxPath, int maxPathStrings, bool enableAudioSyncedTimer)
 创建AtomExPlayer(单个文件播放,利用音频同步计时器) 更多...
 
override void Dispose ()
 丢弃AtomExPlayer 更多...
 
void SetCue (CriAtomExAcb acb, string name)
 设置音频数据(指定Cue名) 更多...
 
void SetCue (CriAtomExAcb acb, int id)
 设置音频数据(指定Cue ID) 更多...
 
void SetCueIndex (CriAtomExAcb acb, int index)
 设置音频数据(指定Cue索引) 更多...
 
void SetContentId (CriFsBinder binder, int contentId)
 设置音频数据(指定CPK内容ID) 更多...
 
void SetFile (CriFsBinder binder, string path)
 设置音频数据(指定文件名) 更多...
 
void SetData (byte[] buffer, int size)
 设置音频数据(指定内存中的字节数组) 更多...
 
void SetData (IntPtr buffer, int size)
 设置音频数据(指定内存中的缓冲区地址) 更多...
 
void SetFormat (CriAtomEx.Format format)
 指定格式 更多...
 
void SetNumChannels (int numChannels)
 指定声道数 更多...
 
void SetSamplingRate (int samplingRate)
 指定采样率 更多...
 
void PrepareEntryPool (int capacity, bool stopOnEmpty)
 创建连接播放用Entry Pool 更多...
 
int GetNumEntries ()
 连接播放用数据的条目数 更多...
 
int GetNumConsumedEntries ()
 进入播放过程的数据条目数 更多...
 
bool EntryFile (CriFsBinder binder, string path, bool repeat)
 输入连接播放用数据(指定文件名) 更多...
 
bool EntryContentId (CriFsBinder binder, int contentId, bool repeat)
 输入连接播放用数据(指定CPK内容ID) 更多...
 
bool EntryData (byte[] buffer, int size, bool repeat)
 输入连接播放用数据(指定内存中的字节数组) 更多...
 
bool EntryData (IntPtr buffer, int size, bool repeat)
 输入连接播放用数据(指定内存中的缓冲区地址) 更多...
 
bool EntryCue (CriAtomExAcb acb, string name, bool repeat)
 输入连接播放用数据(指定Cue名) 更多...
 
CriAtomExPlayback Start ()
 开始播放 更多...
 
CriAtomExPlayback Prepare ()
 准备播放 更多...
 
void Stop (bool ignoresReleaseTime)
 播放停止 更多...
 
void Pause ()
 暂停 更多...
 
void Resume (CriAtomEx.ResumeMode mode)
 解除暂停 更多...
 
bool IsPaused ()
 获取暂停状态 更多...
 
void SetVolume (float volume)
 设置音量 更多...
 
void SetPitch (float pitch)
 设置音高 更多...
 
void SetPlaybackRatio (float ratio)
 序列播放速率的设置 更多...
 
void SetPan3dAngle (float angle)
 设置Panning 3D角度 更多...
 
void SetPan3dInteriorDistance (float distance)
 设置Panning 3D距离 更多...
 
void SetPan3dVolume (float volume)
 设置Panning 3D音量 更多...
 
void SetPanType (CriAtomEx.PanType panType)
 设置Pan类型 更多...
 
void SetSendLevel (int channel, CriAtomEx.Speaker id, float level)
 设置发送电平 更多...
 
void SetBiquadFilterParameters (CriAtomEx.BiquadFilterType type, float frequency, float gain, float q)
 设置双二阶滤波器的参数 更多...
 
void SetBandpassFilterParameters (float cofLow, float cofHigh)
 设置带通滤波器的参数 更多...
 
void SetBusSendLevel (string busName, float level)
 设置总线发送电平(指定总线名称) 更多...
 
bool GetBusSendLevel (string busName, out float level)
 获取总线发送量(电平)(指定总线名称) 更多...
 
void SetBusSendLevel (int busId, float level)
 
void SetBusSendLevelOffset (string busName, float levelOffset)
 设置偏移的总线发送Level(指定总线名) 更多...
 
bool GetBusSendLevelOffset (string busName, out float level)
 获取总线发送量(电平)的偏移值(指定总线名称) 更多...
 
void SetBusSendLevelOffset (int busId, float levelOffset)
 
void AttachAisac (string globalAisacName)
 为Player添加AISAC 更多...
 
void DetachAisac (string globalAisacName)
 从Player切断AISAC 更多...
 
void SetAisacControl (string controlName, float value)
 设置AISAC控制器值(指定控制器名) 更多...
 
void SetAisac (string controlName, float value)
 
void SetAisacControl (uint controlId, float value)
 设置AISAC控制器值(指定控制器ID) 更多...
 
void SetAisac (uint controlId, float value)
 
bool GetAttachedAisacInfo (int aisacAttachedIndex, out CriAtomEx.AisacInfo aisacInfo)
 获取添加在Player上的AISAC的信息。 更多...
 
void Set3dSource (CriAtomEx3dSource source)
 设置3D声源对象 更多...
 
void Set3dListener (CriAtomEx3dListener listener)
 设置3D收听者对象 更多...
 
void SetStartTime (long startTimeMs)
 指定播放开始位置 更多...
 
void SetFirstBlockIndex (int index)
 设置播放开始块(指定块索引) 更多...
 
void SetSelectorLabel (string selector, string label)
 设置选择器信息 更多...
 
void UnsetSelectorLabel (string selector)
 删除所设置的选择器信息 更多...
 
void ClearSelectorLabels ()
 删除所有设置的选择器信息 更多...
 
void SetCategory (int categoryId)
 设置类别(指定ID) 更多...
 
void SetCategory (string categoryName)
 设置类别(指定类别名) 更多...
 
void UnsetCategory ()
 删除类别 更多...
 
void SetCuePriority (int priority)
 设置Cue优先级 更多...
 
void SetVoicePriority (int priority)
 设置Voice优先级 更多...
 
void SetVoiceControlMethod (CriAtomEx.VoiceControlMethod method)
 指定Voice控制方法 更多...
 
void SetPreDelayTime (float time)
 设置预延迟时间 更多...
 
void SetEnvelopeAttackTime (float time)
 设置EG的Attack时间 更多...
 
void SetEnvelopeHoldTime (float time)
 设置EG的Hold时间 更多...
 
void SetEnvelopeDecayTime (float time)
 设置EG的Decay时间 更多...
 
void SetEnvelopeReleaseTime (float time)
 设置EG的Release时间 更多...
 
void SetEnvelopeSustainLevel (float level)
 设置EG的Sustain Level 更多...
 
void AttachFader ()
 将渐变器安装至Player 更多...
 
void DetachFader ()
 从Player上删除渐变器 更多...
 
void SetFadeOutTime (int ms)
 设置渐出时间 更多...
 
void SetFadeInTime (int ms)
 设置渐入时间 更多...
 
void SetFadeInStartOffset (int ms)
 设置渐入开始偏移 更多...
 
void SetFadeOutEndDelay (int ms)
 设置渐出后的延迟时间 更多...
 
bool IsFading ()
 获取是否正在进行渐变处理 更多...
 
void ResetFaderParameters ()
 渐变器参数初始化 更多...
 
void SetGroupNumber (int group_no)
 指定组编号 更多...
 
void Update (CriAtomExPlayback playback)
 更新播放参数(CriAtomExPlayback对象单位) 更多...
 
void UpdateAll ()
 更新播放参数(正在播放的所有声音) 更多...
 
void ResetParameters ()
 初始化播放参数 更多...
 
long GetTime ()
 获取播放时间 更多...
 
Status GetStatus ()
 获取状态 更多...
 
float GetParameterFloat32 (CriAtomEx.Parameter id)
 获取参数(浮点数) 更多...
 
uint GetParameterUint32 (CriAtomEx.Parameter id)
 获取参数(无符号的整数) 更多...
 
int GetParameterSint32 (CriAtomEx.Parameter id)
 获取参数(带符号的整数) 更多...
 
void SetSoundRendererType (CriAtomEx.SoundRendererType type)
 设置输出声音渲染器类型 更多...
 
void SetRandomSeed (uint seed)
 设置随机数种类 更多...
 
void Loop (bool sw)
 循环播放切换 更多...
 
void SetAsrRackId (int asr_rack_id)
 指定ASR Rack ID 更多...
 
void SetVoicePoolIdentifier (uint identifier)
 设置Voice池标识符 更多...
 
void SetDspTimeStretchRatio (float ratio)
 设置DSP时间拉伸比率 更多...
 
void SetDspPitchShifterPitch (float pitch)
 设置DSP移调器的音高移调量 更多...
 
void SetDspParameter (int id, float value)
 设置DSP参数 更多...
 
void AttachTween (CriAtomExTween tween)
 AtomExTween的挂载 更多...
 
void DetachTween (CriAtomExTween tween)
 AtomExTween的卸载 更多...
 
void DetachTweenAll ()
 卸载所有AtomExTween 更多...
 
void SetEnvelopeAttackCurve (CriAtomEx.CurveType curveType, float strength)
 包络的Attack曲线的设置 更多...
 
void SetEnvelopeDecayCurve (CriAtomEx.CurveType curveType, float strength)
 包络的Decay曲线的设置 更多...
 
void SetEnvelopeReleaseCurve (CriAtomEx.CurveType curveType, float strength)
 包络的Release曲线的设置 更多...
 
void AddOutputPort (CriAtomExOutputPort outputPort)
 添加输出端口对象 更多...
 
void RemoveOutputPort (CriAtomExOutputPort outputPort)
 卸载输出端口对象 更多...
 
void ClearOutputPorts ()
 清除输出端口对象 更多...
 
void AddPreferredOutputPort (CriAtomExOutputPort outputPort)
 添加优先输出端口对象 更多...
 
void RemovePreferredOutputPort (CriAtomExOutputPort outputPort)
 卸载优先输出端口对象 更多...
 
void RemovePreferredOutputPort (string name)
 卸载优先输出端口对象(名称指定) 更多...
 
void ClearPreferredOutputPorts ()
 清除优先输出端口对象 更多...
 
void SetScheduleTime (System.Int64 scheduleTime)
 预约播放时间的指定 更多...
 

静态 Public 属性

static readonly uint MaxOutputPorts = 8
 在Player中可以指定的最大输出端口数 更多...
 

属性

CriAtomExBeatSync.CbFunc OnBeatSyncCallback
 注册序列事件回调 更多...
 
CriAtomExSequencer.EventCallback OnSequenceCallback
 注册节拍同步回调 更多...
 
int entryPoolCapacity [get]
 可输入的连接播放用数据
 

详细描述

AtomExPlayer

说明:
是用于控制音频播放的Player类。
对数据的设置和播放开始,状态获取等进行控制。

成员枚举类型说明

enum Status
strong

Player状态

说明:
显示AtomExPlayer的播放状态的值。
可通过 CriWare.CriAtomExPlayer::GetStatus 函数获取。

播放状态会按照以下顺序进行转换。
  1. Stop
  2. Prep
  3. Playing
  4. PlayEnd
AtomExPlayer创建之后的状态为停止状态( Stop )。
CriWare.CriAtomExPlayer::SetCue 函数等设置数据, CriWare.CriAtomExPlayer::Start 并执行函数后,更改为播放准备状态( Prep ),开始播放准备。
提供了充分了数据,播放准备完毕后,状态会更改为正在播放( Playing ), 可是输出音频。
设置的数据全部播放完毕后,状态会更改为播放结束 ( PlayEnd )。
备注:
AtomExPlayer可以用一个Player播放多个声音。
如果针对正在播放的AtomExPlayer执行 CriWare.CriAtomExPlayer::Start 函数, 则将会重叠两个声音进行播放。
如果在播放过程中执行了 CriWare.CriAtomExPlayer::Stop 函数时, 则用AtomExPlayer正在播放的所有音频都将停止,状态将返回至 Stop。
(根据调用 CriWare.CriAtomExPlayer::Stop 函数的时机,转换至 Stop 可能会需要较长时间。)

如果用一个AtomExPlayer执行了多次 CriWare.CriAtomExPlayer::Start 函数, 则即使剩下一个播放准备中的声音,状态也会更改为 Prep 状态。
(所有音频更改为正在播放的状态前,状态不会转换为 Playing 状态。)
此外,如果针对 Playing 状态的Player,再次 CriWare.CriAtomExPlayer::Start 执行了函数,则状态将暂时恢复为 Prep。

播放过程中如果读取了不正常的数据,到此文件存取失败时, 状态会转换为 Error。
播放多个音频过程中,如果某个音频发生了错误,则不论其他声音的状态如何 Player的状态都会转换为 Error。
参见
CriAtomExPlayer::GetStatus, CriAtomExPlayer::Start, CriAtomExPlayer
枚举值
Stop 

已停止

Prep 

播放准备中

Playing 

正在播放

PlayEnd 

结束播放

Error 

发生错误

enum TimeStretchParameterId : int
strong

时间拉伸用参数

说明:
时间拉伸DSP指定的参数。
参见
CriAtomExVoicePool.AttachDspTimeStretch, CriAtomExPlayer.SetDspParameter
枚举值
Ratio 

拉伸比率

FrameTime 

帧时间

Quality 

处理质量

enum PitchShifterParameterId : int
strong

移调器用参数

说明:
是指定于移调器DSP的参数。
参见
CriAtomExVoicePool.AttachDspPitchShifter, CriAtomExPlayer.SetDspParameter
枚举值
Pitch 

音高

Formant 

共振峰

Mode 

移调模式

构造及析构函数说明

CriAtomExPlayer ( )
inline

创建AtomExPlayer

返回
AtomExPlayer
说明:
创建AtomExPlayer。

使用所创建的AtomExPlayer播放音频数据时的播放步骤如下。
  1. 使用 CriWare.CriAtomExPlayer::SetCue 函数,设置要播放至AtomExPlayer的数据。
  2. CriWare.CriAtomExPlayer::Start 函数开始播放。
注意:
执行本函数前,需要事先对程序库进行初始化。

要用 CriWare.CriAtomExPlayer::SetFile 函数指定未打包的音频文件 来进行播放时,需要使用 CriWare.CriAtomExPlayer::CriAtomExPlayer(int, int) 来代替本函数。

本函数是完成返回型函数。
在不同的平台上,创建AtomExPlayer所需的时间也会不同。
在游戏循环等需要更新画面时,如果执行本函数, 可能会以毫秒单位将处理阻断,导致发生丢帧。
要创建/丢弃AtomExPlayer时,请在场景切换等 能承受负荷变动的时候进行操作。
参见
CriAtomExPlayer::Dispose, CriAtomExPlayer::SetCue, CriAtomExPlayer::Start, CriAtomExPlayer::CriAtomExPlayer(int, int), CriAtomExPlayer::CriAtomExPlayer(bool), CriAtomExPlayer::CriAtomExPlayer(int, int, bool)
CriAtomExPlayer ( int  maxPath,
int  maxPathStrings 
)
inline

创建AtomExPlayer(单个文件播放用)

参数
maxPath最大路径字符串长度
maxPathStrings同时播放文件数
返回
AtomExPlayer
说明:
创建用于播放单个文件的AtomExPlayer。
除了可以播放单个文件之外,其余的基本规格与 CriWare.CriAtomExPlayer::CriAtomExPlayer() 函数相同。
备注:
用本函数创建的AtomExPlayer, 会取得maxPath×maxPathStrings的内存区域,用来播放单个文件。
该区域不会用于ACB文件和AWB文件播放。
不使用 CriWare.CriAtomExPlayer::SetFile 函数时,请使用 CriWare.CriAtomExPlayer::CriAtomExPlayer() 函数来代替本函数, 就能够降低内存使用量。
参见
CriAtomExPlayer::CriAtomExPlayer()
CriAtomExPlayer ( bool  enableAudioSyncedTimer)
inline

创建AtomExPlayer(利用音频同步计时器)

参数
enableAudioSyncedTimer音频同步计时器有效标记
返回
AtomExPlayer
说明:
创建可使用音频同步计时器的AtomExPlayer。
除了能获取与音频同步的播放时间之外,基本规格与 CriWare.CriAtomExPlayer::CriAtomExPlayer() 函数相同。
备注:
针对用本函数将参数指定为 true 创建的AtomExPlayer, 将会对播放的音频,进行与播放完毕样本数相同步的时间的 更新处理。
如果不使用 CriWare.CriAtomExPlayback::GetTimeSyncedWithAudio 函数, 则可以为本函数的参数指定 false,或者使用 CriWare.CriAtomExPlayer::CriAtomExPlayer() 来代替本函数, 就能降低负荷增加。
注意:
针对用本函数将参数指定为 true 创建的AtomExPlayer, 无法通过 CriWare.CriAtomExPlayer::SetPitch 函数更改播放的音高。
参见
CriAtomExPlayer::CriAtomExPlayer(), CriAtomExPlayback::GetTimeSyncedWithAudio()
CriAtomExPlayer ( int  maxPath,
int  maxPathStrings,
bool  enableAudioSyncedTimer 
)
inline

创建AtomExPlayer(单个文件播放,利用音频同步计时器)

参数
maxPath最大路径字符串长度
maxPathStrings同时播放文件数
enableAudioSyncedTimer音频同步计时器有效标记
返回
AtomExPlayer
说明:
创建用于播放单个文件的AtomExPlayer。
通过指定至 enableAudioSyncedTimer 的标记,可以获取与音频同步的 播放时间。
基本规格与 CriWare.CriAtomExPlayer::CriAtomExPlayer() 函数相同。
参见
CriAtomExPlayer::CriAtomExPlayer(), CriAtomExPlayer::CriAtomExPlayer(int, int), CriAtomExPlayer::CriAtomExPlayer(bool)

成员函数说明

override void Dispose ( )
inline

丢弃AtomExPlayer

说明:
丢弃AtomExPlayer。
一旦执行了本函数,创建AtomExPlayer时,在DLL内取得的资源将全部被释放。
注意:
本函数是完成返回型函数。
要丢弃正在播放音频的AtomExPlayer时,本函数内将会等待播放停止后, 再释放资源。
(如果是从文件进行播放,则还会等待读取完成。)
因此,本函数内的处理可能会长时间(数帧)被阻断。
要创建/丢弃AtomExPlayer时,请在场景切换等 能承受负荷变动的时候进行操作。
参见
CriAtomExPlayer::CriAtomExPlayer
void SetCue ( CriAtomExAcb  acb,
string  name 
)
inline

设置音频数据(指定Cue名)

参数
acbACB对象
nameCue名
说明:
将Cue名关联至AtomExPlayer。
用本函数指定Cue名后,如果用 CriWare.CriAtomExPlayer::Start 函数开始播放,则将会播放指定的Cue。
备注:
当用 CriWare.CriAtomExPlayer::SetCue 函数设置Cue时,以下函数设置的参数将被忽略。

(音频格式、声道数和采样率等信息是根据ACB文件的信息自动设置的)。

例:
:
// プレーヤの作成
// ACFファイルの登録
CriAtomEx.RegisterAcf(null, "sample.acf");
// ACBファイルのロード
CriAtomExAcb acb = CriAtomExAcb.LoadAcbFile(null, "sample.acb", "sample.awb");
// 再生するキューの名前を指定
player.SetCue(acb, "gun_shot");
// セットされた音声データを再生
player.Start();
:
此外,设置了数据的信息后, 在设置其他数据前,该信息会一直保持在AtomExPlayer内。
因此,如果要多次播放相同的数据, 无需在每次播放时重新设置数据。
CriWare.CriAtomExPlayer::Start 函数可以反复执行。)
参见
CriAtomExPlayer::Start
void SetCue ( CriAtomExAcb  acb,
int  id 
)
inline

设置音频数据(指定Cue ID)

参数
acbACB对象
idCue ID
说明:
将Cue ID关联至AtomExPlayer。
用本函数指定Cue ID后,如果用 CriWare.CriAtomExPlayer::Start 函数开始播放,则将会播放所指定的Cue。
备注:
当用 CriWare.CriAtomExPlayer::SetCue 函数设置Cue时,以下函数设置的 参数将被忽略。

(音频格式、声道数和采样率等信息是根据ACB文件的信息自动设置的)。

例:
:
// プレーヤの作成
// ACFファイルの登録
CriAtomEx.RegisterAcf(null, "sample.acf");
// ACBファイルのロード
CriAtomExAcb acb = CriAtomExAcb.LoadAcbFile(null, "sample.acb", "sample.awb");
// 再生するキューのIDを指定
player.SetCue(acb, 100);
// セットされた音声データを再生
player.Start();
:
此外,设置了数据的信息后, 在设置其他数据前,该信息会一直保持在AtomExPlayer内。
因此,如果要多次播放相同的数据, 无需在每次播放时重新设置数据。
CriWare.CriAtomExPlayer::Start 函数可以反复执行。)
参见
CriAtomExPlayer::Start
void SetCueIndex ( CriAtomExAcb  acb,
int  index 
)
inline

设置音频数据(指定Cue索引)

参数
acbACB对象
indexCue索引
说明:
将Cue索引关联至AtomExPlayer。
用本函数指定Cue索引后,如果用 CriWare.CriAtomExPlayer::Start 函数开始播放,则将会播放指定的Cue。
备注:
当用 CriWare.CriAtomExPlayer::SetCueIndex 函数设置Cue时,以下函数设置的参数将被忽略。

(音频格式、声道数和采样率等信息是根据ACB文件的信息自动设置的)

本函数可以用来将音频设置到Player,而不需要指定Cue名称或Cue ID。
(即使不知道Cue名称或Cue ID,ACB文件中的内容也能全部播放, 所以本函数可以用于调试。)

例:
:
// プレーヤの作成
// ACFファイルの登録
CriAtomEx.RegisterAcf(null, "sample.acf");
// ACBファイルのロード
CriAtomExAcb acb = CriAtomExAcb.LoadAcbFile(null, "sample.acb", "sample.awb");
// 再生するキューのインデックスを指定
player.SetCueIndex(acb, 300);
// セットされた音声データを再生
player.Start();
:
此外,设置了数据的信息后, 在设置其他数据前,该信息会一直保持在AtomExPlayer内。
因此,如果要多次播放相同的数据, 无需在每次播放时重新设置数据。
CriWare.CriAtomExPlayer::Start 函数可以反复执行。)
参见
CriAtomExPlayer::Start
void SetContentId ( CriFsBinder  binder,
int  contentId 
)
inline

设置音频数据(指定CPK内容ID)

参数
binderBinder
contentId内容ID
说明:
将内容关联至AtomExPlayer。
在使用CRI File System库,指定ID,播放CPK文件内 的内容文件时使用。
用本函数在Player上指定Binder和内容ID, 执行 CriWare.CriAtomExPlayer::Start 函数后, 指定的内容文件将会以串流方式播放。
此外,执行了本函数后,无法开始文件读取。
文件的读取的开始要等到执行 CriWare.CriAtomExPlayer::Start 函数后。
注意:
使用 CriWare.CriAtomExPlayer::SetContentId 函数设置音频数据时, 需要使用以下函数另外指定要播放的音频数据信息。
例:
:
// プレーヤの作成
// バインダの作成
CriFsBinder binder = new CriFsBinder();
// CPKファイルのバインドを開始
CriFsBindRequest bindRequest = CriFsUtility.BindCpk(binder, "sample.cpk");
// バインドの完了を待つ
yield return bindRequest.WaitForDone(this);
// 音声ファイルをセット
// sample.cpk内の1番のコンテンツをセット
player.SetContentId(binder, 1);
// 再生する音声データのフォーマットを指定
player.SetFormat(CriAtomEx.Format.ADX);
player.SetNumChannels(2);
player.SetSamplingRate(44100);
// セットされた音声データを再生
plaeyr.Start();
:
此外,设置了文件的信息后, 在设置其他数据前,该信息会一直保持在AtomExPlayer内。
因此,如果要多次播放相同的数据, 无需在每次播放时重新设置数据。
CriWare.CriAtomExPlayer::Start 函数可以反复执行。)
参见
CriAtomExPlayer::Start, CriAtomExPlayer::SetFormat, CriAtomExPlayer::SetNumChannels, CriAtomExPlayer::SetSamplingRate
void SetFile ( CriFsBinder  binder,
string  path 
)
inline

设置音频数据(指定文件名)

参数
binderBinder对象
path文件路径
说明:
将音频文件关联至AtomExPlayer。
用本函数指定文件后,如果用 CriWare.CriAtomExPlayer::Start 函数开始播放, 则指定的文件将会串流播放。
此外,执行了本函数后,无法开始文件读取。
文件的读取的开始要等到执行 CriWare.CriAtomExPlayer::Start 函数后。
注意:
使用本函数时,需要创建用于播放单个文件的AtomExPlayer。
具体来说,需要使用 CriWare.CriAtomExPlayer::CriAtomExPlayer(int, int) 来代替 CriWare.CriAtomExPlayer::CriAtomExPlayer()

CriWare.CriAtomExPlayer::SetFile 函数设置音频数据时, 需要使用以下函数另外指定要播放的音频数据的信息。
例:
:
// プレーヤの作成
// 音声ファイルをセット
player.SetFile(null, "sample.hca");
// 再生する音声データのフォーマットを指定
player.SetFormat(CriAtomEx.Format.HCA);
player.SetNumChannels(2);
player.SetSamplingRate(48000);
// セットされた音声データを再生
player.Start();
:
另外,设置过的文件信息会保留在AtomExPlayer中,直到设置其他数据。
因此,当多次播放相同的数据时,无需每次播放时都重置数据。
CriWare.CriAtomExPlayer::Start 函数可以重复执行。)

当目标是WebGL并且要播放的文件是.wav文件时
必须指定格式为 CriAtomEx.Format.AUDIO_BUFFER
player = new CriAtomExPlayer(256, 8);
player.SetFile(null, System.IO.Path.Combine(Common.streamingAssetsPath, "sample_se.wav"));
player.SetFormat(CriAtomEx.Format.AUDIO_BUFFER);
参见
CriAtomExPlayer::CriAtomExPlayer(int, int), CriAtomExPlayer::Start, CriAtomExPlayer::SetFormat, CriAtomExPlayer::SetNumChannels, CriAtomExPlayer::SetSamplingRate
void SetData ( byte[]  buffer,
int  size 
)
inline

设置音频数据(指定内存中的字节数组)

参数
buffer字节数组
size缓冲区大小
说明:
将内存上配置的音频数据关联至AtomExPlayer。
用本函数指定内存地址和大小后,如果用 CriWare.CriAtomExPlayer::Start 函数开始播放, 则将会播放所指定的数据。
注意:
使用本函数时,需要创建用于播放单个文件的AtomExPlayer。
具体来说,需要使用 CriWare.CriAtomExPlayer::CriAtomExPlayer(int, int) 来代替 CriWare.CriAtomExPlayer::CriAtomExPlayer()

CriWare.CriAtomExPlayer::SetData 函数设置音频数据时, 需要使用以下函数另外指定要播放的音频数据的信息。
注意:
为防止传递至SetData的缓冲区地址被收入垃圾回收器中, 请事先在应用程序侧传递固定的地址。
例:
:
// プレーヤの作成
// 音声ファイルをセット
player.SetData(null, buffer, size);
// 再生する音声データのフォーマットを指定
player.SetFormat(CriAtomEx.Format.HCA);
player.SetNumChannels(2);
player.SetSamplingRate(48000);
// セットされた音声データを再生
player.Start();
:
此外,设置了文件的信息后, 在设置其他数据前,该信息会一直保持在AtomExPlayer内。
因此,如果要多次播放相同的数据, 无需在每次播放时重新设置数据。
CriWare.CriAtomExPlayer::Start 函数可以反复执行。)
参见
CriAtomExPlayer::CriAtomExPlayer(int, int), CriAtomExPlayer::Start, CriAtomExPlayer::SetFormat, CriAtomExPlayer::SetNumChannels, CriAtomExPlayer::SetSamplingRate
void SetData ( IntPtr  buffer,
int  size 
)
inline

设置音频数据(指定内存中的缓冲区地址)

参数
buffer缓冲区地址
size缓冲区大小
说明:
关于详细内容,请参照 CriWare.CriAtomExPlayer::SetData(byte[], int)
参见
CriAtomExPlayer::SetData(byte[], int)
void SetFormat ( CriAtomEx.Format  format)
inline

指定格式

参数
format格式
说明:
指定AtomExPlayer播放的音频格式。
CriWare.CriAtomExPlayer::Start 函数播放音频时,AtomExPlayer会从Voice池获取 可以播放本函数指定的格式的数据的Voice。
函数执行前的预设值是ADX格式。
备注:
本函数仅在不使用ACB文件情况下播放音频时需要设置。
播放Cue时,会从Cue Sheet中自动获取格式, 因此无需另外执行本函数。
void SetNumChannels ( int  numChannels)
inline

指定声道数

参数
numChannels声道数
说明:
指定用AtomExPlayer播放的音频的声道数。
CriWare.CriAtomExPlayer::Start 函数播放音频时,AtomExPlayer会从Voice池获取 可以播放本函数指定的声道数的数据的Voice。
函数执行前的预设值是两个声道。
备注:
本函数仅在不使用ACB文件情况下播放音频时需要设置。
播放Cue时,会从Cue Sheet中自动获取格式, 因此无需另外执行本函数。
void SetSamplingRate ( int  samplingRate)
inline

指定采样率

参数
samplingRate采样率
说明:
指定用AtomExPlayer播放的音频的采样率。
CriWare.CriAtomExPlayer::Start 函数播放音频时,AtomExPlayer是会从Voice池获取 可以播放用本函数指定的采样率的数据的Voice。
函数执行前的预设值是32000Hz。
备注:
本函数仅在不使用ACB文件情况下播放音频时需要设置。
播放Cue时,会从Cue Sheet中自动获取格式, 因此无需另外执行本函数。
void PrepareEntryPool ( int  capacity,
bool  stopOnEmpty 
)
inline

创建连接播放用Entry Pool

参数
capacity可输入的数据数
stopOnEmptyEntry Pool空时是否停止
说明:
创建使用 CriWare.CriAtomExPlayer::EntryData 等进行连接播放时所需的Entry Pool。
注意:
调用本函数后,Player会更改为连接播放用的播放模式。
stopOnEmpty 标记为 false 时,用 CriWare.CriAtomExPlayer::SetDataCriWare.CriAtomExPlayer::EntryData 等提供的数据即使到达了末尾,也会保持正在播放的状态,等待下一个数据输入。
如果是 true,则所提供的数据枯竭后,播放会停止, 所以请为数据输入留出足够的时间。
int GetNumEntries ( )
inline

连接播放用数据的条目数

返回
Entry数
说明:
获取连接播放用的输入条目数。
参见
CriAtomExPlayer::PrepareEntryPool, CriAtomExPlayer::EntryData
int GetNumConsumedEntries ( )
inline

进入播放过程的数据条目数

返回
Entry数
说明:
获取将无缝连续数据输入播放器后,实际进入播放过程的数据条目数。
播放进行当中每当消费一个条目,此数值就会递增。当调用 CriAtomExPlayer::Start 后此数值会被重置。
循环播放相同的条目时此数值则不会增加。
参见
CriAtomExPlayer::PrepareEntryPool, CriAtomExPlayer::EntryData
bool EntryFile ( CriFsBinder  binder,
string  path,
bool  repeat 
)
inline

输入连接播放用数据(指定文件名)

参数
binderBinder对象
path文件路径
repeat未输入以下数据时是否重复播放
返回
数据输入是否成功
说明:
输入连接播放用的音频文件。
要进行连接播放时,用 CriWare.CriAtomExPlayer::SetData 函数等设置开头数据后, 请用本函数输入添加的播放用数据。
参见
CriAtomExPlayer::PrepareEntryPool, CriAtomExPlayer::EntryContentId, CriAtomExPlayer::EntryData
bool EntryContentId ( CriFsBinder  binder,
int  contentId,
bool  repeat 
)
inline

输入连接播放用数据(指定CPK内容ID)

参数
binderBinder对象
contentId内容ID
repeat未输入以下数据时是否重复播放
返回
数据输入是否成功
说明:
输入连接播放用的内容。
在使用CRI File System库,指定ID,播放CPK文件内 的内容文件时使用。
要进行连接播放时,用 CriWare.CriAtomExPlayer::SetData 函数等设置开头数据后, 请用本函数输入添加的播放用数据。
参见
CriAtomExPlayer::PrepareEntryPool, CriAtomExPlayer::EntryFile, CriAtomExPlayer::EntryData
bool EntryData ( byte[]  buffer,
int  size,
bool  repeat 
)
inline

输入连接播放用数据(指定内存中的字节数组)

参数
buffer内存字节数组
size缓冲区大小
repeat未输入以下数据时是否重复播放
返回
数据输入是否成功
说明:
输入连接播放用数据。
要进行连接播放时,用 CriWare.CriAtomExPlayer::SetData 函数等设置开头数据后, 请用本函数输入数据。
参见
CriAtomExPlayer::PrepareEntryPool, CriAtomExPlayer::EntryFile, CriAtomExPlayer::EntryContentId
bool EntryData ( IntPtr  buffer,
int  size,
bool  repeat 
)
inline

输入连接播放用数据(指定内存中的缓冲区地址)

参数
buffer缓冲区地址
size缓冲区大小
repeat未输入以下数据时是否重复播放
返回
数据输入是否成功
说明:
输入连接播放用数据。
要进行连接播放时,用 CriWare.CriAtomExPlayer::SetData 函数等设置开头数据后, 请用本函数输入数据。
参见
CriAtomExPlayer::PrepareEntryPool
bool EntryCue ( CriAtomExAcb  acb,
string  name,
bool  repeat 
)
inline

输入连接播放用数据(指定Cue名)

参数
acbACB句柄
nameCue名
repeat未输入以下数据时是否重复播放
返回
数据输入是否成功
说明:
输入连接播放用数据。
要进行连接播放时,用 CriWare.CriAtomExPlayer::SetData 函数等设置开头数据后, 请用本函数输入数据。
参见
CriAtomExPlayer::PrepareEntryPool
CriAtomExPlayback Start ( )
inline

开始播放

返回
CriAtomExPlayback对象
说明:
开始音频数据的播放处理。
执行本函数前,需要事先使用 CriWare.CriAtomExPlayer::SetCue 函数等, 将要播放的音频数据设置在AtomExPlayer上。
例如,播放Cue时,需要如下所示,事先使用 CriWare.CriAtomExPlayer::SetCue 函数来设置音频数据, 然后再执行本函数。
:
// ACFファイルの登録
CriAtomEx.RegisterAcf(null, "sample.acf");
// ACBファイルのロード
CriAtomExAcb acb = CriAtomExAcb.LoadAcbFile(null, "sample.acb", "sample.awb");
// プレーヤの作成
// 再生するキューの名前を指定
player.SetCue(acb, "gun_shot");
// セットされた音声データを再生
player.Start();
:
本関数実行後、再生の進み具合(発音が開始されたか、再生が完了したか等) がどうなっているかは、ステータスを取得することで確認が可能です。
ステータスの取得には、 CriWare.CriAtomExPlayer::GetStatus 関数を使用します。
CriWare.CriAtomExPlayer::GetStatus 関数は以下の5通りのステータスを返します。
-# Stop
  1. Prep
  2. Playing
  3. PlayEnd
  4. Error
创建AtomExPlayer时,AtomExPlayer的状态为停止状态( Stop )。
设置要播放的音频数据后,通过执行本函数, AtomExPlayer会将状态更改为准备状态( Prep )。
(Prep 是正在等待数据提供和解码开始的状态。)
提供了播放开始所需的足够数据后,AtomExPlayer会将状态 更改为播放状态( Playing ),开始输出音频。
所设置的数据全部播放结束后,AtomExPlayer会将状态更改为播放结束状态 ( PlayEnd )。
此外,播放过程中如发生了错误,AtomExPlayer会将状态更改为错误状态 ( Error )。

通过检查AtomExPlayer的状态,并根据状态进行切换处理, 可创建出与音频播放状态相关联的程序。
例如,如果想等待音频播放结束后再进行处理时,请使用以下代码。
:
// プレーヤの作成
// 再生するキューの名前を指定
player.SetCue(acb, "gun_shot");
// セットされた音声データを再生
player.Start();
// 再生完了待ち
while (player.GetStatus() != CriAtomExPlayer.Status.PlayEnd) {
yield return null;
}
:
参见
CriAtomExPlayer::SetCue, CriAtomExPlayer::GetStatus
CriAtomExPlayback Prepare ( )
inline

准备播放

返回
CriAtomExPlayback对象
说明:
准备音频数据的播放。
执行本函数前,需要事先使用 CriWare.CriAtomExPlayer::SetData 函数等, 将要播放的音频数据设置在AtomExPlayer上。

执行本函数后,将暂停的状态下,开始音频播放。
在执行函数的时机上,会取得音频播放所需的资源, 并开始缓冲(用于执行串流播放的文件的读取), 但缓冲完成后也不会发声。
(即使进入了可发声状态,也会在暂停状态下保持待机。)

仅播放1声音时,本函数的动作与以下代码相同。
// プレーヤをポーズ状態に設定
player.Pause();
// 音声の再生を開始
CriAtomExPlayback playback = player.Start();

本関数で再生準備を行った音声を発音するには、 本関数が返すCriAtomExPlaybackオブジェクトに対し、 CriWare.CriAtomExPlayback::Resume を実行する必要があります。
备注:
串流播放时,及时用 CriWare.CriAtomExPlayer::Start 函数开始播放, 在实际音频开始播放为止,也会存在时间差。
(这是因为音频数据的缓冲需要时间。)

通过执行以下操作,也可以对串流播放的音频的发声的时机 进行控制。
  1. CriWare.CriAtomExPlayer::Prepare 函数开始准备。
  2. CriWare.CriAtomExPlayback::GetStatus 函数确认在步骤1.获得的CriAtomExPlayback对象的状态。
  3. 状态更改为 Playing 后,用 CriWare.CriAtomExPlayback::Resume 函数解除暂停。
  4. 暂停解除后,接下来在Server处理动作的时机开始发声。
具体的代码如下。
:
// プレーヤの作成
// 再生するキューの名前を指定
player.SetCue(acb, "gun_shot");
// セットされた音声データの再生準備を開始
CriAtomExPlayback playback = player.Prepare();
// 再生準備完了待ち
while (playback.GetStatus() != CriAtomExPlayback.Status.Playing) {
yield return null;
}
// ポーズを解除
playback.Resume(CriAtomEx.ResumeMode.PreparedPlayback);
:
注意:
如果在暂停解除状态下指定了 PausedPlayback, 则本函数用于播放准备的暂停和 CriWare.CriAtomExPlayer::Pause 函数的暂停处理都将被解除。
如果希望将 CriWare.CriAtomExPlayer::Pause 函数暂停的音频在停止状态下, 播放用本函数进行播放准备的音频,请在暂停解除时 指定 PreparedPlayback。
参见
CriAtomExPlayback::GetStatus, CriAtomExPlayback::Resume
void Stop ( bool  ignoresReleaseTime)
inline

播放停止

参数
ignoresReleaseTime是否忽略Release时间 (False = 执行Release处理,True = 忽略Release时间并立即停止)
说明:
发行播放的停止请求。
如果针对正在播放音频的AtomExPlayer执行本函数, 则AtomExPlayer的播放会停止(停止文件读取和发声), 状态转换为停止状态( Stop )。

如果将参数设置为True, 则即使正在播放的音频中设置了EG的Release时间, 也将会忽略Release时间来立即停止音频。
备注:
如果针对已停止的AtomExPlayer(状态为 PlayEnd 和 Error 的AtomExPlayer) 来执行本函数,AtomExPlayer的状态会更改为 Stop。
注意:
针对正在播放音频的 AtomExPlayer执行了本函数时, 状态不一定会立即更改为 Stop。
(在更改为停止状态前,需要一定时间。)
参见
CriAtomExPlayer::Start, CriAtomExPlayer::GetStatus
void Pause ( )
inline

暂停

说明:
暂停播放。
备注:
预设状态(Player创建之后的状态)下,处于暂停解除状态。
注意:
如果执行本函数,将会针对用Player播放的"所有"音频执行暂停处理。
如果想针对正在播放的各音频,分别进行暂停处理时, 请使用 CriWare.CriAtomExPlayback::Pause 函数。
参见
CriAtomExPlayer::Resume, CriAtomExPlayer::IsPaused, CriAtomExPlayback::Pause
void Resume ( CriAtomEx.ResumeMode  mode)
inline

解除暂停

参数
mode解除暂停对象
说明:
解除暂停状态。

如果为参数(mode)指定 PausedPlayback 来执行本函数, 用户将会通过 CriWare.CriAtomExPlayer::Pause 函数(或 CriWare.CriAtomExPlayback::Pause 函数)恢复播放处于暂停状态的音频。
如果为参数(mode)指定 PreparedPlayback 来执行本函数, 用户会通过 CriWare.CriAtomExPlayer::Prepare 函数恢复播放指示了播放准备的音频。
备注:
如果被 CriWare.CriAtomExPlayer::Pause 函数暂停的Player使用了 CriWare.CriAtomExPlayer::Prepare 函数进行播放准备, 在 PausedPlayback 和 PreparedPlayback 触发的取消暂停处理完成后,播放才会开始。

如果想要Player无论是否由 CriWare.CriAtomExPlayer::Pause 函数或 CriWare.CriAtomExPlayer::Prepare 函数处理,都始终能开始播放, 请在调用此函数时将“mode”参数指定为“AllPlayback”。
注意:
如果执行本函数,将会针对用Player播放的 "所有"音频执行暂停处理。
如果想针对正在播放的各音频,分别进行暂停解除处理时, 请使用 CriWare.CriAtomExPlayback::Resume 函数。
参见
CriAtomExPlayer::Pause, CriAtomExPlayback::Resume
bool IsPaused ( )
inline

获取暂停状态

返回
是否处于暂停中(False = 未暂停,True = 暂停中)
说明:
返回Player是否已暂停。
注意:
本函数仅会在“所有音频均为暂停时”返回 true。
如果在执行 CriWare.CriAtomExPlayer::Pause 函数后,通过指定播放ID,解除 (执行 CriWare.CriAtomExPlayback::Pause 函数)了各音频的暂停, 则本函数会返回 false。

本函数不会区分用 CriWare.CriAtomExPlayer::Pause 函数暂停的音频和 用 CriWare.CriAtomExPlayer::Prepare 函数暂停的音频。
(不会考虑暂停方法如何,只是用来对所有的音频检查是否处于暂停状态。)
参见
CriAtomExPlayer::Pause, CriAtomExPlayback::Pause
void SetVolume ( float  volume)
inline

设置音量

参数
volume音量值
说明:
设置输出音频的音量。
用本函数设置音量后,如果用 CriWare.CriAtomExPlayer::Start 函数开始播放, 则将以所设置的音量播放音频。
此外,设置音量后,通过调用 CriWare.CriAtomExPlayer::Update 函数和 CriWare.CriAtomExPlayer::UpdateAll 函数,可以更新已正在播放的音频的音量。

音量值是针对音频数据的振幅的倍率(单位不是分贝)。
例如,指定为1.0f时,将按照原有的音量输出原音。
指定为0.5f时,将会以等同于原音波形一半振幅的音量(-6dB) 来输出音频。
指定为0.0f时,音频将被静音(更改为无音状态)。
音量的预设值是1.0f。
备注:
音量值可以设置0.0f以上的值。
如果设置了超过1.0f的值,则在有些平台上, 波形数据可以用比原有的素材更大的音量播放。
如将音量值指定为不到0.0f的值,则值会被裁剪为0.0f。
(即时将音量值设置为负值, 波形数据的相位也不会反相。)

播放Cue时,如果数据侧设置了音量,则在调用本函数后, 将会适用数据侧设置的值和本函数的设置值的乘积后的值。
例如,数据侧的音量为0.8f,AtomExPlayer的音量为0.5f时, 实际适用的音量是0.4f。

如果想以分贝进行设置,请使用以下公式进行转换后再设置。
volume = Math.Pow(10.0f, db_vol / 20.0f);
※db_volがデシベル値、volumeがボリューム値です。
注意:
指定为超过1.0f的音量时,需要注意以下几点。
  • 在不同平台上的动作情况可能会有所不同。
  • 可能会出现破音情况。

即使在本函数中设置了超过1.0f的音量值, 但音频是否能以比原有波形数据更大的音量播放, 这一点还要取决于平台和音频压缩编解码器的类型。
因此,如需在多平台作品上调整音量, 建议用户不要使用超过1.0f的音量值。
(指定为超过1.0f的音量值时,即使播放的是相同的波形数据, 在不同的机型上也可能会以不同的音量进行输出。)

此外,即使所使用的是可以提升音量的机型, 但由于硬件的可输出音量有上限, 所以可能会发生由破音引起的噪声。
例:
// プレーヤの作成
// ボリュームの設定
player.SetVolume(0.5f);
// 再生の開始
// 備考)ボリュームはプレーヤに設定された値(=0.5f)で再生される。
CriAtomExPlayback playback = player.Start();
// ボリュームの変更
// 注意)この時点では再生中の音声のボリュームは変更されない。
player.SetVolume(0.3f);
// プレーヤに設定されたボリュームを再生中の音声にも反映
player.Update(playback);
参见
CriAtomExPlayer::Start, CriAtomExPlayer::Update, CriAtomExPlayer::UpdateAll
void SetPitch ( float  pitch)
inline

设置音高

参数
pitch音高(音分单位)
说明:
指定输出音频的音高。
用本函数设置音高后,如果用 CriWare.CriAtomExPlayer::Start 函数开始播放, 则将以所设置的音高播放音频。
此外,通过在音高后调用 CriWare.CriAtomExPlayer::Update 函数和 CriWare.CriAtomExPlayer::UpdateAll 函数,可以更新已播放的音频的音高。

音高是以音分为单位进行指定。
1音分是1音阶的1/1200。半音是100音分。
例如,指定为100.0f时,音高会提高半音。指定为-100.0f时,音高会 下降半音。
音高的预设值是0.0f。
备注:
播放Cue时,如果数据侧设置了音高,则在调用本函数后, 将会适用数据侧设置的值和本函数的设置值的加算后的值。
例如,数据侧的音高为-100.0f,AtomExPlayer的音高为200.0f时, 实际适用的音高是100.0f。
如果想以采样率的频率比率来设置,请使用以下公式进行转换后再设置。
pitch = 1200.0 * Math.Log(freq_ratio, 2.0);
※freq_ratioが周波数比率、pitchがピッチの値です。
注意:
用于HCA-MX的编码的音频数据无法更改音高。
(即使执行本函数也无法更改音高。)
如果有希望更改音高的音频,请使用ADX和HCA等其他编解码器进行编码。

可以设置的最大音高取决于音频数据的采样率和Voice池的最大采样率。
例如,如果音频数据的采样率是24kHz,Voice池的最大采样率是48kHz, 则可以设置的最大音高是1200(频率比率2倍)。

由于是通过播放采样率的增减来安装音高 因此如果更改了音高,音程也会一起更改播放速度。
例:
// プレーヤの作成
// ピッチの設定
player.SetPitch(100.0f);
// 再生の開始
// 備考)ピッチはプレーヤに設定された値(=100セント)で再生される。
CriAtomExPlayback playback = player.Start();
// ピッチの変更
// 注意)この時点では再生中の音声のピッチは変更されない。
player.SetPitch(-200.0f);
// プレーヤに設定されたピッチを再生中の音声にも反映
player.Update(playback);
参见
CriAtomExPlayer::Start, CriAtomExPlayer::Update, CriAtomExPlayer::UpdateAll
void SetPlaybackRatio ( float  ratio)
inline

序列播放速率的设置

参数
ratio序列播放比率
说明:
设置Player播放序列的播放速率。
播放速率的可设置范围是 0.0f ~ 2.0f 。
当设置的值超出范围时,将自动被设置为该范围的最大值或最小值。
在本函数设置播放速率后,使用 CriWare.CriAtomExPlayer::Start 可以按照设置的播放速率播放。 在播放中想要更改播放速率时,请调用 CriWare.CriAtomExPlayer::Update 或者 CriWare.CriAtomExPlayer::UpdateAll 函数
注意:
通过此函数设置的值仅适用于播放序列类型的Cue。
它不能用于改变序列中波形数据的播放速率。
要改变波形播放速率的时候,请使用time stretch功能。
参见
CriAtomPlayer::Update, CriAtomPlayer::UpdateAll
void SetPan3dAngle ( float  angle)
inline

设置Panning 3D角度

参数
anglePanning 3D角度(-180.0f~180.0f:度单位)
说明:
指定Panning 3D角度。
用本函数设置Panning 3D角度后,如果通过 CriWare.CriAtomExPlayer::Start 函数开始播放, 则将会以设置的Panning 3D角度进行播放。
此外,设置后,通过调用 CriWare.CriAtomExPlayer::Update 函数、 CriWare.CriAtomExPlayer::UpdateAll 函数, 可以更新已播放的音频的Panning 3D角度。

角度是以度为单位进行指定。
可以设置的最大角度是前方0度,右方向(顺时针)180.0f,左方向(逆时针)-180.0f。
例如,设置为45.0f时,将会定位至右前方45度。设置为-45.0f时,将会定位至左前方45度。
备注:
播放Cue时,如果数据侧设置了Panning 3D角度,则在调用本函数后, 将会适用数据侧设置的值和本函数的设置值的加算后的值。
例如,数据侧的Panning 3D角度为15.0f,AtomExPlayer的Panning 3D角度为30.0f时, 实际适用的Panning 3D角度是45.0f。
如果实际适用的Panning 3D角度是超过180.0f的值,则将会对值进行-360.0f,将其设置至范围内。
同样,如果实际适用的音量值是小于-180.0f的值,则将会对值进行+360.0f,将其设置至范围内。
(即使进行+360.0f, -360.0f,定位也不会改变,所以实际上可以超过-180.0f~180.0f的范围进行设置。)
例:
// プレーヤの作成
// パンニング3D角度の設定
player.SetPan3dAngle(45.0f);
// 再生の開始
// 備考)パンニング3D角度はプレーヤに設定された値(=45.0f)で再生される。
CriAtomExPlayback playback = player.Start();
// パンニング3D角度の変更
// 注意)この時点では再生中の音声のパンニング3D角度は変更されない。
player.SetPan3dAngle(-45.0f);
// プレーヤに設定されたパンニング3D角度を再生中の音声にも反映
player.Update(playback);
参见
CriAtomExPlayer::Start, CriAtomExPlayer::Update, CriAtomExPlayer::UpdateAll
void SetPan3dInteriorDistance ( float  distance)
inline

设置Panning 3D距离

参数
distancePanning 3D距离(-1.0f~1.0f)
说明:
指定通过Panning 3D来执行内部Panning时的距离。
用本函数设置Panning 3D距离后,如果通过 CriWare.CriAtomExPlayer::Start 函数开始播放, 则将会以设置的Panning 3D距离进行播放。
此外,设置后,通过调用 CriWare.CriAtomExPlayer::Update 函数、 CriWare.CriAtomExPlayer::UpdateAll 函数, 可以更新已播放的音频的Panning 3D距离。

距离是将收听者位置作为0.0f,将扬声器所在的圆周作为1.0f,在-1.0f~1.0f的范围内进行指定。
如果指定为负值,则Panning 3D角度会反转180度,定位至反方向。
备注:
播放Cue时,如果数据侧设置了Panning 3D距离,则在调用本函数后, 将会适用数据侧设置的值和本函数的设置值的乘积后的值。
例如,数据侧的Panning 3D距离为0.8f,AtomExPlayer的Panning 3D距离为0.5f时, 实际适用的Panning 3D距离是0.4f。
如果实际适用的Panning 3D距离是超过1.0f的值,则该值将会被裁剪至1.0f。
同样,如果实际适用的Panning 3D距离是小于-1.0f的值,则该值将会被裁剪至-1.0f。
例:
// プレーヤの作成
// パンニング3D距離の設定
player.SetPan3dInteriorDistance(0.5f);
// 再生の開始
// 備考)パンニング3D距離はプレーヤに設定された値(=0.5f)で再生される。
CriAtomExPlayback playback = player.Start();
// パンニング3D距離の変更
// 注意)この時点では再生中の音声のパンニング3D距離は変更されない。
// 備考)以下の処理はパン3D角度を180度反転するのと等価
player.SetPan3dInteriorDistance(-0.5f);
// プレーヤに設定されたパンニング3D距離を再生中の音声にも反映
player.Update(playback);
参见
CriAtomExPlayer::Start, CriAtomExPlayer::Update, CriAtomExPlayer::UpdateAll
void SetPan3dVolume ( float  volume)
inline

设置Panning 3D音量

参数
volumePanning 3D音量(0.0f~1.0f)
说明:
指定Panning 3D的音量。
用本函数设置Panning 3D音量后,如果通过 CriWare.CriAtomExPlayer::Start 函数开始播放, 则将会以设置的Panning 3D音量进行播放。
此外,设置后,通过调用 CriWare.CriAtomExPlayer::Update 函数、 CriWare.CriAtomExPlayer::UpdateAll 函数, 可以更新已播放的音频的Panning 3D音量。

Panning 3D音量用于单独控制Panning 3D部分以及, 向中置/LFE的输出Level。
例如,发送Level始终保持从LFE输出一定的音量, 定位则通过Panning 3D来进行控制的情况。
值的范围和处理与通常的音量相同。请参照 CriWare.CriAtomExPlayer::SetVolume 函数。
例:
// プレーヤの作成
// パンニング3Dボリュームの設定
player.SetPan3dVolume(0.8f);
// 再生の開始
// 備考)パンニング3Dボリュームはプレーヤに設定された値(=0.5f)で再生される。
CriAtomExPlayback playback = player.Start();
// パンニング3Dボリュームの変更
// 注意)この時点では再生中の音声のパンニング3Dボリュームは変更されない。
player.SetPan3dVolume(0.7f);
// プレーヤに設定されたパンニング3Dボリュームを再生中の音声にも反映
player.Update(playback);
参见
CriAtomExPlayer::Start, CriAtomExPlayer::Update, CriAtomExPlayer::UpdateAll, CriAtomExPlayer::SetVolume
void SetPanType ( CriAtomEx.PanType  panType)
inline

设置Pan类型

参数
panTypePan类型
说明:
指定Pan类型。
用本函数设置Pan类型后,如果通过 CriWare.CriAtomExPlayer::Start 函数开始播放, 则将会以设置的Pan类型进行播放。
此外,设置后,通过调用 CriWare.CriAtomExPlayer::Update 函数、 CriWare.CriAtomExPlayer::UpdateAll 函数, 可以更新已播放的音频的Pan类型。
备注:
播放Cue时,如果调用本函数,则将会覆盖数据侧设置的Pan类型设置 (数据侧的设置值被忽略)。
通常情况下数据侧设置了Pan类型,因此无需调用本函数。
如果要在不使用ACB文件的情况下播放音频,为了将3D定位处理设为有效, 请用本函数设置 Pos3d。
注意:
若指定CriAtomEx.PanType.Unknown执行则会报错。
参见
CriAtomExPlayer::Start, CriAtomExPlayer::Update, CriAtomExPlayer::UpdateAll, CriAtomEx.PanType
void SetSendLevel ( int  channel,
CriAtomEx.Speaker  id,
float  level 
)
inline

设置发送电平

参数
channel声道编号
id扬声器ID
level发送Level值(0.0f~1.0f)
说明:
指定发送Level。
发送Level用于指定音频数据的各声道的音频、从扬声器输出 的音量程度。
用本函数设置发送Level后,如果通过 CriWare.CriAtomExPlayer::Start 函数开始播放, 则将以所设置的发送Level播放。
此外,设置后,通过调用 CriWare.CriAtomExPlayer::Update 函数、 CriWare.CriAtomExPlayer::UpdateAll 函数, 可以更新已播放的音频的发送Level。

第1参数的声道编号是指定"音频数据的声道编号"。
第2参数的扬声器ID指定从哪个扬声器输出所指定的声道编号的数据, 第3参数指定发送时的Level(音量)。
例如,希望将音频数据的声道0号的数据从右侧扬声器 以全音量(1.0f)输出时,指定为如下。
player.SetSendLevel(0, CriAtomEx.Speaker.FrontRight, 1.0f);

センドレベル値の範囲や扱いは、ボリュームと同等です。 CriWare.CriAtomExPlayer::SetVolume 関数を参照してください。

备注:
发送Level设置有2种,分别是“自动设置”和“手动设置”。
创建AtomExPlayer后以及用 CriWare.CriAtomExPlayer::ResetParameters 函数 清除参数后,发送Level设置是“自动设置”。
相反,执行本函数后,发送Level设置是“手动设置”。
(用户需要控制通往各扬声器的发送Level来进行Panning。)

设置为“自动设置”时,AtomExPlayer的音频的路由如下。

【单声道音频播放时】
声道0的音频将会从左右两侧的扬声器以约0.7f(-3dB)的音量输出。

【立体声音频播放时】
声道0的音频从左侧扬声器, 声道1的音频从右侧扬声器输出。

【4ch音频播放时】
声道0的音频从左侧扬声器,声道1的音频从右侧扬声器, 声道2的音频从环绕声左侧扬声器, 声道3的音频从环绕声右侧扬声器输出。

【5.1ch音频播放时】
声道0的音频从左侧扬声器,声道1的音频从右侧扬声器, 声道2的音频从中置扬声器,声道3的音频从LFE, 声道4的音频从环绕声左侧扬声器, 声道5的音频从环绕声右侧扬声器输出。

【7.1ch音频播放时】
声道0的音频从左侧扬声器,声道1的音频从右侧扬声器, 声道2的音频从中置扬声器,声道3的音频从LFE, 声道4的音频从环绕声左侧扬声器, 声道5的音频从环绕声右侧扬声器输出。
声道6的音频从环绕声左后侧扬声器, 声道7的音频从环绕声右后侧扬声器输出。

另一方面,使用本函数“手动设置”时,不论音频数据的声道数是多少 都会以指定的发送Level设置输出音频。
(需要根据音频数据的声道数,切换适当的发送Level设置。)

如果希望清除指定的发送Level,将路由恢复为“自动设置”状态, 请执行 CriWare.CriAtomExPlayer::ResetParameters 函数。

本参数无法在数据侧进行设置,因此将始终适用本函数的设置值。
注意:
未设置发送Level的声道不会输出音频。
例如,要播放的音频数据是立体声的情况下,如果只对其中一侧的声道 设置发送Level,则未设置发送Level的声道的音频 将会被静音。
要控制发送Level时,请务必针对所有要输出的声道 设置电平。
例:
CriSint32 ch = 0; // channel number 0
CriAtomEx.Speaker spk = CriAtomEx.Speaker.FrontCenter;
CriFloat32 level = 1.0f;
// Set send level(ch0 to center)
player.SetSendLevel(ch, spk, level);
// Start playback
CriAtomExPlayback playback = player.Start();
:
// Change send level
level = 0.7f;
player.SetSendLevel(ch, spk, level);
player.Update(playback);
参见
CriAtomExPlayer::Start, CriAtomExPlayer::Update, CriAtomExPlayer::UpdateAll, CriAtomExPlayer::SetVolume
void SetBiquadFilterParameters ( CriAtomEx.BiquadFilterType  type,
float  frequency,
float  gain,
float  q 
)
inline

设置双二阶滤波器的参数

参数
type滤波器类型
frequency标准化频率(0.0f~1.0f)
gain增益(分贝值)
qQ值
说明:
指定双二阶滤波器的各种参数。
用本函数设置参数后,如果用 CriWare.CriAtomExPlayer::Start 函数开始播放, 则双二阶滤波器将会以设置的参数进行动作。
此外,设置后,通过调用 CriWare.CriAtomExPlayer::Update 函数、 CriWare.CriAtomExPlayer::UpdateAll 函数, 可以针对已播放的音频,更新双二阶滤波器的参数。

标准化频率是将对数轴上的24Hz~24000Hz标准化为0.0f~1.0f的值。
增益以分贝进行指定。
增益仅在以下滤波器类型上有效。
  • LowShelf :低架滤波器
  • HighShelf :高架滤波器
  • Peaking :峰值滤波器 .
备注:
- type
将会覆盖数据中已设置的值。
  • frequency
    将会加算至数据中已设置的值上。
  • gain
    将会乘积至数据中已设置的值上。
  • q
    将会加算至数据中已设置的值上。

如实际适用的标准化截止频率为超过1.0f的值,则该值将被裁剪为1.0f。
同样,如实际适用的标准化截止频率为小于0.0f的值,则该值也将被裁剪为0.0f。
注意:
用于HCA-MX的编码的音频数据不会适用双二阶滤波器。
如果希望在音频上使用双二阶滤波器,请使用ADX和HCA等其他编解码器进行编码。
例:
// プレーヤの作成
// フィルタのパラメータを設定
CriAtomEx.BiquadFilterType type = CriAtomEx.BiquadFilterType.LowPass;
float frequency = 0.5f;
float gain = 1.0f;
float q = 3.0f;
player.SetBiquadFilterParameters(type, frequency, gain, q);
// 再生の開始
CriAtomExPlayback playback = player.Start();
// パラメータの変更
// 注意)この時点では再生中の音声のパラメータは変更されない。
frequency = 0.7f;
player.SetBiquadFilterParameters(type, frequency, gain, q);
// プレーヤに設定されたパラメータを再生中の音声にも反映
player.Update(playback);
参见
CriAtomExPlayer::Start, CriAtomExPlayer::Update, CriAtomExPlayer::UpdateAll
void SetBandpassFilterParameters ( float  cofLow,
float  cofHigh 
)
inline

设置带通滤波器的参数

参数
cofLow标准化低频截止频率(0.0f~1.0f)
cofHigh标准化高频截止频率(0.0f~1.0f)
说明:
指定带通滤波器的截止频率。
用本函数设置截止频率后,如果用 CriWare.CriAtomExPlayer::Start 函数开始播放, 则带通滤波器将会以设置的截止频率进行动作。
此外,设置后,通过调用 CriWare.CriAtomExPlayer::Update 函数、 CriWare.CriAtomExPlayer::UpdateAll 函数, 可以针对已播放的音频,更新带通滤波器的截止频率。

标准化截止频率是将对数轴上的24Hz~24000Hz标准化为0.0f~1.0f的值。
例如,如果将标准化低频截止频率指定为0.0f,将标准化高频截止频率指定为1.0f, 则将会通过带通滤波器的整个通带,标准化低频截止频率越高, 或者标准化高频截止频率越低,通带就会越狭窄。
备注:
播放Cue时,如果数据侧设置了带通滤波器的参数,则在调用本函数后, 将会按照以下来设置。
  • cofLow
    针对数据中已设置的值、作为“cofLowRev = 1.0f - cofLow”后进行乘积, 最终再恢复为“cofLow = 1.0f - cofLowRev”后进行适用。
    也就是说,将0.0f作为“将滤波器打开至最低频侧”,乘积打开程度来进行适用。
  • cofHigh
    针对数据中已设置的值,乘积后进行适用。
    也就是说,将1.0f作为“将滤波器打开至高频侧”,乘积打开程度来进行适用。

如实际适用的标准化截止频率为超过1.0f的值,则该值将被裁剪为1.0f。
同样,如实际适用的标准化截止频率为小于0.0f的值,则该值也将被裁剪为0.0f。
例:
// プレーヤの作成
// フィルタのパラメータを設定
float cof_low = 0.0f;
float cof_high = 0.3f;
player.SetBandpassFilterParameter(cof_low, cof_high);
// 再生の開始
CriAtomExPlayback playback = player.Start();
// パラメータの変更
// 注意)この時点では再生中の音声のパラメータは変更されない。
cof_low = 0.7f;
cof_high = 1.0f;
player.SetBandpassFilterParameter(cof_low, cof_high);
// プレーヤに設定されたパラメータを再生中の音声にも反映
player.Update(playback);
参见
CriAtomExPlayer::Start, CriAtomExPlayer::Update, CriAtomExPlayer::UpdateAll
void SetBusSendLevel ( string  busName,
float  level 
)
inline

设置总线发送电平(指定总线名称)

参数
busName总线名
level发送Level值(0.0f~1.0f)
说明:
指定总线发送Level。
总线发送Level是一种用于指定将音频发送至那根总线,以及发送量的机制。
用本函数设置总线发送Level后,如果通过 CriWare.CriAtomExPlayer::Start 函数开始播放, 则将以所设置的Sustain Level播放。
此外,设置后,通过调用 CriWare.CriAtomExPlayer::Update 函数、 CriWare.CriAtomExPlayer::UpdateAll 函数, 可以更新已播放的音频的总线发送Level。

第1参数的总线ID是指定"音频数据的声道编号"。
用第2参数指定发送时的Level(音量)。

发送Level值的范围和操作与音量相同。请参照 CriWare.CriAtomExPlayer::SetVolume 函数。
备注:
通过多次调用本函数,也可以汇入多个总线。
例:
// プレーヤの作成
// バスセンドレベルを設定
int bus_id = 1; // ex. reverb, etc...
float level = 0.3f;
player.SetBusSendLevel(bus_id, level);
// 再生の開始
CriAtomExPlayback playback = player.Start();
// パラメータの変更
// 注意)この時点では再生中の音声のパラメータは変更されない。
level = 0.5f;
player.SetBusSendLevel(bus_id, level);
// プレーヤに設定されたパラメータを再生中の音声にも反映
player.Update(playback);
参见
CriAtomExPlayer::Start, CriAtomExPlayer::Update, CriAtomExPlayer::UpdateAll, CriAtomExPlayer::SetVolume
bool GetBusSendLevel ( string  busName,
out float  level 
)
inline

获取总线发送量(电平)(指定总线名称)

参数
busName总线名
level发送Level值(0.0f~1.0f)
返回
是否获取到 (获取:TRUE / 未能获取:FALSE)
说明:
获取为Player设置的特定总线发送量(电平)。
在以下情况下,总线发送量(电平)的获取将会失败。
  • 目标DSP总线配置中不存在指定名称的总线。
  • 尚未设置Player指定的总线的发送量(电平)。
参见
CriAtomExPlayer::SetBusSendLevel
void SetBusSendLevel ( int  busId,
float  level 
)
inline
弃用:
将被删除的非推荐API。 请考虑使用 CriAtomExPlayer.SetBusSendLevel(string busName, float level)
void SetBusSendLevelOffset ( string  busName,
float  levelOffset 
)
inline

设置偏移的总线发送Level(指定总线名)

参数
busName总线名
levelOffset发送Level值(0.0f~1.0f)
说明:
以偏移指定总线发送Level。
播放Cue时,如果数据侧设置了总线发送Level,则在调用本函数后, 将会适用数据侧设置的值和本函数的设置值的加算后的值。
其他规格与 CriWare.CriAtomExPlayer::SetBusSendLevel 函数相同。
备注:
通过使用 CriWare.CriAtomExPlayer::SetBusSendLevel 函数设置 0.0f 并使用本函数设置偏移值,
可以忽略数据侧设置的总线发送电平并设置该值(覆盖原有设置)。
参见
CriAtomExPlayer::SetBusSendLevel
bool GetBusSendLevelOffset ( string  busName,
out float  level 
)
inline

获取总线发送量(电平)的偏移值(指定总线名称)

参数
busName总线名
level发送量(电平)偏移值(0.0f至1.0f)
返回
是否获取到 (获取:TRUE / 未能获取:FALSE)
说明:
获取在Player上设置的特定总线发送量(电平)的偏移量。
在以下情况下,总线发送量(电平)的获取将会失败。
  • 目标DSP总线配置中不存在指定名称的总线。
  • 尚未设置Player指定的总线的发送量(电平)。
参见
CriAtomExPlayer::SetBusSendLevelOffset
void SetBusSendLevelOffset ( int  busId,
float  levelOffset 
)
inline
弃用:
将被删除的非推荐API。 请考虑使用 CriAtomExPlayer.SetBusSendLevelOffset(int busId, float levelOffset)
void AttachAisac ( string  globalAisacName)
inline

为Player添加AISAC

参数
globalAisacName添加全局AISAC名
说明:
为Player添加AISAC。 通过添加AISAC,即使Cue或音轨中未设置AISAC,也可以获得AISAC效果。
用本函数添加AISAC后,如果用 CriWare.CriAtomExPlayer::Start 函数开始播放, 则将会考量添加的AISAC来适用各种参数。
此外,添加后,通过调用 CriWare.CriAtomExPlayer::Update 函数、 CriWare.CriAtomExPlayer::UpdateAll 函数, 即使是已播放的音频,也不再会适用添加的AISAC的各种参数设置。
备注:
仅总体设置(ACF文件)中包含的全局AISAC可以添加。
为了获得AISAC的效果,与Cue和音轨设置的AISAC相同, 需要设置相应的AISAC控制器值。
本参数将会通过 CriWare.CriAtomExPlayer::ResetParameters 函数被清除。
注意:
即使Cue和音轨中设置了“更改AISAC控制器值的AISAC”, 该适用结果的AISAC控制器值也不会影响到Player上添加的AISAC。 目前,不支持“自动调制”和“随机”等控制类型的AISAC的添加。
目前,可以添加至Player的AISAC的最大数固定为8个。
void DetachAisac ( string  globalAisacName)
inline

从Player切断AISAC

参数
globalAisacName删除全局AISAC名
说明:
从Player切断AISAC。
用本函数切断AISAC后,如果用 CriWare.CriAtomExPlayer::Start 函数开始播放, 则将不会受到切断后的AISAC的影响。
此外,切断后,通过调用 CriWare.CriAtomExPlayer::Update 函数、 CriWare.CriAtomExPlayer::UpdateAll 函数, 即使是已播放的音频,也不再会受到切断后的AISAC的影响。
void SetAisacControl ( string  controlName,
float  value 
)
inline

设置AISAC控制器值(指定控制器名)

参数
controlName控制名
value控制值(0.0f~1.0f)
说明:
通过指定控制名来指定AISAC的控制值。
AISAC的控制值是对于一个Player,最多可以设置8个。
用本函数设置AISAC控制器值后,如果通过 CriWare.CriAtomExPlayer::Start 函数开始播放, 则将以所设置的AISAC控制器值进行播放。
此外,设置后,通过调用 CriWare.CriAtomExPlayer::Update 函数、 CriWare.CriAtomExPlayer::UpdateAll 函数, 可以更新已播放的音频的AISAC控制器值。

AISAC控制器值的处理与 CriWare.CriAtomExPlayer::SetAisacControl 函数相同。
例:
// プレーヤの作成
// AISACコントロール値の設定
float control_value = 0.5f;
player.SetAisacControl("Any", control_value);
// 再生の開始
CriAtomExPlayback playback = player.Start();
// パラメータの変更
// 注意)この時点では再生中の音声のパラメータは変更されない。
control_value = 0.3f;
player.SetAisacControl("Any", control_value);
// プレーヤに設定されたパラメータを再生中の音声にも反映
player.Update(playback);
参见
CriAtomExPlayer::Start, CriAtomExPlayer::Update, CriAtomExPlayer::UpdateAll, CriAtomExPlayer::SetAisacControl(uint, float)
void SetAisac ( string  controlName,
float  value 
)
inline
弃用:
将被删除的非推荐API。 请考虑使用 CriWare.CriAtomExPlayer.SetAisacControl
void SetAisacControl ( uint  controlId,
float  value 
)
inline

设置AISAC控制器值(指定控制器ID)

参数
controlId控制ID
value控制值(0.0f~1.0f)
说明:
指定控制ID来指定AISAC的控制值。
AISAC的控制值是对于一个Player,最多可以设置8个。
用本函数设置AISAC控制器值后,如果通过 CriWare.CriAtomExPlayer::Start 函数开始播放, 则将以所设置的AISAC控制器值进行播放。
此外,设置后,通过调用 CriWare.CriAtomExPlayer::Update 函数、 CriWare.CriAtomExPlayer::UpdateAll 函数, 可以更新已播放的音频的AISAC控制器值。

AISAC控制器值是在0.0f~1.0f的范围内指定实数值。
备注:
根据AISAC的控制类型,会发生以下的变化。
  • 关闭
    • 未设置本函数等的AISAC控制器值时,其AISAC不会动作。
  • 自动调制
    • 不受本函数设置值的影响,AISAC控制器值会追着时间经过自动变化。
  • 随机
    • 将通过本函数等设置的AISAC控制器值作为中央值, 按照数据中设置的随机范围进行随机化,决定最终的AISAC控制器值。
    • 随机化处理仅在播放开始时的参数适用时执行, 无法对正在播放的音频更改AISAC控制器值。
    • 如播放开始时未设置AISAC控制器值, 将会以0.0f为中央值进行随机化处理。
    .
例:
// プレーヤの作成
// AISACコントロール値の設定
CriAtomExAisacControlId control_id = 0;
float control_value = 0.5f;
player.SetAisacControl(control_id, control_value);
// 再生の開始
CriAtomExPlayback playback = player.Start();
// パラメータの変更
// 注意)この時点では再生中の音声のパラメータは変更されない。
control_value = 0.3f;
player.SetAisacControl(control_id, control_value);
// プレーヤに設定されたパラメータを再生中の音声にも反映
player.Update(playback);
参见
CriAtomExPlayer::Start, CriAtomExPlayer::Update, CriAtomExPlayer::UpdateAll, CriAtomExPlayer::SetAisacControl(string, float)
void SetAisac ( uint  controlId,
float  value 
)
inline
弃用:
将被删除的非推荐API。 请考虑使用 CriWare.CriAtomExPlayer.SetAisacControl
bool GetAttachedAisacInfo ( int  aisacAttachedIndex,
out CriAtomEx.AisacInfo  aisacInfo 
)
inline

获取添加在Player上的AISAC的信息。

参数
aisacAttachedIndex添加的AISAC的索引
aisacInfoAISAC信息获取用结构体
说明:
获取添加在Player上的AISAC的信息。
注意:
指定了无效的索引时,会返回False。
void Set3dSource ( CriAtomEx3dSource  source)
inline

设置3D声源对象

参数
sourceCriAtomEx3dSource对象
说明:
设置用于实现3D定位的3D声源对象。
通过设置3D收听者对象和3D声源对象, 将会从3D收听者对象和3D声源对象的位置关系等自动适用定位、音量和音高等。
通过本函数设置3D声源对象后,如通过 CriWare.CriAtomExPlayer::Start 函数开始播放, 将会参照所设置的3D声源对象进行播放。
此外,设置后,通过调用 CriWare.CriAtomExPlayer::Update 函数、 CriWare.CriAtomExPlayer::UpdateAll 函数, 可以更改已播放的音频所参照的3D声源对象。
将source设置为null时,将会清除已设置的3D声源对象。
注意:
3D声源对象参数的更改和更新不使用AtomExPlayer的函数, 而是使用3D声源对象的函数。
预设状态下,3D定位计算是在左手坐标系中执行。

例:
// リスナの作成
CriAtomEx3dListener listener = new CriAtomEx3dListener();
// ソースの作成
CriAtomEx3dSource source = new CriAtomEx3dSource();
// プレーヤの作成
// ソース、リスナをプレーヤに設定
player.Set3dListener(listener);
player.Set3dSource(source);
// 音源の位置を初期化
source.SetPosition(0.0f, 0.0f, 0.0f);
source.Update();
// 再生の開始
CriAtomExPlayback playback = player.Start();
// 音源の位置を変更
source.SetPosition(10.0f, 0.0f, 0.0f);
source.Update();
参见
CriAtomEx3dListener, CriAtomExPlayer::Set3dSource, CriAtomExPlayer::Update
void Set3dListener ( CriAtomEx3dListener  listener)
inline

设置3D收听者对象

参数
listener3D收听者对象
说明:
设置用于实现3D定位的3D收听者对象。
通过设置3D收听者对象和3D声源对象, 将会从3D收听者和3D声源的位置关系等自动适用定位、音量和音高等。
通过本函数设置3D收听者对象后,如通过 CriWare.CriAtomExPlayer::Start 函数开始播放, 将会参照所设置的3D收听者对象进行播放。
此外,设置后,通过调用 CriWare.CriAtomExPlayer::Update 函数、 CriWare.CriAtomExPlayer::UpdateAll 函数, 可以更改已播放的音频所参照的3D收听者对象。
将listener设置为null时,将会清除已设置的3D收听者对象。
注意:
3D收听者对象参数的更改和更新不使用AtomExPlayer的函数, 而是使用3D收听者对象的函数。
预设状态下,3D定位计算是在左手坐标系中执行。

例:
// リスナの作成
CriAtomEx3dListener listener = new CriAtomEx3dListener();
// ソースの作成
CriAtomEx3dSource source = new CriAtomEx3dSource();
// プレーヤの作成
// ソース、リスナをプレーヤに設定
player.Set3dListener(listener);
player.Set3dSource(source);
// 音源の位置を初期化
source.SetPosition(0.0f, 0.0f, 0.0f);
source.Update();
// 再生の開始
CriAtomExPlayback playback = player.Start();
// リスナの位置を変更
listener.SetPosition(-10.0f, 0.0f, 0.0f);
listener.Update();
参见
CriAtomEx3dListener, CriAtomExPlayer::Set3dSource, CriAtomExPlayer::Update
void SetStartTime ( long  startTimeMs)
inline

指定播放开始位置

参数
startTimeMs播放开始位置(指定毫秒)
说明:
关于用AtomExPlayer播放的音频,指定播放开始位置。
如果想从中途开始播放音频数据,需要在播放开始前 用本函数指定开始位置。

播放开始位置是以毫秒为单位进行指定。
例如,如果将 start_time_ms 设置为 10000 后执行本函数, 则下一个播放的音频数据会从第 10 秒的位置开始播放。
备注:
从音频数据的途中开始播放时,比从音频数据开头开始播放,发声开始的 时机会延迟。
这是因为在解析了音频数据的头文件后,跳转至指定位置, 才重新读取数据并开始播放。
注意:

虽然可以为 startTimeMs 设置64bit值,但目前无法指定32bit以上的 播放时间。

如果指定播放开始位置后播放序列,则将不会播放位于指定位置之前的 波形数据。
(序列内的各波形不会从途中开始播放。)

void SetFirstBlockIndex ( int  index)
inline

设置播放开始块(指定块索引)

参数
index块索引
说明:
将播放开始块索引关联至AtomExPlayer。
用本函数指定播放开始块索引后,会从用 CriWare.CriAtomExPlayer::Start 函数 指定的播放开始块起开始播放块序列Cue。
备注:
AtomExPlayer的预设值块索引是 0 。
如果通过 CriWare.CriAtomExPlayer::Start 函数开始播放时,Player上设置的Cue不是 块序列,则将会使用在本函数中设置的值。
如果没有符合所指定的索引的块,则将会从开头的块进行播放。
此时,将会发生内容为所指定索引的块不存在的警告。
备注:
播放开始后的块转换时,使用 CriWare.CriAtomExPlayback::SetNextBlockIndex 函数来执行, 而获取正在播放的块索引时,使用 CriWare.CriAtomExPlayback::GetCurrentBlockIndex 函数。
例:
// プレーヤの作成
// 音声データをセット
player.SetCue(acb, 300);
// 開始ブロックをセット
player.SetFirstBlockIndex(1);
// セットされた音声データを再生
player.Start();
参见
CriAtomExPlayer::Start, CriAtomExPlayback::SetNextBlockIndex, CriAtomExPlayback::GetCurrentBlockIndex
void SetSelectorLabel ( string  selector,
string  label 
)
inline

设置选择器信息

参数
selector选择器名
label标签名
说明:
指定选择器名和标签名,设置至Player。针对一个Player,最多可以设置8个。
如果播放了音轨上指定了选择器标签的Cue,则将仅会播放与用本函数指定的选择器标签 一致的音轨。
要删除Player上设置的单个的标签信息时,请执行 CriWare.CriAtomExPlayer::UnsetSelectorLabel
要删除所有的标签信息时,请执行 CriWare.CriAtomExPlayer::ClearSelectorLabels
要删除包括标签信息在内的所有Player设置值时,请执行 CriWare.CriAtomExPlayer::ResetParameters
参见
CriAtomExPlayer::UnsetSelectorLabel, CriAtomExPlayer::ClearSelectorLabels, CriAtomExPlayer::ResetParameters
void UnsetSelectorLabel ( string  selector)
inline

删除所设置的选择器信息

参数
selector选择器名
说明:
删除Player中设置的指定选择器名称以及与之关联的标签名称信息。
另外,删除后,通过调用 CriWare.CriAtomExPlayer::UpdateCriWare.CriAtomExPlayer::UpdateAll , 您可以删除已经播放的音频的选择器信息,但是正在播放的音频不会停止。
参见
CriAtomExPlayer::SetSelectorLabel, CriAtomExPlayer::ClearSelectorLabels
void ClearSelectorLabels ( )
inline

删除所有设置的选择器信息

说明:
删除所有Player上设置的选择器名、标签名信息。
此外,削除后,通过调用 CriWare.CriAtomExPlayer::UpdateCriWare.CriAtomExPlayer::UpdateAll , 可以针对已正在播放的音频,删除选择器信息,但正在播放的音频不会停止。
参见
CriAtomExPlayer::ResetParameters
void SetCategory ( int  categoryId)
inline

设置类别(指定ID)

参数
categoryId类别ID
说明:
通过类别ID指定来设置类别。
要删除已设置的类别信息时,使用 CriWare.CriAtomExPlayer::UnsetCategory 函数。
备注:
播放Cue时,如果调用本函数,则将会覆盖数据侧设置的类别设置 (数据侧的设置值被忽略)。
用本函数设置的类别信息在进行了ACF的注册、解除注册后,将会被清除。
在未注册ACF的状态下,可以使用预设类别。
注意:
请在播放开始前进行类别设置。如果针对正在播放的音频更新类别设置, 则可能会导致类别的播放数计数出现异常。
参见
CriAtomExPlayer::UnsetCategory, CriAtomExPlayer::SetCategory(string)
void SetCategory ( string  categoryName)
inline

设置类别(指定类别名)

参数
categoryName类别名
说明:
通过指定类别名来设置类别。
要删除已设置的类别信息时,使用 CriWare.CriAtomExPlayer::UnsetCategory 函数。
备注:
除了通过名称来指定类别之外,基本规格与 CriWare.CriAtomExPlayer::SetCategory(int) 函数相同。
参见
CriAtomExPlayer::UnsetCategory, CriAtomExPlayer::SetCategory(int)
void UnsetCategory ( )
inline

删除类别

说明:
删除Player句柄中设置的类别信息。
参见
CriAtomExPlayer::SetCategory
void SetCuePriority ( int  priority)
inline

设置Cue优先级

参数
priorityCue优先级
说明:
为AtomExPlayer设置Cue优先级。
用本函数设置了Cue优先级后,如果用 CriWare.CriAtomExPlayer::Start 函数播放音频, 则播放的音频会以用本函数设置的Cue优先级来发声。
函数执行前的预设值是0。
备注:
AtomExPlayer播放Cue时,如果要播放的Cue所属目标类别的发声数量已经达到了限制数量 则将会通过优先级来进行发声控制。
具体来说,如果AtomExPlayer的播放请求如果比正在播放的Cue的优先级高, 则AtomExPlayer将会停止正在播放的Cue,开始所请求的播放。
(正在播放的音频将会停止,改为播放其他的音频。)
相反,如果AtomExPlayer的播放请求比正在播放的Cue的优先级低, 则AtomExPlayer的播放请求将被拒绝。
(所请求的Cue将不会被播放。)
如果AtomExPlayer的播放请求与正在播放的Cue的优先级相等, AtomExPlayer将按照后发优先来执行发声控制。
参见
CriAtomExPlayer::Start, CriAtomExPlayer::ResetParameters
void SetVoicePriority ( int  priority)
inline

设置Voice优先级

参数
priorityVoice优先级(-255~255)
说明:
为AtomExPlayer设置Voice优先级。
用本函数设置了优先级后,如果用 CriWare.CriAtomExPlayer::Start 函数播放音频, 则播放的音频会以用本函数设置的优先级来发声。
此外,设置后,通过调用 CriWare.CriAtomExPlayer::Update 函数、 CriWare.CriAtomExPlayer::UpdateAll 函数, 可以更新已播放的音频的优先级。

在-255~255的范围内为Voice优先级指定整数值。
如设置为范围外的值,则将被裁剪为范围内。
函数执行前的预设值是0。
备注:
AtomExPlayer要播放波形数据时, 如果该波形数据所属的Voice限数组的发声数量达到了上限, 或者Voice池内的Voice全部正在使用时, 将通过Voice优先级来执行发声控制。
(根据Voice优先级来判断是否播放所指定的波形数据。)

具体来说,如果要播放的波形数据的优先级比 目前的Voice正在播放的波形数据的优先级高, 则AtomExPlayer将夺取正在播放的Voice,并开始所请求的波形数据的播放。
(正在播放的音频将会停止,改为播放其他的音频。)

相反,如果要播放的波形数据的优先级比 Voice正在播放的波形数据的优先级低, 则AtomExPlayer将不会播放所请求的波形数据。
(不会播放所请求的音频,正在播放的音频将继续发出声音。)

如果要播放的波形数据的优先级与 Voice正在播放的波形数据的优先级相等, 则AtomExPlayer将会按照发声控制方式(先发优先 or 后发优先), 进行以下控制。
  • 先发优先时,将会优先正在播放的波形数据,不会播放所请求的波形数据。
  • 后发优先时,将会优先所请求的波形数据,并夺取Voice。

播放Cue时,如果数据侧设置了Voice优先级,则在调用本函数后, 将会适用数据侧设置的值和本函数的设置值的加算后的值。
例如,如果数据侧的优先级为255、AtomExPlayer的优先级为45, 则实际适用的优先级是300。
本函数可以设置的值的范围是-255~255,但程序库内部的计算是在int的范围内执行, 因此与数据侧加算后的结果可能会超过-255~255。
注意:
本函数会控制波形数据中设置的Voice优先级
请注意,在Atom Craft上,不会对为Cue所设置的 类别Cue优先级造成影响。
参见
CriAtomExPlayer::Start, CriAtomExPlayer::Update, CriAtomExPlayer::UpdateAll, CriAtomExPlayer::SetVoiceControlMethod
void SetVoiceControlMethod ( CriAtomEx.VoiceControlMethod  method)
inline

指定Voice控制方法

参数
methodVoice控制方法
说明:
为AtomExPlayer设置Voice控制方法。
用本函数设置了Voice控制方法后,如果用 CriWare.CriAtomExPlayer::Start 函数播放音频, 则用该Player播放的波形数据将会适用在本函数指定的控制方式。
函数执行前的预设值是后发优先( PreferLast )。
备注:
AtomExPlayer要播放波形数据时, 如果该波形数据所属的Voice限制组的发声数量达到了上限, 或者Voice池内的Voice全部正在使用时, 将通过Voice优先级来执行Voice控制。

进行发声控制时,如要播放的波形数据的优先级和, 正在播放的波形数据的优先级为相同优先级时, 将会考量用本函数设置的Voice控制方式。
(关于Voice优先级的发声控制的详细信息,请参照 CriWare.CriAtomExPlayer::SetVoicePriority 函数的说明。)
已知的异常:
目前,即使用本函数指定了Voice控制方法, 在播放Cue时,也会优先适用在创作工具上设置的Voice控制方法。
参见
CriAtomExPlayer::Start, CriAtomExPlayer::SetVoicePriority, CriAtomEx.VoiceControlMethod
void SetPreDelayTime ( float  time)
inline

设置预延迟时间

参数
time预延迟时间(0.0f~2000.0f)
说明:
设置预延迟时间。
用本函数设置预延迟时间后,如果用 CriWare.CriAtomExPlayer::Start 函数开始播放, 则将会等待所设置的预延迟时间后再发声。

预延迟时间是在0.0f~10000.0f的范围内指定实数值。单位是ms(毫秒)。
预延迟时间的预设值是0.0f。
备注:
播放Cue时,如果数据侧设置了预延迟时间,则在调用本函数后, 将会适用数据侧设置的值和本函数的设置值的加算后的值。
注意:
预延时不会被应用于HCA-MX编码的音频数据。
想使用包络的音频应该用其他编码,如ADX或HCA。
参见
CriAtomExPlayer::Start
void SetEnvelopeAttackTime ( float  time)
inline

设置EG的Attack时间

参数
timeAttack时间(0.0f~2000.0f)
说明:
EG的Attack时间。
用本函数设置Attack时间后,如果通过 CriWare.CriAtomExPlayer::Start 函数开始播放, 则将以所设置的Attack时间播放。

Attack时间是在0.0f~2000.0f的范围内指定实数值。单位是ms(毫秒)。
Attack时间的预设值是0.0f。
备注:
播放Cue时,如果数据侧设置了Attack时间,则调用本函数后, 将会覆盖数据侧设置的值并适用覆盖后的值(数据侧的设置值被忽略)。
注意:
播放过程中会因 CriWare.CriAtomExPlayer::Update 函数、 CriWare.CriAtomExPlayer::UpdateAll 函数而无法进行更新。

用于HCA-MX的编码后的音频数据不会适用EG。
如果想在音频上适用EG,请用ADX和HCA等其他编解码器进行编码。
例:
// プレーヤの作成
// エンベロープの設定
player.SetEnvelopeAttackTime(10.0f);
// 再生の開始
CriAtomExPlayback playback = player.Start();
参见
CriAtomExPlayer::Start
void SetEnvelopeHoldTime ( float  time)
inline

设置EG的Hold时间

参数
timeHold时间(0.0f~2000.0f)
说明:
设置EG的Hold时间。
用本函数设置Hold时间后,如果通过 CriWare.CriAtomExPlayer::Start 函数开始播放, 则将以所设置的Hold时间播放。

Hold时间是在0.0f~2000.0f的范围内指定实数值。单位是ms(毫秒)。
Hold时间的预设值是0.0f。
备注:
播放Cue时,如果数据侧设置了Hold时间,则调用本函数后, 将会覆盖数据侧设置的值并适用覆盖后的值(数据侧的设置值被忽略)。
注意:
播放过程中会因 CriWare.CriAtomExPlayer::Update 函数、 CriWare.CriAtomExPlayer::UpdateAll 函数 而无法进行更新。

用于HCA-MX的编码后的音频数据不会适用EG。
如果想在音频上适用EG,请用ADX和HCA等其他编解码器进行编码。
例:
// プレーヤの作成
// エンベロープの設定
player.SetEnvelopeHoldTime(player, 20.0f);
// 再生の開始
CriAtomExPlayback playback = player.Start();
参见
CriAtomExPlayer::Start
void SetEnvelopeDecayTime ( float  time)
inline

设置EG的Decay时间

参数
timeDecay时间(0.0f~2000.0f)
说明:
设置EG的Decay时间。
用本函数设置Decay时间后,如果通过 CriWare.CriAtomExPlayer::Start 函数开始播放, 则将以所设置的Decay时间播放。

Decay时间是在0.0f~2000.0f的范围内指定实数值。单位是ms(毫秒)。
Decay时间的预设值是0.0f。
备注:
播放Cue时,如果数据侧设置了Decay时间,则调用本函数后, 将会覆盖数据侧设置的值并适用覆盖后的值(数据侧的设置值被忽略)。
注意:
播放过程中会因 CriWare.CriAtomExPlayer::Update 函数、 CriWare.CriAtomExPlayer::UpdateAll 函数 而无法进行更新。

用于HCA-MX的编码后的音频数据不会适用EG。
如果想在音频上适用EG,请用ADX和HCA等其他编解码器进行编码。
例:
// プレーヤの作成
// エンベロープの設定
player.SetEnvelopeDecayTime(player, 10.0f);
// 再生の開始
CriAtomExPlayback playback = player.Start();
参见
CriAtomExPlayer::Start
void SetEnvelopeReleaseTime ( float  time)
inline

设置EG的Release时间

参数
timeRelease时间(0.0f~10000.0f)
说明:
设置EG的Release时间。
用本函数设置Release时间后,如果通过 CriWare.CriAtomExPlayer::Start 函数开始播放, 则将以所设置的Release时间播放。

Release时间是在0.0f~10000.0f的范围内指定实数值。单位是ms(毫秒)。
Release时间的预设值是0.0f。
备注:
播放Cue时,如果数据侧设置了Release时间,则调用本函数后, 将会覆盖数据侧设置的值并适用覆盖后的值(数据侧的设置值被忽略)。
注意:
播放过程中会因 CriWare.CriAtomExPlayer::Update 函数、 CriWare.CriAtomExPlayer::UpdateAll 函数 而无法进行更新。

用于HCA-MX的编码后的音频数据不会适用EG。
如果想在音频上适用EG,请用ADX和HCA等其他编解码器进行编码。
例:
// プレーヤの作成
// エンベロープの設定
player.SetEnvelopeReleaseTime(player, 3000.0f);
// 再生の開始
CriAtomExPlayback playback = player.Start();
参见
CriAtomExPlayer::Start
void SetEnvelopeSustainLevel ( float  level)
inline

设置EG的Sustain Level

参数
levelSustain Level(0.0f~2000.0f)
说明:
设置EG的Sustain Level。
用本函数设置Sustain Level后,如果通过 CriWare.CriAtomExPlayer::Start 函数开始播放, 则将以所设置的Sustain Level播放。

Sustain Level是在0.0f~1.0f的范围内指定实数值。
Sustain Level的预设值是0.0f。
备注:
播放Cue时,如果数据侧设置了Sustain Level,则调用本函数后, 将会覆盖数据侧设置的值并适用覆盖后的值(数据侧的设置值被忽略)。
注意:
播放过程中会因 CriWare.CriAtomExPlayer::Update 函数、 CriWare.CriAtomExPlayer::UpdateAll 函数 而无法进行更新。

用于HCA-MX的编码后的音频数据不会适用EG。
如果想在音频上适用EG,请用ADX和HCA等其他编解码器进行编码。
例:
// プレーヤの作成
// エンベロープの設定
player.SetEnvelopeSustainLevel(0.5f);
// 再生の開始
CriAtomExPlayback playback = player.Start();
参见
CriAtomExPlayer::Start
void AttachFader ( )
inline

将渐变器安装至Player

说明:
在Player上添加(安装)渐变器, 将CriAtomExPlayer变成交叉渐变专用的Player。
(同时播放多个声音等过去的CriAtomExPlayer所具备的一部分将不能再使用。)

用本函数添加了渐变器的Player,以后每次开始音频播放时 (每次执行 CriWare.CriAtomExPlayer::Start 函数和 CriWare.CriAtomExPlayer::Prepare 时), 都将进行以下控制。
  • 如果有已正在渐出的声音,则将会强行停止。
  • 渐出目前正在播放(或渐入中)的音频。
  • 渐入新开始播放的音频。

此外,播放停止时( CriWare.CriAtomExPlayer::Stop 函数执行时), 进行以下控制。
  • 如果有已正在渐出的声音,则将会强行停止。
  • 渐出目前正在播放(或渐入中)的音频。
备注:
添加了渐变器的Player如果正在播放音频,则在执行了本函数时, Player正在播放的音频将全部停止。

渐变器是针对添加中的Player CriWare.CriAtomExPlayer::Start 每次执行函数和 CriWare.CriAtomExPlayer::Stop 函数, 通过该Player对正在播放的音频进行以下控制。

  1. 如果存在已正在渐出的音频,则该音频将立即被停止。
  2. 如果存在正在渐入中的音频(或正在播放的音频), 则将从此时的音量开始 CriWare.CriAtomExPlayer::SetFadeOutTime 花费函数中指定的时间来让该音频渐出。
  3. 如果执行了 CriWare.CriAtomExPlayer::Start 函数, 则将会以音量0开始播放Player上设置的音频数据, 花费 CriWare.CriAtomExPlayer::SetFadeInTime 函数中指定的时间来使其渐入。

( 如果不使用 CriWare.CriAtomExPlayer::Start 函数,而使用 CriWare.CriAtomExPlayer::Prepare 函数代替时,在解除暂停前,将会一直进行上述控制。)
注意:
执行本函数后,针对CriAtomExPlayer的播放/停止操作将会大幅变化。
(渐变器添加前后,动作会大幅变化。)
具体来说,可同时发声的音频的数会被限制为1声(仅在交叉渐变时为2声), 使用 CriWare.CriAtomExPlayback 的控制也将无法进行。

本函数仅在想要进行交叉渐变处理时需要使用。
关于仅1声音的渐入/渐出,请使用EG或Tween。

出于渐变器的动作规格,渐入/渐出的处理对象仅限 过去2次的音频播放。
更早前播放的音频会在执行 CriWare.CriAtomExPlayer::Start 函数和 CriWare.CriAtomExPlayer::Stop 函数执后被强行停止。
强行停止处理时,可能会发生意外的噪声, 因此请注意不要使同时播放数超过3声。

渐入/渐出仅针对“对于AtomExPlayer的操作”起作用。
针对 CriWare.CriAtomExPlayer::Start 函数执行时获得的播放ID, 即使执行 CriWare.CriAtomExPlayback::Stop ,也不会进行渐出。
(渐变器设置将会被忽略,立即停止处理。)
参见
CriAtomExPlayer::DetachFader
void DetachFader ( )
inline

从Player上删除渐变器

说明:
从Player切断(删除)渐变器。
用本函数切断了渐变器的Player将不会再执行之后的渐入/渐出处理。
备注:
切断了渐变器的Player如果正在播放音频,则在执行了本函数时, Player正在播放的音频将全部停止。
参见
CriAtomExPlayer::AttachFader
void SetFadeOutTime ( int  ms)
inline

设置渐出时间

参数
ms渐出时间(指定毫秒)
说明:
针对已添加了渐变器的Player,指定渐出时间。
下次播放音频时( CriWare.CriAtomExPlayer::Start 函数执行时)将会按照用本函数设置的 时间来渐出正在播放的音频。

渐出时间的预设值是 500 毫秒。
备注:
如果设置了渐出时间,则 CriAtomExPlayer 会按照以下顺序停止播放。

  1. 按照指定的时间将音频的音量降低至 0。
  2. 在音量为 0 的状态下持续播放,直到经过了延迟时间。
  3. 延迟时间经过后,停止播放。

渐出时的音量控制是在音频播放停止前执行。
因此,波形数据中事先设置的EG的Release时间将会被忽略。
(严格来说,音量更改为 0 后,EG的Release处理将会被适用。)

将第2参数( ms )指定为 0 或指定为 -1 时, 会有以下的不同。

  • 指定为 0 时:音量立即降低至 0,执行停止处理。
  • 指定为 -1 时:音量不变,执行停止处理。

如果想在播放停止时不进行渐出处理,而是想启用在波形上事先设置的 EG的Release处理时,请将第2参数( ms )指定为 -1。
通过指定 -1,将不会执行渐出处理的音量控制, 因此执行 CriWare.CriAtomExPlayer::Stop 函数后,延迟时间经过后将会执行通常的停止处理。
(如果波形数据中设置了EG的Release,则将进行Release处理。)
注意:
执行本函数前,请使用 CriWare.CriAtomExPlayer::AttachFader 函数 事先在Player上添加渐变器。

用本函数设置的值不会对已正在播放的音频造成任何影响。
用本函数设置的渐变时间,在本函数执行后,会在 CriWare.CriAtomExPlayer::Start 函数和 CriWare.CriAtomExPlayer::Stop 函数执行时适用。
(针对已经开始渐出的音频, 无法使用本函数更改渐出时间。)
参见
CriAtomExPlayer::AttachFader, CriAtomExPlayer::SetFadeInTime
void SetFadeInTime ( int  ms)
inline

设置渐入时间

参数
ms渐入时间(指定毫秒)
说明:
针对已添加了渐变器的Player,指定渐入时间。
下次播放音频时( CriWare.CriAtomExPlayer::Start 函数执行时),音频将会按照用本函数设置的 时间来进行渐入播放。

渐入时间的预设值是 0 秒。
因此,如果不使用本函数,将不会进行渐入,会立即用最大音量 开始音频的播放。
注意:
执行本函数前,请使用 CriWare.CriAtomExPlayer::AttachFader 函数 事先在Player上添加渐变器。

用本函数设置的值不会对已正在播放的音频造成任何影响。
用本函数设置的渐变时间,在本函数执行后,会在 CriWare.CriAtomExPlayer::Start 函数 执行时适用。
(针对已经开始渐入的音频, 无法使用本函数更改渐入时间。)
参见
CriAtomExPlayer::AttachFader, CriAtomExPlayer::SetFadeInTime
void SetFadeInStartOffset ( int  ms)
inline

设置渐入开始偏移

参数
ms渐入开始偏移(指定毫秒)
说明:
针对已添加了渐变器的Player,指定渐入开始偏移。
通过使用本函数,可以针对渐出,将渐入开始时机 提前或推迟任意的时间。
例如,如果将渐出时间设置为5秒,将渐入开始偏移设置为5秒, 则将可以在5秒完成渐出后,渐入下一个音频。
相反,如果将渐入时间设置为5秒,将渐入开始偏移设置为-5秒, 则可以在5秒完成渐入后,开始渐出正在播放的音频。

渐入开始偏移的预设值是 0 秒。
(渐入和渐出为将会同时开始。)
备注:
渐入开始的时机是渐入的音频的播放准备完毕的时机。
因此,即使渐入开始偏移被设置为 0 秒,但如果渐入音频的缓冲 需要一定时间时(串流播放等情况), 则在渐出开始前会需要一段时间。
(本参数是用于调整渐入和渐出时机的相对值。)
注意:
执行本函数前,请使用 CriWare.CriAtomExPlayer::AttachFader 函数 事先在Player上添加渐变器。

用本函数设置的值不会对已正在播放的音频造成任何影响。
用本函数设置的渐变时间,在本函数执行后,会在 CriWare.CriAtomExPlayer::Start 函数和 CriWare.CriAtomExPlayer::Stop 函数执行时适用。
(针对已开始渐变处理的音频, 无法用本函数更改渐变处理的时机。)
参见
CriAtomExPlayer::AttachFader, CriAtomExPlayer::SetFadeInTime
void SetFadeOutEndDelay ( int  ms)
inline

设置渐出后的延迟时间

参数
ms渐出后的延迟时间(指定毫秒)
说明:
设置渐出完成后,丢弃Voice为止的延迟时间。
通过使用本函数,可以任意设置完成渐出后的Voice被丢弃为止的时间。

延迟时间的预设值是 500 毫秒。
(用于播放渐出音频的Voice将会在音量设置为 0 后,于 500 毫秒后被丢弃。)
备注:
除了在音频的渐出完成前,Voice会停止的平台以外, 其他平台无需使用本函数。
注意:
执行本函数前,请使用 CriWare.CriAtomExPlayer::AttachFader 函数 事先在Player上添加渐变器。

用本函数设置的值不会对已正在播放的音频造成任何影响。
用本函数设置的渐变时间,在本函数执行后,会在 CriWare.CriAtomExPlayer::Start 函数和 CriWare.CriAtomExPlayer::Stop 函数执行时适用。
(针对已经开始渐出的音频, 无法使用本函数更改渐出后的延迟时间。)

在不同的平台上,音量的控制和Voice的停止得到反映的时机会有所不同。
因此,在本函数上指定 0 时,在某些平台上,音量更改得到反映前, Voice可能会停止。
参见
CriAtomExPlayer::AttachFader
bool IsFading ( )
inline

获取是否正在进行渐变处理

返回
是否正在进行渐变处理
说明:
获取是否正在进行渐变处理。
备注:
本函数在以下处理期间内,会返回 True。
  • 为了开始交叉渐变而正在等待同步时。
  • 渐入/渐出处理过程中(音量更改过程中)。
  • 渐出完成后的延迟期间内。
void ResetFaderParameters ( )
inline

渐变器参数初始化

说明:
清除渐变器上设置的各种参数,恢复为初始值。
注意:
执行本函数前,请使用 CriAtomExPlayer::AttachFader 函数 事先在Player上添加渐变器。

即使用本函数清除了渐变器参数,也不会对已正在播放的音频造成任何影响。
用用本函数清除的渐变器参数,在本函数执行后,会在 CriAtomExPlayer::Start 函数和 CriAtomExPlayer::Stop 函数执行时适用。
(针对已开始渐变处理的音频, 无法用本函数适用已清除的渐变器参数。)
void SetGroupNumber ( int  group_no)
inline

指定组编号

说明:
指定在发声时,从哪个Voice限数组获取Voice。

将 group_no 指定为 -1 时,Player不会受到Voice限数组的制限。
(如果有空的Voice,或者有比自身更低优先级的Voice,
不论Voice限数组如何,都将会获取Voice。)
注意:
开始播放后,如果指定的Voice限数组的Voice全部正在使用, 则所播放的音频是否会发声要取决于Voice优先级的控制。
(关于Voice优先级的发声控制的详细信息,请参照 CriWare.CriAtomExPlayer::SetVoicePriority 函数的说明。)

播放Cue时,如果调用本函数,则将会
覆盖数据侧设置的Voice限数组设置 (数据侧的设置值被忽略)。
但是,如果为 group_no 指定了 -1,则将会参照数据侧设置的Voice限数组。

void Update ( CriAtomExPlayback  playback)
inline

更新播放参数(CriAtomExPlayback对象单位)

参数
playbackCriAtomExPlayback对象
说明:
使用AtomExPlayer上设置的播放参数(AISAC控制器值), 更新CriAtomExPlayback对象的参数。
注意:
用于更新参数的CriAtomExPlayer对象必须是 创建了CriAtomExPlayback对象的Player。
例:
// プレーヤの作成
// 再生の開始
CriAtomExPlayback playback = player.Start();
// ボリュームの変更
// 注意)この時点では再生中の音声のパラメータは変更されない。
player.SetVolume(volume);
// プレーヤに設定されたパラメータを再生中の音声にも反映
player.Update(playback);
参见
CriAtomExPlayer::UpdateAll
void UpdateAll ( )
inline

更新播放参数(正在播放的所有声音)

说明:
使用AtomExPlayer上设置的播放参数(AISAC控制器值), 更新用AtomExPlayer正在播放的声音的所有播放参数。
例:

: // プレーヤの作成 CriAtomExPlayer player = new CriAtomExPlayer(); : // 再生の開始 CriAtomExPlayback playback = player.Start(); : // ボリュームの変更 // 注意)この時点では再生中の音声のパラメータは変更されない。 player.SetVolume(volume);

// プレーヤに設定されたパラメータを再生中の全ての音声に反映 player.UpdateAll(); :

参见
CriAtomExPlayer::Update
void ResetParameters ( )
inline

初始化播放参数

说明:
对AtomExPlayer设置的播放参数(含AISAC控制器值)进行重置, 恢复为初始状态(未设置状态)。
调用本函数后,如果用 CriWare.CriAtomExPlayer::Start 函数开始播放,则将会以初始状态的播放参数进行播放。
备注:
调用本函数后,即使调用了 CriWare.CriAtomExPlayer::Update 函数、 CriWare.CriAtomExPlayer::UpdateAll 函数, 也无法将已播放的音频的参数恢复为初始值。
如果要更改已播放的音频的参数, 请明确地调用 CriWare.CriAtomExPlayer::SetVolume 函数等。

用本函数重置的参数如下。
此外,使用本函数无法重置带有3D声源处理和3D收听者句柄的参数(位置等)。 仅会重置“AtomExPlayer上设置的句柄是什么”这样的设置。 想要对这些句柄的参数进行重置时, 请调用各自的句柄参数重置函数。
例:

: // プレーヤの作成 CriAtomExPlayer player = new CriAtomExPlayer(); : // ボリュームの変更 player.SetVolume(0.5f);

// 音声を再生 // 備考)ここで再生された音声は0.5fのボリュームで出力される。 CriAtomExPlayback playback1 = player.Start();

// プレーヤに設定されたパラメータをリセット // 備考)プレーヤのボリューム設定がデフォルト値(1.0f)に戻される。 player.ResetParameters();

// 別の音を再生 // 備考)ここで再生された音声は1.0fのボリュームで出力される。 CriAtomExPlayback playback2 = player.Start(); :

参见
CriAtomEx3dSource::ResetParameters, CriAtomEx3dListener::ResetParameters
long GetTime ( )
inline

获取播放时间

返回
播放时间(毫秒单位)
说明:
获取用AtomExPlayer最后播放的音频的播放时间。

成功获取播放时间后,本函数将返回 0 以上的值。
如果无法获取播放时间(例如Voice获取失败等),本函数将返回负值。
备注:
如果用同一个Player播放了多个音频,并执行了本函数时,本函数 将会返回"最后"播放的音频的时间。
如果需要针对多个音频检查播放时间, 请按照要播放的音频的数量来创建Player,或者 使用 CriWare.CriAtomExPlayback::GetTime 函数。

本函数返回的播放时间是“播放开始后的经过时间”。
即使在循环播放时或无缝连接播放时执行, 也无法按照播放位置来倒回时间。

CriWare.CriAtomExPlayer::Pause 函数暂停时, 播放时间累计也将停止。
(解除了暂停状态后,累计将重新开始)
可以用本函数获取的时间的精度取决于Server处理的频率。
(时间的更新是以Server处理为单位来执行。)
如果要获取更高精度的时间,请使用 CriWare.CriAtomExPlayback::GetNumPlayedSamples 函数来 代替本函数, 获取播放完毕的样本数。
注意:
返回值的类型是 long,但目前精度不会超过32bit以上。
请注意按照播放时间来进行控制时,大概24天就会出现播放时间异常。
(超过 2147483647 毫秒后,播放时间会溢出,更改为负值。)

发声数控制导致正在播放的音频被消掉时, 播放时间的累计也会在此时停止。
此外,如果在播放开始时未通过控制发声数来分配Voice, 则本函数无法返回正确的时间。
(会返回负值。)

即使驱动器发生了读取重试处理等,导致音频数据的提供被暂时中断时, 播放时间的累计也不会中断。
(即使因为数据提供停止导致播放停止,时间也会继续。)
因此,如果按照用本函数获得的时间来进行映像同步, 每次发生读取重试时,同步可能会出现很大的偏差。
需要严格控制波形数据和映像的同步时,请使用 CriWare.CriAtomExPlayback::GetNumPlayedSamples 函数 来代替本函数, 与已播放完毕的样本数进行同步。
参见
CriAtomExPlayback::GetTime, CriAtomExPlayback::GetNumPlayedSamples
Status GetStatus ( )
inline

获取状态

返回
状态
说明:
获取AtomExPlayer的状态。
状态是指显示AtomExPlayer播放状态的 CriWare.CriAtomExPlayer::Status 型的值, 存在以下五种值。
  1. Stop
  2. Prep
  3. Playing
  4. PlayEnd
  5. Error
AtomExPlayer创建时,AtomExPlayer的状态是停止状态( Stop )。
设置要播放的音频数据后,通过执行 CriWare.CriAtomExPlayer::Start 本函数, AtomExPlayer的状态会更改为准备状态( Prep )。
( Prep 是正在等待数据提供和解码开始的状态。)
提供了播放开始所需的足够数据后,AtomExPlayer会将状态 更改为播放状态( Playing ),开始输出音频。
所设置的数据全部播放结束后,AtomExPlayer会将状态更改为播放结束状态 ( PlayEnd )。
此外,播放过程中如发生了错误,AtomExPlayer会将状态更改为错误状态 ( Error )。

通过检查AtomExPlayer的状态,并根据状态进行切换处理, 可创建出与音频播放状态相关联的程序。
例如,如果想等待音频播放结束后再进行处理时,请使用以下代码。
// プレーヤの作成
// 音声データをセット
player.SetCue(acb, cueId);
// セットされた音声データを再生
player.Start();
// 再生完了待ち
while (player.GetStatus() != CriAtomExPlayer.Status.PlayEnd) {
yield return null;
}
:
参见
CriAtomExPlayer::Start
float GetParameterFloat32 ( CriAtomEx.Parameter  id)
inline

获取参数(浮点数)

参数
id参数ID
返回
参数设置值
说明:
获取AtomExPlayer上设置的各种参数的值。
值是以浮点数进行获取。
参见
CriAtomEx.Parameter, CriAtomExPlayer::GetParameterUint32, CriAtomExPlayer::GetParameterSint32
uint GetParameterUint32 ( CriAtomEx.Parameter  id)
inline

获取参数(无符号的整数)

参数
id参数ID
返回
参数设置值
说明:
获取AtomExPlayer上设置的各种参数的值。
值是以无符号的整数进行获取。
参见
CriAtomEx.Parameter, CriAtomExPlayer::GetParameterFloat32, CriAtomExPlayer::GetParameterSint32
int GetParameterSint32 ( CriAtomEx.Parameter  id)
inline

获取参数(带符号的整数)

参数
id参数ID
返回
参数设置值
说明:
获取AtomExPlayer上设置的各种参数的值。
值是以带符号的整数进行获取。
参见
CriAtomEx.Parameter, CriAtomExPlayer::GetParameterFloat32, CriAtomExPlayer::GetParameterUint32
void SetSoundRendererType ( CriAtomEx.SoundRendererType  type)
inline

设置输出声音渲染器类型

参数
type输出目标的声音渲染器类型
说明:
设置AtomExPlayer的播放所使用的声音渲染器的类型。
执行本设置后,如果开始播放,将会从用所设置的声音渲染器类型创建的 Voice池获取可播放的Voice。
声音渲染器类型设置能够以Cue的播放单位来进行设置。
参见
CriAtomEx.SoundRendererType
void SetRandomSeed ( uint  seed)
inline

设置随机数种类

参数
seed随机数种类
说明:
为AtomExPlayer所持有的伪随机数发生器设置随机数种类。
通过设置随机数种类,可以让各种随机播放处理具备再现性。

参见
CriAtomEx.SetRandomSeed
void Loop ( bool  sw)
inline

循环播放切换

参数
sw循环切换(True: 循环模式,False: 解除循环模式)
说明:
针对没有循环点的波形数据,切换循环播放的ON/OFF。
预设值是循环OFF。
如果将循环播放设置为ON,则播放至音频末尾后不会结束播放,而是会返回开头并循环播放。
注意:
本函数的设置会针对波形数据进行适用。
针对序列数据执行本函数时, 序列数据内的各波形数据会更改为循环播放的形式。

本函数只能指定没有循环点的波形数据。
如果播放带有循环点的波形数据,则无论本函数的指定如何, 都将按照波形数据的循环位置来进行循环播放。

本函数会在内部使用无缝连接播放功能。
因此,如果使用不支持无缝连接播放的格式(HCA-MX等), 循环位置上会出现某种程度的静音。

循环切换只能在播放开始前进行更改。
无法针对正在播放的Player更改循环切换。
void SetAsrRackId ( int  asr_rack_id)
inline

指定ASR Rack ID

参数
asr_rack_idASR Rack ID
说明:
指定Voice的输出目标ASR Rack ID。
注意:
本函数仅在Voice的声音渲染器类型使用ASR时有效。
(如果使用其他Voice,则本函数的设置值被忽略。)

ASR Rack ID需要在播放开始前进行设置。
已开始播放的音频无法更改ASR Rack ID。

本函数的设置不适用于为HCA-MX编码的音频数据。
void SetVoicePoolIdentifier ( uint  identifier)
inline

设置Voice池标识符

参数
identifierVoice池标识符
说明:
指定在发声时,从哪个Voice池获取Voice。
执行本函数后,Player仅会从与以后指定的Voice池标识符相一致的 Voice池获取Voice。
参见
CriAtomExStandardVoicePool, CriAtomExWaveVoicePool
void SetDspTimeStretchRatio ( float  ratio)
inline

设置DSP时间拉伸比率

参数
ratio拉伸比率
说明:
设置DSP时间拉伸的播放时间的倍率。
原始数据的播放时间乘以 ratio 的值将会是拉伸结果的播放时间。
可以设置的值的范围是 0.25f ~ 3.0f。
注意:
设置的值是针对“播放时间”的倍率,而不是针对播放速度。
要通过播放速度来指定拉伸的比率时,请设置播放速度的倍率的倒数。
参见
CriAtomExVoicePool.AttachDspTimeStretch, CriAtomExPlayer.SetVoicePoolIdentifier
void SetDspPitchShifterPitch ( float  pitch)
inline

设置DSP移调器的音高移调量

参数
pitch移调量
说明:
设置DSP移调器的移调量。
单位是音分。
可以设置的值的范围是 -2400 ~ 2400。
与原音相比,1200 为 2倍,-1200 为 1/2倍的移调。
参见
CriAtomExVoicePool.AttachDspPitchShifter, CriAtomExPlayer.SetVoicePoolIdentifier
void SetDspParameter ( int  id,
float  value 
)
inline

设置DSP参数

参数
id参数ID
value参数值
说明:
设置Voice中添加的DSP的参数。
参见
CriAtomExVoicePool.AttachDspTimeStretch, CriAtomExVoicePool.AttachDspPitchShifter, SetVoicePoolIdentifier
void AttachTween ( CriAtomExTween  tween)
inline

AtomExTween的挂载

说明:
通过将AtomExTween挂载到播放器,可以进行简单的参数动画处理。
如果要将AtomExTween动画应用于挂载之前开始播放的声音,
您需要调用 CriAtomExPlayer.UpdateCriAtomExPlayer.UpdateAll
参数
tweenAtomExTween对象
参见
CriAtomExTween
void DetachTween ( CriAtomExTween  tween)
inline

AtomExTween的卸载

参数
tweenAtomExTween对象
参见
CriAtomExTween
void DetachTweenAll ( )
inline

卸载所有AtomExTween

参见
CriAtomExTween
void SetEnvelopeAttackCurve ( CriAtomEx.CurveType  curveType,
float  strength 
)
inline

包络的Attack曲线的设置

参数
curveType曲线类型
strength曲线强度
说明:
设置包络的Attack曲线。
设置了曲线的播放器会使用该Attack曲线进行播放。

应该指定 CriAtomEx.CurveType 中定义的曲线类型之一。
默认曲线类型为 LINEAR。

曲线强度应设置为 0.0f 到 2.0f 范围内的实数值。
默认曲线强度为 1.0f。

播放期间无法通过 CriAtomExPlayer.Update、CriAtomExPlayer.UpdateAll 进行更新。

如果在Cue播放时,在数据端存在Attack曲线设置的情况下调用此函数,
则数据端的设置值将被覆盖(即数据端的值会被忽略)。

该参数可由 CriAtomExPlayer.ResetParameters 清除。
void SetEnvelopeDecayCurve ( CriAtomEx.CurveType  curveType,
float  strength 
)
inline

包络的Decay曲线的设置

参数
curveType曲线类型
strength曲线强度
说明:
设置包络的Decay曲线。
设置了曲线的播放器会使用该Decay曲线进行播放。

应该指定 CriAtomEx.CurveType 中定义的曲线类型之一。
默认曲线类型为 LINEAR。

曲线强度应设置为 0.0f 到 2.0f 范围内的实数值。
默认曲线强度为 1.0f。

播放期间无法通过 CriAtomExPlayer.Update、CriAtomExPlayer.UpdateAll 进行更新。

如果在Cue播放时,在数据端存在Decay曲线设置的情况下调用此函数,
则数据端的设置值将被覆盖(即数据端的值会被忽略)。

该参数可由 CriAtomExPlayer.ResetParameters 清除。
void SetEnvelopeReleaseCurve ( CriAtomEx.CurveType  curveType,
float  strength 
)
inline

包络的Release曲线的设置

参数
curveType曲线类型
strength曲线强度
说明:
设置包络的Release曲线。
设置了曲线的播放器会使用该Release曲线进行播放。

应该指定 CriAtomEx.CurveType 中定义的曲线类型之一。
默认曲线类型为 LINEAR。

曲线强度应设置为 0.0f 到 2.0f 范围内的实数值。
默认曲线强度为 1.0f。

播放期间无法通过 CriAtomExPlayer.Update、CriAtomExPlayer.UpdateAll 进行更新。

如果在Cue播放时,在数据端存在Release曲线设置的情况下调用此函数,
则数据端的设置值将被覆盖(即数据端的值会被忽略)。

该参数可由 CriAtomExPlayer.ResetParameters 清除。
void AddOutputPort ( CriAtomExOutputPort  outputPort)
inline

添加输出端口对象

参数
outputPort输出端口对象
说明:
为播放器添加输出端口。
最多可以指定 CriWare.CriAtomExPlayer.MaxOutputPorts个输出端口对象 。
备注:
可使用以下 API 清除该参数。
也可以使用 CriWare.CriAtomExPlayer.RemoveOutputPort 移除特定输出端口。

如果在Cue播放期间调用此函数,则以下所有设置都将被忽略
被忽略后,所有Cue将通过添加的输出端口播放。

输出端口需要在开始播放之前设置。
无法更改已开始播放的音频的输出端口。

如果对一个指定了多个输出端口的播放器执行播放,则每个输出端口都会单独使用Voice。
因此,需要预先预留足够数量的Voice来满足指定的输出端口数量。

在Cue播放以外的播放过程中(例如 CriWare.CriAtomExPlayer.SetData),只会使用此函数指定的多个输出端口中设置的第一个输出端口。

此函数的设置不会应用于 HCA-MX 编码的音频数据。
要设置 HCA-MX 编码的音频数据的输出目标时,请使用 CriWare.CriAtomExHcaMx.SetAsrRackId 设置 HCA-MX 混音器本身的输出目标 ASR Rack ID。
注意:
该函数仅当音频渲染器类型为ASR时有效。
(使用其他Voice时函数的设置值将被忽略。)
参见
CriWare.CriAtomExOutputPort.CriAtomExOutputPort, CriWare.CriAtomExPlayer.RemoveOutputPort, CriWare.CriAtomExPlayer.ClearOutputPorts
void RemoveOutputPort ( CriAtomExOutputPort  outputPort)
inline

卸载输出端口对象

参数
outputPort输出端口对象
说明:
移除已添加到Player的输出端口。
备注:
移除使用 CriWare.CriAtomExPlayer.RemoveOutputPort 添加到播放器的特定输出端口对象。
要移除播放器上配置的所有输出端口,请使用 CriWare.CriAtomExPlayer.ClearOutputPorts
注意:
无法对已经开始播放的音频更改输出端口。
参见
CriWare.CriAtomExOutputPort.CriAtomExOutputPort, CriWare.CriAtomExPlayer.AddOutputPort, CriWare.CriAtomExPlayer.ClearOutputPorts
void ClearOutputPorts ( )
inline

清除输出端口对象

说明:
清除所有已添加到Player的输出端口。
备注:
清除使用 CriWare.CriAtomExPlayer.AddOutputPort添加到播放器的所有特定输出端口对象。
要仅删除特定输出端口,请使用 CriWare.CriAtomExPlayer.RemoveOutputPort
注意:
无法对已经开始播放的音频更改输出端口。
参见
CriWare.CriAtomExOutputPort.CriAtomExOutputPort, CriWare.CriAtomExPlayer.AddOutputPort, CriWare.CriAtomExPlayer.RemoveOutputPort
void AddPreferredOutputPort ( CriAtomExOutputPort  outputPort)
inline

添加优先输出端口对象

参数
outputPort输出端口对象
说明:
向播放器添加一个输出端口,该端口会比 ACF 中的输出端口更优先的被引用。
最多可以指定 CriWare.CriAtomExPlayer.MaxOutputPorts 个输出端口对象 。
备注:
使用以下 API 清除该参数。
也可以使用 CriWare.CriAtomExPlayer.RemovePreferredOutputPort 删除特定输出端口。

默认情况下,如果播放的Cue中的音轨设置了输出端口名称,会从注册ACF时自动生成的输出端口输出。
通过使用此函数为播放器添加优先输出端口,可改用优先输出端口,而不是数据中设置的输出端口执行输出。
注意:
不会影响在数据端未设置输出端口名称的音轨的播放。

输出端口的设置必须在开始播放之前进行。
您无法更改已开始播放的音频的输出端口。

不能为一个播放器注册同名的优先输出端口。

除Cue播放以外,在播放处理中(例如使用了 CriWare.CriAtomExPlayer.SetData 的播放),
使用此函数指定的多个输出端口中,只有第一个被设置的输出端口会被应用。

如果在执行 CriWare.CriAtomExPlayer.SetAsrRackId 后执行此函数,
则使用 CriWare.CriAtomExPlayer.SetAsrRackId 设置的 ASR Rack ID 设置将被覆盖。

此函数设置不适用于为 HCA-MX 编码的音频数据。
参见
CriWare.CriAtomExPlayer.RemovePreferredOutputPort, CriWare.CriAtomExPlayer.ClearPreferredOutputPorts
void RemovePreferredOutputPort ( CriAtomExOutputPort  outputPort)
inline

卸载优先输出端口对象

参数
outputPort输出端口对象
说明:
移除已添加到Player的优先输出端口。
备注:
移除使用 CriWare.CriAtomExPlayer.AddPreferredOutputPort 添加到播放器的特定优先输出端口对象。
要移除播放器上设置的所有输出端口,请使用 CriWare.CriAtomExPlayer.ClearOutputPorts 函数。
注意:
移除优先输出端口不会影响已开始播放的音频。
参见
CriWare.CriAtomExPlayer.AddOutputPort, CriWare.CriAtomExPlayer.ClearPreferredOutputPorts
void RemovePreferredOutputPort ( string  name)
inline

卸载优先输出端口对象(名称指定)

参数
name输出端口名称
说明:
移除已添加到Player的优先输出端口。
备注:
移除使用 CriWare.CriAtomExPlayer.AddPreferredOutputPort 添加到播放器的特定优先输出端口对象。
要移除播放器上设置的所有输出端口,请使用 CriWare.CriAtomExPlayer.ClearOutputPorts 函数。
注意:
移除优先输出端口不会影响已开始播放的音频。
参见
CriWare.CriAtomExPlayer.AddOutputPort, CriWare.CriAtomExPlayer.ClearPreferredOutputPorts
void ClearPreferredOutputPorts ( )
inline

清除优先输出端口对象

清除所有已添加到Player的优先输出端口。

清除使用 CriWare.CriAtomExPlayer.AddPreferredOutputPort 添加到播放器的所有优先输出端口对象。
要删除特定的优先输出端口,请使用 CriWare.CriAtomExPlayer.RemovePreferredOutputPort

移除优先输出端口不会影响已开始播放的音频。

参见
CriWare.CriAtomExPlayer.AddOutputPort, CriWare.CriAtomExPlayer.RemovePreferredOutputPort
void SetScheduleTime ( System.Int64  scheduleTime)
inline

预约播放时间的指定

说明:
关于使用AtomExPlayer播放音频,指定播放的开始位置。

开始播放的时间(采样数)可以参照通过 CriWare.CriAtomExAsrRack.GetNumRenderedSamples 函数获取的
ASR Rack的总渲染时间来设置。
要禁用该设置时,请指定 scheduleTime 为-1。
注意:
仅在使用了声音渲染器类型为 CriWare.CriAtomEx.SoundRendererType.Asr 的Voice时才可以预约播放。
如果指定的预约播放时间已过,则声音将以最快的时间播放。
因此为了稳定的执行效果,进行播放预约时建议至少提前200毫秒执行开始播放。
注意即使可以把预约播放时间的设置时间至很长,但播放资源的配置会在
执行 criAtomExPlayer_Start 函数时进行,因此如果预约时间过长,
可能会占用播放其他音频所需的资源。(这里的播放资源是指Voice和虚拟Voice。)
参见
CriWare.CriAtomExAsrRack.GetNumRenderedSamples

类成员变量说明

readonly uint MaxOutputPorts = 8
static

在Player中可以指定的最大输出端口数

说明:
可以为各个Player指定的最大输出端口数量。

属性说明

CriAtomExBeatSync.CbFunc OnBeatSyncCallback
addremove

注册序列事件回调

说明:
注册一个由回调标记同步执行的回调函数,该标记嵌入在Player正在播放的Cue中。
注册的回调函数在回调事件处理后,会立即在应用程序主线程更新时执行。
CriAtomExSequencer.EventCallback OnSequenceCallback
addremove

注册节拍同步回调

说明:
注册一个回调函数,以接收Player正在播放的Cue中嵌入的节拍同步位置信息。
注册的回调函数在回调事件处理后,会立即在应用程序主线程更新时执行。

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