AudioStreamWAV
继承: AudioStream < Resource < RefCounted < Object
存储从 WAV 文件加载的音频数据。
描述
AudioStreamWAV 存储从 WAV 文件加载的声音样本。要播放存储的声音,请使用 AudioStreamPlayer(用于非空间定位音频)或 AudioStreamPlayer2D/AudioStreamPlayer3D(用于空间定位音频)。声音可以循环播放。
这个类还可用于存储动态生成的 PCM 音频数据。另请参阅 AudioStreamGenerator 以了解程序化音频生成。
教程
属性
| ||
| ||
| ||
| ||
| ||
| ||
|
方法
save_to_wav ( String path ) |
枚举
enum Format:
Format FORMAT_8_BITS = 0
8 位音频编解码器。
Format FORMAT_16_BITS = 1
16 位音频编解码器。
Format FORMAT_IMA_ADPCM = 2
音频使用 IMA ADPCM 进行压缩。
enum LoopMode:
LoopMode LOOP_DISABLED = 0
音频不循环。
LoopMode LOOP_FORWARD = 1
音频在 loop_begin 和 loop_end 之间循环数据,仅向前播放。
LoopMode LOOP_PINGPONG = 2
音频在 loop_begin 和 loop_end 之间循环数据,来回播放。
LoopMode LOOP_BACKWARD = 3
音频在 loop_begin 和 loop_end 之间循环数据,仅向后播放。
属性说明
PackedByteArray data = PackedByteArray()
void set_data ( PackedByteArray value )
PackedByteArray get_data ( )
包含以字节为单位的音频数据。
注意:此属性需要有符号的 PCM8 数据。要将无符号的 PCM8 转换为有符号的 PCM8,需要从每个字节中减去 128。
Format format = 0
音频格式。取值见 Format 常量。
int loop_begin = 0
循环起始点(相对于样本开始的样本数)。如果 WAV 文件中存在此信息,则将自动导入。
int loop_end = 0
循环结束点(相对于样本开始的样本数)。如果 WAV 文件中存在此信息,则将自动导入。
LoopMode loop_mode = 0
循环模式。如果 WAV 文件中存在此信息,则将自动导入。取值请参阅 LoopMode 常量。
int mix_rate = 44100
混合这个音频的采样率。更高的数值需要更多的存储空间,但会带来更好的质量。
在游戏中,常用的采样率有 11025
、16000
、22050
、32000
、44100
、48000
。
根据奈奎斯特–香农采样定理,当超过 40000 赫兹时,人类的听觉没有质量上的差别(因为大多数人只能听到 ~20000 赫兹,往往更少)。如果你要使用语音等音高较低的声音,则可以使用 32000
或 22050
等较低的采样率,不会降低质量。
bool stereo = false
如果为 true
,则音频为立体声。
方法说明
Error save_to_wav ( String path )
将 AudioStreamWAV 作为 WAV 文件保存到 path
。无法保存 IMA ADPCM 格式的样本。
注意:如果缺少 .wav
扩展名,则会自动将其追加到 path
。
© 版权所有 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0). Revision b1c660f7
.
Built with Sphinx using a theme provided by Read the Docs.