Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
AudioStreamWAV
Eredita: AudioStream < Resource < RefCounted < Object
Memorizza i dati audio caricati dai file WAV.
Descrizione
AudioStreamWAV memorizza i campioni audio caricati dai file WAV. Per riprodurre l'audio memorizzato, utilizza un AudioStreamPlayer (per audio non posizionale) o AudioStreamPlayer2D/AudioStreamPlayer3D (per audio posizionale). Il suono può essere ripetuto.
Questa classe può essere utilizzata anche per memorizzare dei dati audio PCM generati dinamicamente. Vedi anche AudioStreamGenerator per la generazione di audio procedurale.
Tutorial
Proprietà
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
Metodi
load_from_buffer(stream_data: PackedByteArray, options: Dictionary = {}) static |
|
load_from_file(path: String, options: Dictionary = {}) static |
|
save_to_wav(path: String) |
Enumerazioni
enum Format: 🔗
Format FORMAT_8_BITS = 0
Codec di audio PCM a 8 bit.
Format FORMAT_16_BITS = 1
Codec di audio PCM a 16 bit.
Format FORMAT_IMA_ADPCM = 2
L'audio è compresso con perdita di dati come IMA ADPCM.
Format FORMAT_QOA = 3
L'audio è compresso con perdita di dati come (Quite OK Audio).
enum LoopMode: 🔗
LoopMode LOOP_DISABLED = 0
L'audio non si ripete.
LoopMode LOOP_FORWARD = 1
L'audio si ripete tra loop_begin e loop_end, riproducendosi solo in avanti.
LoopMode LOOP_PINGPONG = 2
L'audio si ripete tra loop_begin e loop_end, riproducendosi avanti e indietro.
LoopMode LOOP_BACKWARD = 3
L'audio si ripete tra loop_begin e loop_end, riproducendosi solo all'indietro.
Descrizioni delle proprietà
PackedByteArray data = PackedByteArray() 🔗
void set_data(value: PackedByteArray)
PackedByteArray get_data()
Contiene i dati audio in byte.
Nota: Se format è impostato su FORMAT_8_BITS, questa proprietà si aspetta dati PCM a 8 bit con segno. Per convertire da PCM a 8 bit senza segno, sottrai 128 da ogni byte.
Nota: Se format è impostato su FORMAT_QOA, questa proprietà si aspetta dati da un file QOA completo.
Note: The returned array is copied and any changes to it will not update the original property value. See PackedByteArray for more details.
Formato audio.
Il punto iniziale del loop (in numero di campioni, relativo all'inizio del flusso).
Il punto finale del loop (in numero di campioni, relativo all'inizio del flusso).
La modalità di ripetizione.
La frequenza di campionamento per il mixaggio di questo audio. I valori elevati richiedono più spazio di archiviazione, ma risultano in una qualità migliore.
Nei giochi, le frequenze di campionamento comunemente in uso sono 11025, 16000, 22050, 32000, 44100 e 48000.
Secondo il Teorema del campionamento di Nyquist-Shannon, non vi è alcuna differenza di qualità per l'udito umano quando si superano i 40.000 Hz (poiché la maggior parte degli esseri umani può sentire solo fino a ~ 20.000 Hz, spesso meno). Se stai generando suoni dal tono più basso come le voci, le frequenze di campionamento più basse come 32000 o 22050 potrebbero essere usabili senza perdite di qualità.
Se true, l'audio è stereo.
Dictionary tags = {} 🔗
void set_tags(value: Dictionary)
Dictionary get_tags()
Contiene tag definiti dall'utente se presenti nei dati WAV.
I tag comunemente utilizzati includono title, artist, album, tracknumber e date (date non ha un formato di data standard).
Nota: Nessun tag è garantito a essere presente in ogni file, quindi assicurati di tenere conto di chiavi che non esistono sempre.
Nota: Attualmente sono supportati solo i file WAV che utilizzano un blocco LIST con un identificatore di INFO per codificare i tag.
Descrizioni dei metodi
AudioStreamWAV load_from_buffer(stream_data: PackedByteArray, options: Dictionary = {}) static 🔗
Crea una nuova istanza di AudioStreamWAV dal buffer specificato. Il buffer deve contenere dati WAV.
Le chiavi e i valori di options corrispondono alle proprietà di ResourceImporterWAV. L'utilizzo di options è identico a load_from_file().
AudioStreamWAV load_from_file(path: String, options: Dictionary = {}) static 🔗
Crea una nuova istanza AudioStreamWAV dal percorso file specificato. Il file deve essere in formato WAV.
Le chiavi e i valori di options corrispondono alle proprietà di ResourceImporterWAV.
Esempio: Carica il primo file trascinato come WAV e riproducilo:
@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()
Error save_to_wav(path: String) 🔗
Salva l'AudioStreamWAV come file WAV al percorso path. I campioni con formati IMA ADPCM o Quite OK Audio non possono essere salvati.
Nota: Un'estensione .wav viene automaticamente aggiunta a path se manca.