音频输出数据解析模块(Player/源单位)
更多...
音频输出数据解析模块(Player/源单位)
- 弃用:
- 削除予定の非推奨APIです。 CriWare.CriAtomExOutputAnalyzer クラスの使用を検討してください。
- 说明:
- 针对各CriAtomSource/CriAtomExPlayer进行音频输出解析。
提供电平表功能等。
- 注意:
- 将来本类将会被废除。请使用 CriWare.CriAtomExOutputAnalyzer 。
使用HCA-MX或平台专用的音频压缩编解码器时,无法进行解析。
请使用HCA或ADX编解码器。
解析处理类型
- 说明:
- 用于显示创建解析模块时指定的解析处理类型的值。
- 参见
- CriAtomExOutputAnalyzer
枚举值 |
---|
LevelMeter |
电平表(RMS Level测量)
|
SpectrumAnalyzer |
频谱分析仪
|
PcmCapture |
获取波形数据
|
创建音频输出数据解析模块
- 返回
- 音频输出数据解析模块
- 说明:
- 创建CriAtomSource/CriAtomExPlayer的输出音频数据的解析模块。
创建的解析模块添加在CriAtomSource或CriAtomExPlayer上使用。
针对添加的音频输出,进行电平表等解析。
- 备注:
- 解析模块上可以添加的CriAtomSource/CriAtomExPlayer总线仅限一个。
如果要重用解析模块时,请将其切断。
- 注意:
- 将来本类将会被废除。请使用CriAtomExOutputAnalyzer。
创建音频输出数据解析模块时,将会取得非托管的资源。
解析模块不再需要时,请务必调用 CriAtomExPlayerOutputAnalyzer.Dispose 方法。
delegate void PcmCaptureCallback |
( |
float[] |
dataL, |
|
|
float[] |
dataR, |
|
|
int |
numChannels, |
|
|
int |
numData |
|
) |
| |
|
inherited |
获取波形回调
- 说明:
- 用于获取输出的波形数据的回调。
override void Dispose |
( |
| ) |
|
|
inlineinherited |
添加AtomExPlayer
- 返回
- 添加是否成功(成功:True,失败:False)
- 说明:
- 添加用于解析输出数据的AtomExPlayer。
无法添加多个AtomExPlayer。 如果在添加状态下,添加了其他AtomExPlayer,则目前处于添加状态的AtomExPlayer将会被切断。
要添加CriAtomSource时,请使用CriAtomSource::AttachToOutputAnalyzer。
- 注意:
- 需要在播放开始前执行添加。如果在播放开始后执行添加,将会失败。
如果在切断用本函数添加的AtomExPlayer前将其丢弃, 则切断时会发生存取错误。
请务必先进行切断后,在将AtomExPlayer丢弃。
- 参见
- CriAtomExOutputAnalyzer::DetachExPlayer, CriAtomSource::AttachToOutputAnalyzer
bool AttachDspBus |
( |
string |
busName | ) |
|
|
inlineinherited |
float GetRms |
( |
int |
channel | ) |
|
|
inlineinherited |
void GetSpectrumLevels |
( |
ref float[] |
levels | ) |
|
|
inlineinherited |
获取频谱解析结果
- 参数
-
- 说明:
- 获取由频谱分析仪解析的各频段的振幅值。
数组的元素数是创建模块创时指定的带数。
如果使用本功能,请为Config的enableSpectrumAnalyzer指定True,为numSpectrumAnalyzerBands指定 MaximumSpectrumBands以下的正数来创建模块。 如果希望像市售的频谱分析仪一样来显示解析结果, 本函数需要将返回值转换为分贝值。
- 例:
public class SpectrumLevelMeter : MonoBehaviour {
private CriAtomExOutputAnalyzer analyzer;
void Start() {
this.analyzer = new CriAtomExOutputAnalyzer(config);
}
void Update() {
float[] levels = new float[8];
analyzer.GetSpectrumLevels (ref levels);
float db = 20.0f * Mathf.Log10(levels[0]);
Debug.Log (db);
}
}
- 参见
- CriAtomExOutputAnalyzer::AttachExPlayer, CriAtomExOutputAnalyzer::AttachDspBus
void GetPcmData |
( |
ref float[] |
data, |
|
|
int |
ch |
|
) |
| |
|
inlineinherited |
注册获取波形数据的回调
- 说明:
- 注册输出数据获取用的回调。
如果使用回调的波形数据的获取,则在调用ExecutePcmCaptureCallback前, 请通过本函数注册回调。
void ExecutePcmCaptureCallback |
( |
| ) |
|
|
inlineinherited |
执行获取波形数据回调
- 说明:
- 执行输出数据获取用的回调。
调用本函数后,将会多次返回以从最后一次执行时起的输出差分数据 为参数的回调。
- 注意:
- 如果要使用回调的波形数据获取,请定期调用本函数。
如果长时间不调用本函数,则可以获取的波形数据将会出现欠缺。
const int MaximumSpectrumBands = 512 |
|
inherited |
频谱分析仪的最大带通数
- 说明:
- 是频谱分析仪可输出的带通数。
该类的文档由以下文件生成:
- CriAtomExPlayerOutputAnalyzer.cs