AudioEffect Struct

AudioEffect 结构存储音频效果使用的参数。您可以更改这些值以实时调整效果。

这个结构必须用audio_effect_create 函数创建。该结构中可用的参数取决于你传递给该函数的音频效果类型(见 AudioEffectType Enum)

注意这是一个内置结构,因此GameMaker可以更好地控制其内容。这意味着它可能包含一些由 GameMaker 创建的额外的、无法访问的变量,并且如果分配了无效值,某些值可能会自动更改。

注意所有增益参数都是线性增益,范围从 0 到无穷大;从 0 到 1 的值表示增益减少,从 1 到无穷大的值表示增益增加。可以使用lin_to_dbdb_to_lin将它们相互转换为 dB。

这种类型的所有结构都有一个typebypass属性。 所有其他属性都是特定于某些类型的效果。

下面是一个结构成员的列表,取决于创建的效果类型。

混响(AudioEffectType.Reverb1)

变量类型描述
typeAudioEffectType Enum一个只读属性,用于存储本结构中的音频效果类型。 它被设置为 AudioEffectType.Reverb1 用于混响。
bypassBoolean是否应绕过(忽略)效果。
sizeReal空间的大小[范围:0.0 - 1.0]

较大的尺寸意味着更多的反射和更长的混响。
dampReal较高频率应衰减的量 [范围:0.0 - 1.0]。
mixReal输出中原始/混响信号的比例[范围:0.0 - 1.0]。

值 0.0 表示 100% 的原始信号,值 1.0 表示 100% 的混响信号。值为 0.5 会产生 50% 的原始信号和 50% 的混响信号。

延迟 (AudioEffectType.Delay)

变量类型描述
typeAudioEffectType Enum一个只读属性,用于存储本结构中的音频效果类型。 它被设置为 AudioEffectType.Delay 用于延迟
bypassBoolean是否应绕过(忽略)效果。
timeReal延迟的长度(以秒为单位)。
feedbackReal反馈到延迟线的延迟信号的比例[范围:0.0 - 1.0]。
mixReal输出中原始/延迟信号的比例[范围:0.0 - 1.0]。

值 0.0 表示 100% 的原始信号,值 1.0 表示 100% 的延迟信号。值为 0.5 会产生 50% 的原始信号和 50% 的延迟信号。

失真 (AudioEffectType.Bitcrusher)

变量类型描述
typeAudioEffectType Enum一个只读属性,用于存储本结构中的音频效果类型。 它被设置为 AudioEffectType.Bitcrusher 的失真
bypassBoolean是否应绕过(忽略)效果。
gainReal输入增益进入效果。此阶段之后直接有一个硬限幅器(限幅为±1.0)。
factorReal原始信号下采样的因子 [范围:0.0 - 100.0]。

该因子向下舍入为整数。
resolutionReal信号重新采样的位深度 [范围:1.0 - 16.0]。

该值向下舍入为整数。
mixReal输出中原始/失真信号的比例[范围:0.0 - 1.0]。

值 0.0 表示 100% 的原始信号,值 1.0 表示 100% 的失真信号。值为 0.5 会产生 50% 的原始信号和 50% 的失真信号。

低通滤波器(AudioEffectType.LPF2)

变量类型描述
typeAudioEffectType Enum一个只读属性,用于存储本结构中的音频效果类型。 它被设置为 AudioEffectType.LPF2 用于LPF。
bypassBoolean是否应绕过(忽略)效果。
cutoffReal滤波器的截止频率。高于截止频率的频率将被衰减。
qReal滤波器的质量系数 [范围: 1.0 - 100.0].

这是一个无尺寸的参数,表示频率在截止点附近的峰值(增益)程度。 数值越大,峰值越大。

高通滤波器 (AudioEffectType.HPF2)

变量类型描述
typeAudioEffectType Enum一个只读属性,用于存储本结构中的音频效果类型。 它被设置为 AudioEffectType.HPF2 用于HPF。
bypassBoolean是否应绕过(忽略)效果。
cutoffReal滤波器的截止频率。低于截止频率的频率将被衰减。
qReal滤波器的质量系数 [范围: 1.0 - 100.0].

这是一个无尺寸的参数,表示频率在截止点附近的峰值(增益)程度。 数值越大,峰值越大。

增益 (AudioEffectType.Gain)

变量类型描述
typeAudioEffectType Enum一个只读属性,用于存储本结构中的音频效果类型。 它被设置为 AudioEffectType.Gain 的Gain。
bypassBoolean是否应绕过(忽略)效果。
gainReal应用于输入信号的增益值。

颤音 (AudioEffectType.Tremolo)

变量类型描述
typeAudioEffectType Enum存储此结构中存储的音频效果类型的只读属性。对于颤音,它设置为 AudioEffectType.Tremolo 。
bypassBoolean是否应绕过(忽略)效果。
rateReal调制增益的 LFO 的频率 (0.0-20.0 赫兹)
intensityReal应由 LFO 调制的输入信号的比例 (0.0-1.0)。换句话说,受 LFO 影响的是信号 / 样本的幅度的比例 (或分数)。
offsetReal应由 LFO 调制的输入信号的比例 (0.0-1.0)。换句话说,受 LFO 影响的是信号 / 样本的幅度的比例 (或分数)。
shapeAudioLFOType EnumLFO 应输出的波形形状。

