Up to date

This page is up to date for Godot 4.2. If you still find outdated information, please open an issue.

ResourceImporterWAV

继承: ResourceImporter < RefCounted < Object

导入 WAV 音频文件,用于播放。

描述

WAV 是未经压缩的格式,能够提供比 Ogg Vorbis 和 MP3 更高的质量。解压时的 CPU 开销也最低。因此,即便在低端设备上,也能够同时播放大量的 WAV 声音。

教程

属性

int

compress/mode

0

int

edit/loop_begin

0

int

edit/loop_end

-1

int

edit/loop_mode

0

bool

edit/normalize

false

bool

edit/trim

false

bool

force/8_bit

false

bool

force/max_rate

false

float

force/max_rate_hz

44100

bool

force/mono

false


属性说明

int compress/mode = 0

导入时使用的压缩模式。

Disabled:导入音频数据,不进行压缩。得到的质量最高。

RAM (Ima-ADPCM):导入时进行快速有损压缩。CPU 开销较低,但质量比 Ogg Vorbis 甚至是 MP3 都显著更低。


int edit/loop_begin = 0

循环起始点,edit/loop_modeForwardPing-PongBackward 时使用。设置的是音频文件开始之后的秒数。


int edit/loop_end = -1

循环结束点,edit/loop_modeForwardPing-PongBackward 时使用。设置的是音频文件开始之后的秒数。-1 表示使用音频文件的末尾作为循环结束点。


int edit/loop_mode = 0

控制音频如何循环。导入时会自动从 WAV 元数据读取。

Disabled:不循环,即便元数据显示该文件应该在播放时循环。

Forward:标准音频循环。

Ping-Pong:正向播放音频,播放完以后再反向播放,再不断重复。原理类似于纹理的镜像重复。

Backward:逆向播放音频,播放完以后再从末尾开始循环播放。

注意:AudioStreamPlayer 中,循环音频到达音频文件末尾时不会发出 AudioStreamPlayer.finished 信号,因为音频会无限循环播放。


bool edit/normalize = false

如果为 true,则会将音频音量进行归一化,让最高音量等于 0 dB。启用后,音频听起来会更响,具体取决于原始的最高音量。


bool edit/trim = false

如果为 true,则会自动修剪掉音频开头和结尾处归一化后低于 -50 dB 的部分(见 edit/normalize)。这样就能够避免出现文件开头和结尾出现空白的情况,这种情况会占用不必要的文件大小,同时也会在播放时导致延迟。修剪时还会使用 500 个采样进行淡入/淡出,避免产生爆音。


bool force/8_bit = false

如果为 true,则会在源文件至少为 16 位时,强制让导入的音频使用 8 位量化。

通常不建议启用,因为 8 位量化会显著降低音质。如果你需要让文件大小更小,请考虑改用 Ogg Vorbis 或 MP3 音频。


bool force/max_rate = false

如果设成比 0 大的值,则会强制让音频的采样率降低至小于等于 force/max_rate_hz 的值。

可以让部分声音在不影响音质的同时降低文件大小,具体取决于声音的内容。详见《最佳实践》


float force/max_rate_hz = 44100

导入音频采样的频率限制(单位为赫兹)。仅当 force/max_ratetrue 时有效。


bool force/mono = false

如果为 true,则会在源文件为立体声时,强制让导入的音频使用单声道。将两个声道合并能够将文件大小降低 50%。