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.

AudioEffectSpectrumAnalyzer

繼承: AudioEffect < Resource < RefCounted < Object

Creates an AudioEffectInstance which performs frequency analysis and exposes results to be accessed in real-time.

說明

Calculates a Fourier Transform of the audio signal. This effect does not alter the audio. Can be used for creating real-time audio visualizations, like a spectrogram.

This resource configures an AudioEffectSpectrumAnalyzerInstance, which performs the actual analysis at runtime. An instance should be obtained with AudioServer.get_bus_effect_instance() to make use of this effect.

教學

屬性

float

buffer_length

2.0

FFTSize

fft_size

2


列舉

enum FFTSize: 🔗

FFTSize FFT_SIZE_256 = 0

使用 256 個取樣點進行快速傅立葉轉換。延遲最低,但長時間穩定性最差。

FFTSize FFT_SIZE_512 = 1

使用 512 個取樣點進行快速傅立葉轉換。延遲低,但長時間穩定性較差。

FFTSize FFT_SIZE_1024 = 2

使用 1024 個取樣點進行快速傅立葉轉換。延遲與穩定性折衷。

FFTSize FFT_SIZE_2048 = 3

使用 2048 個取樣點進行快速傅立葉轉換。延遲高,但穩定。

FFTSize FFT_SIZE_4096 = 4

使用 4096 個取樣點進行快速傅立葉轉換。延遲最高,但穩定性最佳。

FFTSize FFT_SIZE_MAX = 5

代表 FFTSize 列舉的大小。


屬性說明

float buffer_length = 2.0 🔗

  • void set_buffer_length(value: float)

  • float get_buffer_length()

The length of the buffer to keep, in seconds. Higher values keep data around for longer, but require more memory. Value can range from 0.1 to 4.


FFTSize fft_size = 2 🔗

快速傅立葉轉換緩衝區大小。值越高頻譜分析隨時間越平滑,但延遲也越大;突發振幅變化時此延遲特別明顯。