class-description NEWS COMMUNITY STORE TUTORIALS SIGN UP LOGIN LOGOUT ROKOJORI NEWSLETTER SIGN UP LOGIN LOGOUT NEWS COMMUNITY STORE TUTORIALS TOGGLE FULLSCREEN VOLLBILD AN/AUS ObjectRefCountedResourceAudioStream AudioStreamWAV
Stores audio data loaded from WAV files.
AudioStreamWAV 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.
Enum Format<>():Enum

FORMAT_8_BITS:null = 0
8-bit PCM audio codec.


FORMAT_16_BITS:null = 1
16-bit PCM audio codec.


FORMAT_IMA_ADPCM:null = 2
Audio is lossily compressed as IMA ADPCM.


FORMAT_QOA:null = 3
Audio is lossily compressed as [url=https://qoaformat.org/]Quite OK Audio[/url].
Enum LoopMode<>():Enum

LOOP_DISABLED:null = 0
Audio does not loop.


LOOP_FORWARD:null = 1
Audio loops the data between loop_begin and loop_end, playing forward only.


LOOP_PINGPONG:null = 2
Audio loops the data between loop_begin and loop_end, playing back and forth.


LOOP_BACKWARD:null = 3
Audio loops the data between loop_begin and loop_end, playing backward only.
set get PackedByteArray data<>():PackedByteArray set get
Contains the audio data in bytes.

Note: If format is set to FORMAT_8_BITS, this property expects signed 8-bit PCM data. To convert from unsigned 8-bit PCM, subtract 128 from each byte.
Note: If format is set to FORMAT_QOA, this property expects data from a full QOA file.
set get int format<>():int set get
Audio format.

set get int loop_begin<>():int set get
The loop start point (in number of samples, relative to the beginning of the stream).

set get int loop_end<>():int set get
The loop end point (in number of samples, relative to the beginning of the stream).

set get int loop_mode<>():int set get
The loop mode.

set get int mix_rate<>():int set get
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 [url=https://en.wikipedia.org/wiki/Nyquist%E2%80%93Shannon_sampling_theorem]Nyquist-Shannon sampling theorem[/url], 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.
set get bool stereo<>():bool set get
If true, audio is stereo.

set get Dictionary tags<>():Dictionary set get
Contains user-defined tags if found in the WAV data.

Commonly used tags include title, artist, album, tracknumber, and date (date does not have a standard date format).
Note: No tag is guaranteed to be present in every file, so make sure to account for the keys not always existing.
Note: Only WAV files using a LIST chunk with an identifier of INFO to encode the tags are currently supported.
AudioStreamWAV load_from_buffer<>( PackedByteArray stream_data=, stream_data:PackedByteArray=, Dictionary options={}, options:Dictionary={}, ):AudioStreamWAV
Creates a new AudioStreamWAV instance from the given buffer. The buffer must contain WAV data.

The keys and values of options match the properties of ResourceImporterWAV. The usage of options is identical to [method AudioStreamWAV.load_from_file].
AudioStreamWAV load_from_file<>( String path=, path:String=, Dictionary options={}, options:Dictionary={}, ):AudioStreamWAV
Creates a new AudioStreamWAV instance from the given file path. The file must be in WAV format.

The keys and values of options match the properties of ResourceImporterWAV.
Example: Load the first file dropped as a WAV and play it:
@onready var audio_player = $AudioStreamPlayer func _ready(): get_window().files_dropped.connect(_on_files_dropped) func _on_files_dropped(files): if files[0].get_extension() == "wav": audio_player.stream = AudioStreamWAV.load_from_file(files[0], { "force/max_rate": true, "force/max_rate_hz": 11025 }) audio_player.play()
int save_to_wav<>( String path=, path:String=, ):int
Saves the AudioStreamWAV as a WAV file to path. Samples with IMA ADPCM or Quite OK Audio formats can't be saved.

Note: A .wav extension is automatically appended to path if it is missing.



All social media brands are registrated trademarks and belong to their respective owners.





CONTACT IMPRINT TERMS OF USE PRIVACY © ROKOROJI ® 2021 rokojori.com
CONTACT IMPRINT TERMS OF USE PRIVACY © ROKOROJI ® 2021 rokojori.com
We are using cookies on this site. Read more... Wir benutzen Cookies auf dieser Seite. Mehr lesen...