AudioEffectCapture
Eredita: AudioEffect < Resource < RefCounted < Object
Cattura l'audio da un bus audio in tempo reale.
Descrizione
AudioEffectCapture è un AudioEffect che copia tutte gli audio frame dal bus di effetto audio associato nel suo buffer circolare interno.
Il codice dell'applicazione dovrebbe consumare questi audio frame da questo buffer circolare usando get_buffer() e processarlo come necessario, ad esempio per catturare i dati da un AudioStreamMicrophone, implementare effetti definiti dall'applicazione, o per trasmettere l'audio sulla rete. Quando si catturano i dati audio da un microfono, il formato dei campioni sarà stereo a 32 bit floating-point PCM.
A differenza di AudioEffectRecord, questo effetto restituisce solo i campioni audio grezzi invece di codificarli in un AudioStream.
Tutorial
Proprietà
|
Metodi
can_get_buffer(frames: int) const |
|
void |
|
get_buffer(frames: int) |
|
get_buffer_length_frames() const |
|
get_discarded_frames() const |
|
get_frames_available() const |
|
get_pushed_frames() const |
Descrizioni delle proprietà
Lunghezza del buffer circolare interno, in secondi. Impostare la lunghezza del buffer non avrà alcun effetto se già inizializzato.
Descrizioni dei metodi
bool can_get_buffer(frames: int) const 🔗
Restituisce true se almeno un determinato numero di frame audio (frames) sono disponibili per la lettura nel buffer circolare interno.
void clear_buffer() 🔗
Pulisce il buffer circolare interno.
Nota: Chiamare questo durante una cattura può causare la perdita di campioni che causa scoppiettii nella riproduzione.
PackedVector2Array get_buffer(frames: int) 🔗
Ottiene i prossimi campioni audio dal buffer circolare interno, basati sul numero frames.
Restituisce un PackedVector2Array contenente esattamente il numero fornito di campioni audio se disponibili, o un PackedVector2Array vuoto se solo i dati insufficienti erano disponibili.
I campioni sono valori PCM in virgola mobile con segno tra -1 e 1. Dovrai scalarli se vuoi utilizzarli come campioni interi da 8 o 16 bit. (v = 0x7fff * samples[0].x)
int get_buffer_length_frames() const 🔗
Restituisce la dimensione totale del buffer circolare interno in frame.
int get_discarded_frames() const 🔗
Restituisce il numero di audio frame scartati dal bus audio a causa della memoria piena del buffer.
int get_frames_available() const 🔗
Restituisce il numero di audio frame disponibili per la lettura usando get_buffer().
int get_pushed_frames() const 🔗
Restituisce il numero di audio frame inseriti dal bus audio.