Skip to main content

SHAPE_EQCOMP_CONTEXT

均衡器与压缩器(EQComp)上下文。

语法

成员

timestamp
类型:UINT32
读:上下文处理完成时的时间戳。 Reserved0
类型:UINT32
保留。 internalSaturate
类型:UINT32
读:如果 EQ/Comp 发生饱和,则为 1;否则为 0。 mixBufPeakMag
类型:UINT32
读:输出混音缓冲区的峰值幅度。 peakMag
类型:UINT32
读:输出的峰值幅度。 eqAB0
类型:UINT32
读/写:均衡器滤波器 A 的系数 b0。 eqAB1_L
类型:UINT32
读/写:均衡器滤波器 A 的系数 b1 的低 8 位。 eqAB1_H
类型:UINT32
读/写:均衡器滤波器 A 的系数 b1 的高 16 位。 eqAB2_L
类型:UINT32
读/写:均衡器滤波器 A 的系数 b2 的低 16 位。 eqAB2_H
类型:UINT32
读/写:均衡器滤波器 A 的系数 b2 的高 8 位。 eqAA1
类型:UINT32
读/写:均衡器滤波器 A 的系数 a1。 eqAA2
类型:UINT32
读/写:均衡器滤波器 A 的系数 a2。 eqBB0_L
类型:UINT32
读/写:均衡器滤波器 B 的系数 b0 的低 8 位。 eqBB0_H
类型:UINT32
读/写:均衡器滤波器 B 的系数 b0 的高 16 位。 eqBB1_L
类型:UINT32
读/写:均衡器滤波器 B 的系数 b1 的低 16 位。 eqBB1_H
类型:UINT32
读/写:均衡器滤波器 B 的系数 b1 的高 8 位。 eqBB2
类型:UINT32
读/写:均衡器滤波器 B 的系数 b2。 eqBA1
类型:UINT32
读/写:均衡器滤波器 B 的系数 a1。 eqBA2_L
类型:UINT32
读/写:均衡器滤波器 B 的系数 a2 的低 8 位。 eqBA2_H
类型:UINT32
读/写:均衡器滤波器 B 的系数 a2 的高 16 位。 eqCB0_L
类型:UINT32
读/写:均衡器滤波器 C 的系数 b0 的低 16 位。 eqCB0_H
类型:UINT32
读/写:均衡器滤波器 C 的系数 b0 的高 8 位。 eqCB1
类型:UINT32
读/写:均衡器滤波器 C 的系数 b1。 eqCB2
类型:UINT32
读/写:均衡器滤波器 C 的系数 b2。 eqCA1_L
类型:UINT32
读/写:均衡器滤波器 C 的系数 a1 的低 8 位。 eqCA1_H
类型:UINT32
读/写:均衡器滤波器 C 的系数 a1 的高 16 位。 eqCA2_L
类型:UINT32
读/写:均衡器滤波器 C 的系数 a2 的低 16 位。 eqCA2_H
类型:UINT32
读/写:均衡器滤波器 C 的系数 a2 的高 8 位。 Reserved1
类型:UINT32
保留。 eqAInputDelay0
类型:UINT32
读:左声道的输入延迟。 Reserved2
类型:UINT32
保留。 eqAInputDelay1
类型:UINT32
读:右声道的输入延迟。 Reserved
类型:UINT32
保留。 eqDelayElements2
类型:UINT32
读:延迟单元。 eqDelayElements3
类型:UINT32
读:延迟单元。 eqDelayElements4
类型:UINT32
读:延迟单元。 eqDelayElements5
类型:UINT32
读:延迟单元。 eqDelayElements6
类型:UINT32
读:延迟单元。 eqDelayElements7
类型:UINT32
读:延迟单元。 compInputLevel
类型:UINT32
读:为压缩器输入计算的 InputLevel,采用 u8.23 格式(-0x0000_0000 到 0x7FFF_FFFF)。整数部分的 8 位允许均衡器部分在进入压缩器之前具有最多 48 dB 的增益而不会削波。 compGainReduction
类型:UINT32
读:为压缩器计算的衰减,采用 u1.23 格式(-0x00_0000 到 0x80_0000)。这是一个线性乘数;值 0x40_0000 对应 0.5,即 -6 dB 增益或 6 dB 增益衰减。 Reserved4
类型:UINT32
保留。 compGain
类型:UINT32
读/写:当前的输出(补偿)增益值,采用 u3.13 格式(-0x0000 到 0xFFFF)。 Reserved5
类型:UINT32
保留。 eqAB0Target
类型:UINT32
读/写:均衡器滤波器 A 的目标系数 b0。 eqAB1Target_L
类型:UINT32
读/写:均衡器滤波器 A 的目标系数 b1 的低 8 位。 eqAB1Target_H
类型:UINT32
读/写:均衡器滤波器 A 的目标系数 b1 的高 16 位。 eqAB2Target_L
类型:UINT32
读/写:均衡器滤波器 A 的目标系数 b2 的低 16 位。 eqAB2Target_H
类型:UINT32
读/写:均衡器滤波器 A 的目标系数 b2 的高 8 位。 eqAA1Target
类型:UINT32
读/写:均衡器滤波器 A 的目标系数 a1。 eqAA2Target
类型:UINT32
读/写:均衡器滤波器 A 的目标系数 a2。 eqBB0Target_L
类型:UINT32
读/写:均衡器滤波器 B 的目标系数 b0 的低 8 位。 eqBB0Target_H
类型:UINT32
读/写:均衡器滤波器 B 的目标系数 b0 的高 16 位。 eqBB1Target_L
类型:UINT32
读/写:均衡器滤波器 B 的目标系数 b1 的低 16 位。 eqBB1Target_H
类型:UINT32
读/写:均衡器滤波器 B 的目标系数 b1 的高 8 位。 eqBB2Target
类型:UINT32
读/写:均衡器滤波器 B 的目标系数 b2。 eqBA1Target
类型:UINT32
读/写:均衡器滤波器 B 的目标系数 a1。 eqBA2Target_L
类型:UINT32
读/写:均衡器滤波器 B 的目标系数 a2 的低 8 位。 eqBA2Target_H
类型:UINT32
读/写:均衡器滤波器 B 的目标系数 a2 的高 16 位。 eqCB0Target_L
类型:UINT32
读/写:均衡器滤波器 C 的目标系数 b0 的低 16 位。 eqCB0Target_H
类型:UINT32
读/写:均衡器滤波器 C 的 EQ 目标系数 b0 的高 8 位。 eqCB1Target
类型:UINT32
读/写:均衡器滤波器 C 的目标系数 b1。 eqCB2Target
类型:UINT32
读/写:均衡器滤波器 C 的目标系数 b2。 eqCA1Target_L
类型:UINT32
读/写:均衡器滤波器 C 的目标系数 a1 的低 8 位。 eqCA1Target_H
类型:UINT32
读/写:均衡器滤波器 C 的目标系数 a1 的高 16 位。 eqCA2Target_L
类型:UINT32
读/写:均衡器滤波器 C 的目标系数 a2 的低 16 位。 eqCA2Target_H
类型:UINT32
读/写:均衡器滤波器 C 的目标系数 a2 的高 8 位。 Reserved6
类型:UINT32
保留。 compRelease
类型:UINT32
写:压缩器的释放速率,采用 u1.23 格式(-0x00_0001 到 0x80_0000)。这是压缩器/扩展器处于释放阶段时,每个采样周期 compGainReduction 递增的量。如果设置了 compLogGain,compRelease 将向右移位,使第 23 位与 compGainReduction 当前值的最高有效位对齐;这会使递增变为指数式。值 0 对该成员无效,将导致操作不正确。 Reserved7
类型:UINT32
保留。 compExpand
类型:UINT32
写:请参阅 SHAPE_EQCOMP_EXPAND_MODE。 compLogGain
类型:UINT32
写:请参阅 SHAPE_EQCOMP_LOG_GAIN。这会使启动和释放阶段以指数方式递减和递增增益衰减,以在对数空间中呈线性变化;也就是说,在 dB 单位下呈线性。 compSidechainMode
类型:UINT32
写:请参阅 SHAPE_EQCOMP_SIDECHAIN_MODE。 compMode
类型:UINT32
写:请参阅 SHAPE_EQCOMP_COMPRESSOR_MODE。 compEnable
类型:UINT32
写:1 == 启用,0 == 禁用。 compThreshold
类型:UINT32
写:阈值,采用 u1.23 格式(-0x00_0000 到 0x80_0000)。 Reserved8
类型:UINT32
保留。 compAttack
类型:UINT32
写:压缩器的启动速率,采用 u1.23 格式(-0x00_0001 到 0x80_0000)。这是压缩器/扩展器处于启动阶段时,每个采样周期 compGainReduction 递减的量。如果设置了 compLogGain,compAttack 将向右移位,使第 23 位与 compGainReduction 当前值的最高有效位对齐;这会使递增变为指数式。值 0 对该成员无效,将导致操作不正确。 Reserved9
类型:UINT32
保留。 compOneOverRatio
类型:UINT32
写:压缩器的斜率,采用 u1.15 格式(-0x0000 到 0x8000)。这是压缩器传统比率控制的倒数。对于 1:1 的比率,将 compOneOverRatio 设置为 0x8000。对于 4:1 的比率,将 compOneOverRatio 设置为 0x2000。值 0x0000 表示比率为无穷大:1。 compGainTarget
类型:UINT32
写:用户可设置的输出(补偿)增益目标值。在一个音频帧内,增益将从当前值渐变至 compGainTarget,采用 u3.13 格式(-0x0000 到 0xFFFF)。

注解

此结构包含均衡器(EQ)和压缩器的上下文。可扩展硬件音频处理引擎(SHAPE)每音频帧最多可处理 512 个 EQComp 上下文。 有关详细信息,请参阅 SHAPE 概述 中的 均衡与压缩

要求

头文件: shapeeqcompcontext.h 支持的平台: XBOX One 系列主机和 XBOX Series 主机

概念文档

另请参阅

ShapeEqCompContext
最后修改于 2026年8月24日