:github_url: hide .. Generated automatically by doc/tools/makerst.py in Godot's source tree. .. DO NOT EDIT THIS FILE, but the AudioStreamSample.xml source instead. .. The source is found in doc/classes or modules//doc_classes. .. _class_AudioStreamSample: AudioStreamSample ================= **Inherits:** :ref:`AudioStream` **<** :ref:`Resource` **<** :ref:`Reference` **<** :ref:`Object` Stores audio data loaded from WAV files. Description ----------- AudioStreamSample stores sound samples loaded from WAV files. To play the stored sound, use an :ref:`AudioStreamPlayer` (for non-positional audio) or :ref:`AudioStreamPlayer2D`/:ref:`AudioStreamPlayer3D` (for positional audio). The sound can be looped. This class can also be used to store dynamically-generated PCM audio data. Properties ---------- +--------------------------------------------------+----------------------------------------------------------------+-------------------------+ | :ref:`PackedByteArray` | :ref:`data` | ``PackedByteArray( )`` | +--------------------------------------------------+----------------------------------------------------------------+-------------------------+ | :ref:`Format` | :ref:`format` | ``0`` | +--------------------------------------------------+----------------------------------------------------------------+-------------------------+ | :ref:`int` | :ref:`loop_begin` | ``0`` | +--------------------------------------------------+----------------------------------------------------------------+-------------------------+ | :ref:`int` | :ref:`loop_end` | ``0`` | +--------------------------------------------------+----------------------------------------------------------------+-------------------------+ | :ref:`LoopMode` | :ref:`loop_mode` | ``0`` | +--------------------------------------------------+----------------------------------------------------------------+-------------------------+ | :ref:`int` | :ref:`mix_rate` | ``44100`` | +--------------------------------------------------+----------------------------------------------------------------+-------------------------+ | :ref:`bool` | :ref:`stereo` | ``false`` | +--------------------------------------------------+----------------------------------------------------------------+-------------------------+ Methods ------- +---------------------------------------+-------------------------------------------------------------------------------------------------------------+ | :ref:`Error` | :ref:`save_to_wav` **(** :ref:`String` path **)** | +---------------------------------------+-------------------------------------------------------------------------------------------------------------+ Enumerations ------------ .. _enum_AudioStreamSample_Format: .. _class_AudioStreamSample_constant_FORMAT_8_BITS: .. _class_AudioStreamSample_constant_FORMAT_16_BITS: .. _class_AudioStreamSample_constant_FORMAT_IMA_ADPCM: 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_AudioStreamSample_LoopMode: .. _class_AudioStreamSample_constant_LOOP_DISABLED: .. _class_AudioStreamSample_constant_LOOP_FORWARD: .. _class_AudioStreamSample_constant_LOOP_PING_PONG: .. _class_AudioStreamSample_constant_LOOP_BACKWARD: enum **LoopMode**: - **LOOP_DISABLED** = **0** --- Audio does not loop. - **LOOP_FORWARD** = **1** --- Audio loops the data between :ref:`loop_begin` and :ref:`loop_end` playing forward only. - **LOOP_PING_PONG** = **2** --- Audio loops the data between :ref:`loop_begin` and :ref:`loop_end` playing back and forth. - **LOOP_BACKWARD** = **3** --- Audio loops the data between :ref:`loop_begin` and :ref:`loop_end` playing backward only. Property Descriptions --------------------- .. _class_AudioStreamSample_property_data: - :ref:`PackedByteArray` **data** +-----------+-------------------------+ | *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. ---- .. _class_AudioStreamSample_property_format: - :ref:`Format` **format** +-----------+-------------------+ | *Default* | ``0`` | +-----------+-------------------+ | *Setter* | set_format(value) | +-----------+-------------------+ | *Getter* | get_format() | +-----------+-------------------+ Audio format. See :ref:`Format` constants for values. ---- .. _class_AudioStreamSample_property_loop_begin: - :ref:`int` **loop_begin** +-----------+-----------------------+ | *Default* | ``0`` | +-----------+-----------------------+ | *Setter* | set_loop_begin(value) | +-----------+-----------------------+ | *Getter* | get_loop_begin() | +-----------+-----------------------+ Loop start in bytes. ---- .. _class_AudioStreamSample_property_loop_end: - :ref:`int` **loop_end** +-----------+---------------------+ | *Default* | ``0`` | +-----------+---------------------+ | *Setter* | set_loop_end(value) | +-----------+---------------------+ | *Getter* | get_loop_end() | +-----------+---------------------+ Loop end in bytes. ---- .. _class_AudioStreamSample_property_loop_mode: - :ref:`LoopMode` **loop_mode** +-----------+----------------------+ | *Default* | ``0`` | +-----------+----------------------+ | *Setter* | set_loop_mode(value) | +-----------+----------------------+ | *Getter* | get_loop_mode() | +-----------+----------------------+ Loop mode. See :ref:`LoopMode` constants for values. ---- .. _class_AudioStreamSample_property_mix_rate: - :ref:`int` **mix_rate** +-----------+---------------------+ | *Default* | ``44100`` | +-----------+---------------------+ | *Setter* | set_mix_rate(value) | +-----------+---------------------+ | *Getter* | get_mix_rate() | +-----------+---------------------+ The sample rate for mixing this audio. ---- .. _class_AudioStreamSample_property_stereo: - :ref:`bool` **stereo** +-----------+-------------------+ | *Default* | ``false`` | +-----------+-------------------+ | *Setter* | set_stereo(value) | +-----------+-------------------+ | *Getter* | is_stereo() | +-----------+-------------------+ If ``true``, audio is stereo. Method Descriptions ------------------- .. _class_AudioStreamSample_method_save_to_wav: - :ref:`Error` **save_to_wav** **(** :ref:`String` path **)** 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.