EQ (AudioEffectType.EQ)

变量类型描述
typeAudioEffectType Enum一个只读属性,用于存储此结构中存储的音频效果的类型。对于 EQ,它设置为AudioEffectType.EQ
bypassBoolean是否应绕过(忽略)效果。
locutAudioEffect StructAudioEffectType.HPF2类型的过滤器。
loshelfAudioEffect StructAudioEffectType.LoShelf类型的过滤器。
eq1AudioEffect StructAudioEffectType.PeakEQ类型的过滤器。
eq2AudioEffect StructAudioEffectType.PeakEQ类型的过滤器。
eq3AudioEffect StructAudioEffectType.PeakEQ类型的过滤器。
eq4AudioEffect StructAudioEffectType.PeakEQ类型的过滤器。
hishelfAudioEffect StructAudioEffectType.HiShelf类型的过滤器。
hicutAudioEffect StructAudioEffectType.LPF2类型的过滤器。

PeakEQ (AudioEffectType.PeakEQ)

变量类型描述
typeAudioEffectType Enum一个只读属性,用于存储此结构中存储的音频效果的类型。对于 Peak EQ Filter,它设置为AudioEffectType.PeakEQ
bypassBoolean是否应绕过(忽略)效果。
freqReal滤波器的频率(以 Hz 为单位)[范围:10 - 20,000]*。这表示峰值的中心频率。

注意*上限为 20,000 或音频设备采样率的一半,以较低者为准。
qReal滤波器的品质因数[范围:1.0 - 100.0]。这是一个无量纲参数,可缩小所创建的峰值,从而影响中心频率周围较小范围的频率。值越大,峰越窄。
gainReal应用于中心频率的线性增益[范围:0.0 - inf]。中心频率周围的频率也会应用增益,该增益会根据品质因数和距中心频率的距离而降低。增益低于 1 表示音量减小。

HiShelf (AudioEffectType.HiShelf)

变量类型描述
typeAudioEffectType Enum一个只读属性,用于存储此结构中存储的音频效果的类型。对于 HiShelf 过滤器,它设置为AudioEffectType.HiShelf
bypassBoolean是否应绕过(忽略)效果。
freqReal滤波器的频率(以 Hz 为单位)[范围:10 - 20,000]*。这表示架子坡度的中点。

高于此值的频率将应用恒定增益。

注意*上限为 20,000 或音频的一半设备的采样率,以较低者为准。
qReal滤波器的品质因数[范围:1.0 - 100.0]。这是一个无量纲参数,它增加了滤波器斜率的陡度,但代价是在架子斜率顶部周围的频率处产生一些共振。值越大,斜率越陡,共振越大。
gainReal应用于架子中频率的线性增益[范围 0.0 - inf]。增益低于 1 表示音量减小。

LoShelf (AudioEffectType.LoShelf)

变量类型描述
typeAudioEffectType Enum一个只读属性,用于存储此结构中存储的音频效果的类型。对于 LoShelf 过滤器,它设置为AudioEffectType.LoShelf
bypassBoolean是否应绕过(忽略)效果。
freqReal滤波器的频率(以 Hz 为单位)[范围:10 - 20,000]*。这表示架子坡度的中点。

低于此值的频率将应用恒定增益。

注意*上限为 20,000 或音频的一半设备的采样率,以较低者为准。
qReal滤波器的品质因数[范围:1.0 - 100.0]。这是一个无量纲参数,它会增加滤波器斜率的陡度,但代价是在架子斜率顶部附近的频率处产生一些共振。值越大,斜率越陡,共振越大。
gainReal应用于架子中频率的线性增益[范围 0.0 - inf]。增益低于 1 表示音量减小。

Compressor (AudioEffectType.Compressor)

变量类型描述
typeAudioEffectType Enum一个只读属性,用于存储此结构中存储的音频效果的类型。它设置为AudioEffectType.Compressor以实现压缩器效果。
bypassBoolean是否应绕过(忽略)效果。
ingainReal应用于输入信号的增益标量 [范围:0 - inf]。这允许将音频推入压缩阈值。
thresholdReal幅度级别,高于该级别压缩器将开始应用增益降低 [范围:0.001 - 1]。
ratioReal超过阈值的音频被减少的比率 [范围:1 - inf]。应用的压缩比为ratio : 1
attackReal压缩器在压缩高于阈值的音频时的响应能力(以秒为单位)[范围:0.001 - 0.1]。
releaseReal压缩器停止压缩低于阈值的音频的响应能力(以秒为单位)[范围:0.01 - 1]。
outgainReal应用于输出信号的增益标量 [范围:0 - inf]。这允许补偿由压缩过程引起的整体电平降低。