CRIWARE Unity Plugin Manual  Last Updated: 2024-07-12
在Unity Editor中Bounce音频
CriWare.Editor.CriAtomWaveFile 类可以将ADX播放的声音输出(Bounce)为wav文件。可以用于以下目的。
  • 在自定义Editor扩展窗口中绘图
  • 将ADX编解码器压缩的音频暂时作为非压缩数据使用

操作概述

CriWare.CriAtomExPlayer 播放的声音按照以下流程,在ASR(Atom Sound Renderer)中渲染,从硬件输出。
atom_process_flow.png
CriWare.Editor.CriAtomWaveFile 类可以将ASR混音后的音频(即上述流程的最后一部分)导出为wav文件。
由于输出的是ASR混音的结果,因此可以导出如下使用状态的最终输出。
  • CriAtomExPlayer的参数变化适用结果
  • 多个CriAtomExPlayer的音频播放结果
  • 使用snapshot功能等在音频播放期间切换DSP总线设置时的结果

注意
  • Bounce不能早于实际时间执行。
    这是因为Atom的声音输出是实时记录的。
  • 只有在CRIWARE Unity Plugin中创建的默认ASR rack可以作为Bounce的对象。
    在用户应用程序上创建的ASR rack不能作为Bounce的对象。

使用方法

通过 CRIWARE Library Initializer 组件、 CriWareInitializer::Initialize
或者 CriWare.Editor.CriAtomEditorUtilities.InitializeLibrary()
初始化运行库后开始Bounce。
在下面的样例中,播放器在Bounce开始后发出声音,
但实际上在Bounce开始和播放器发声的时间上没有限制。
string outputFilePath; //Bounced output file path
uint numChannels; //Number of channels in the bounced file
CriWare.Editor.CriAtomWaveFile.StartBounce(outputFilePath, numChannels);
~~
player.Play(acb, cueName);
// Get bounce time for progress bars, etc.
~~
// Stop bounce and flush file.
CriAtomPlugin.FinalizeLibrary();
注意
CriWare.Editor.CriAtomWaveFile.StartBounce() 的声道数有限制。
关于可指定的声道数,请参照参考注释。