AudioStreamSample
Inherits: AudioStream < Resource < Reference < Object
Stores audio data loaded from WAV files.
Description
AudioStreamSample stores sound samples loaded from WAV files. To play the stored sound, use an AudioStreamPlayer (for non-positional audio) or AudioStreamPlayer2D/AudioStreamPlayer3D (for positional audio). The sound can be looped.
This class can also be used to store dynamically-generated PCM audio data. See also AudioStreamGenerator for procedural audio generation.
Properties
| ||
| ||
| ||
| ||
| ||
| ||
|
Methods
save_to_wav ( String path ) |
Enumerations
enum Format:
FORMAT_8_BITS = 0 —- 8-bit audio codec.
FORMAT_16_BITS = 1 —- 16-bit audio codec.
FORMAT_IMA_ADPCM = 2 —- Audio is compressed using IMA ADPCM.
enum LoopMode:
LOOP_DISABLED = 0 —- Audio does not loop.
LOOP_FORWARD = 1 —- Audio loops the data between loop_begin and loop_end, playing forward only.
LOOP_PING_PONG = 2 —- Audio loops the data between loop_begin and loop_end, playing back and forth.
LOOP_BACKWARD = 3 —- Audio loops the data between loop_begin and loop_end, playing backward only.
Property Descriptions
- PoolByteArray data
Default |
|
Setter | set_data(value) |
Getter | get_data() |
Contains the audio data in bytes.
Note: This property expects signed PCM8 data. To convert unsigned PCM8 to signed PCM8, subtract 128 from each byte.
- Format format
Default |
|
Setter | set_format(value) |
Getter | get_format() |
Audio format. See Format constants for values.
- int loop_begin
Default |
|
Setter | set_loop_begin(value) |
Getter | get_loop_begin() |
The loop start point (in number of samples, relative to the beginning of the sample). This information will be imported automatically from the WAV file if present.
- int loop_end
Default |
|
Setter | set_loop_end(value) |
Getter | get_loop_end() |
The loop end point (in number of samples, relative to the beginning of the sample). This information will be imported automatically from the WAV file if present.
- LoopMode loop_mode
Default |
|
Setter | set_loop_mode(value) |
Getter | get_loop_mode() |
The loop mode. This information will be imported automatically from the WAV file if present. See LoopMode constants for values.
- int mix_rate
Default |
|
Setter | set_mix_rate(value) |
Getter | get_mix_rate() |
The sample rate for mixing this audio. Higher values require more storage space, but result in better quality.
In games, common sample rates in use are 11025
, 16000
, 22050
, 32000
, 44100
, and 48000
.
According to the Nyquist-Shannon sampling theorem, there is no quality difference to human hearing when going past 40,000 Hz (since most humans can only hear up to ~20,000 Hz, often less). If you are using lower-pitched sounds such as voices, lower sample rates such as 32000
or 22050
may be usable with no loss in quality.
- bool stereo
Default |
|
Setter | set_stereo(value) |
Getter | is_stereo() |
If true
, audio is stereo.
Method Descriptions
Saves the AudioStreamSample as a WAV file to path
. Samples with IMA ADPCM format can’t be saved.
Note: A .wav
extension is automatically appended to path
if it is missing.