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.

AudioEffectFilter

继承: AudioEffect < Resource < RefCounted < Object

派生: AudioEffectBandLimitFilter, AudioEffectBandPassFilter, AudioEffectHighPassFilter, AudioEffectHighShelfFilter, AudioEffectLowPassFilter, AudioEffectLowShelfFilter, AudioEffectNotchFilter

滤波器的基类。请使用继承自该类的效果,而不要直接使用它。

描述

“滤波器”使用 cutoff_hz 作为频率阈值来控制频率的增益。滤波器有助于为不同的声音留出空间,并能创造出有趣的效果。

有多种不同类型的滤波器继承自该类:

搁架滤波器:AudioEffectLowShelfFilterAudioEffectHighShelfFilter

带通与陷波滤波器:AudioEffectBandPassFilterAudioEffectBandLimitFilterAudioEffectNotchFilter

低通与高通滤波器:AudioEffectLowPassFilterAudioEffectHighPassFilter

教程

属性

float

cutoff_hz

2000.0

FilterDB

db

0

float

gain

1.0

float

resonance

0.5


枚举

enum FilterDB: 🔗

FilterDB FILTER_6DB = 0

以每倍频程 6 分贝进行截止。一个倍频程是指 cutoff_hz 以上两倍的频率,或 cutoff_hz 以下一半的频率。

FilterDB FILTER_12DB = 1

以每倍频程 12 分贝进行截止。一个倍频程是指 cutoff_hz 以上两倍的频率,或 cutoff_hz 以下一半的频率。

FilterDB FILTER_18DB = 2

以每倍频程 18 分贝进行截止。一个倍频程是指 cutoff_hz 以上两倍的频率,或 cutoff_hz 以下一半的频率。

FilterDB FILTER_24DB = 3

以每倍频程 24 分贝进行截止。一个倍频程是指 cutoff_hz 以上两倍的频率,或 cutoff_hz 以下一半的频率。


属性说明

float cutoff_hz = 2000.0 🔗

  • void set_cutoff(value: float)

  • float get_cutoff()

该滤波器的频率阈值,单位为 Hz。取值范围为 1 至 20500。


FilterDB db = 0 🔗

截止曲线的陡峭程度,以每倍频程(高于 cutoff_hz 频率的两倍,或低于 cutoff_hz 频率的一半)分贝为单位,也称为滤波器的“阶数”。阶数越高,截止曲线越陡峭。


float gain = 1.0 🔗

受该滤波器影响的频率的增益。该属性仅适用于 AudioEffectLowShelfFilterAudioEffectHighShelfFilter。取值范围为 0 到 4。


float resonance = 0.5 🔗

  • void set_resonance(value: float)

  • float get_resonance()

位于 cutoff_hz 频率阈值处或紧邻该处的增益。取值范围为 0 到 1。

其具体行为取决于所选的滤波器类型:

  • 对于搁架滤波器,它通过提升紧邻 cutoff_hz 频率处的频段并衰减另一侧的频段,从而起到增强或抑制效果。

  • 对于带通和陷波滤波器,它会拓宽或收窄滤波器在 cutoff_hz 频率阈值处的带宽。

  • 对于低通/高通滤波器,它会提升或衰减在 cutoff_hz 频率阈值处的频率。