AudioStreamGenerator
Inherits: AudioStream < Resource < Reference < Object
使用程序生成声音的音频流。
描述
此音频流不播放声音,需要脚本为其生成音频数据。参阅AudioStreamGeneratorPlayback。
另请参阅 AudioEffectSpectrumAnalyzer 用于执行实时音频频谱分析。
注意: 由于性能限制,最好从 C# 或通过 GDNative 编译的语言中使用此类。如果你仍然想从GDScript中使用这个类,请考虑使用较低的 mix_rate,例如 11,025 Hz 或 22,050 Hz。
教程
属性
| ||
|
属性说明
- float buffer_length
Default |
|
Setter | set_buffer_length(value) |
Getter | get_buffer_length() |
要生成的缓冲区的长度,以秒为单位。较低的值会带来更少的延迟,但需要脚本更快地生成音频数据,从而导致 CPU 使用率增加,如果 CPU 跟不上,则音频破裂的风险更大。
- float mix_rate
Default |
|
Setter | set_mix_rate(value) |
Getter | get_mix_rate() |
使用的采样率(单位:Hz)。更高的值对CPU要求更高,但会带来更好的质量。
在游戏中,常用的采样率有11025
、16000
、22050
、32000
、44100
和48000
。
根据Nyquist-Shannon采样定理,当超过40000赫兹时,人类的听觉没有质量上的差别(因为大多数人只能听到~20000赫兹,往往更少)。如果你要生成较低音调的声音,例如语音,则可以使用较低的采样率,例如 32000
或 22050
,而不会降低质量。