Inherits: AudioStream < Resource < Reference < Object

Stores audio data loaded from WAV files.


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.


PackedByteArray data PackedByteArray(  )
Format format 0
int loop_begin 0
int loop_end 0
LoopMode loop_mode 0
int mix_rate 44100
bool stereo false


Error save_to_wav ( String path )


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

Default PackedByteArray(  )
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.

Default 0
Setter set_format(value)
Getter get_format()

Audio format. See Format constants for values.

  • int loop_begin
Default 0
Setter set_loop_begin(value)
Getter get_loop_begin()

Loop start in bytes.

Default 0
Setter set_loop_end(value)
Getter get_loop_end()

Loop end in bytes.

Default 0
Setter set_loop_mode(value)
Getter get_loop_mode()

Loop mode. See LoopMode constants for values.

Default 44100
Setter set_mix_rate(value)
Getter get_mix_rate()

The sample rate for mixing this audio.

Default false
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.