Skip to main content

SHAPE_EQCOMP_CONTEXT

The equalizer and compressor (EQComp) context.

Syntax

Members

timestamp
Type: UINT32
Read: Time stamp for the completion of context processing. Reserved0
Type: UINT32
Reserved. internalSaturate
Type: UINT32
Read: 1 if EQ/Comp is saturated; 0 otherwise. mixBufPeakMag
Type: UINT32
Read: Peak magnitude of the output mix buffer. peakMag
Type: UINT32
Read: Peak magnitude of the output. eqAB0
Type: UINT32
Read/Write: Coefficient b0 for equalizer filter A. eqAB1_L
Type: UINT32
Read/Write: Coefficient b1 for equalizer filter A, low 8 bits. eqAB1_H
Type: UINT32
Read/Write: Coefficient b1 for equalizer filter A, high 16 bits. eqAB2_L
Type: UINT32
Read/Write: Coefficient b2 for equalizer filter A, low 16 bits. eqAB2_H
Type: UINT32
Read/Write: Coefficient b2 for equalizer filter A, high 8 bits. eqAA1
Type: UINT32
Read/Write: Coefficient a1 for equalizer filter A. eqAA2
Type: UINT32
Read/Write: Coefficient a2 for equalizer filter A. eqBB0_L
Type: UINT32
Read/Write: Coefficient b0 for equalizer filter B, low 8 bits. eqBB0_H
Type: UINT32
Read/Write: Coefficient b0 for equalizer filter B, high 16 bits. eqBB1_L
Type: UINT32
Read/Write: Coefficient b1 for equalizer filter B, low 16 bits. eqBB1_H
Type: UINT32
Read/Write: Coefficient b1 for equalizer filter B, high 8 bits. eqBB2
Type: UINT32
Read/Write: Coefficient b2 for equalizer filter B. eqBA1
Type: UINT32
Read/Write: Coefficient a1 for equalizer filter B. eqBA2_L
Type: UINT32
Read/Write: Coefficient a2 for equalizer filter B, low 8 bits. eqBA2_H
Type: UINT32
Read/Write: Coefficient a2 for equalizer filter B, high 16 bits. eqCB0_L
Type: UINT32
Read/Write: Coefficient b0 for equalizer filter C, low 16 bits. eqCB0_H
Type: UINT32
Read/Write: Coefficient b0 for equalizer filter C, high 8 bits. eqCB1
Type: UINT32
Read/Write: Coefficient b1 for equalizer filter C. eqCB2
Type: UINT32
Read/Write: Coefficient b2 for equalizer filter C. eqCA1_L
Type: UINT32
Read/Write: Coefficient a1 for equalizer filter C, low 8 bits. eqCA1_H
Type: UINT32
Read/Write: Coefficient a1 for equalizer filter C, high 16 bits. eqCA2_L
Type: UINT32
Read/Write: Coefficient a2 for equalizer filter C, low 16 bits. eqCA2_H
Type: UINT32
Read/Write: Coefficient a2 for equalizer filter C, high 8 bits. Reserved1
Type: UINT32
Reserved. eqAInputDelay0
Type: UINT32
Read: Input delay for left channel. Reserved2
Type: UINT32
Reserved. eqAInputDelay1
Type: UINT32
Read: Input delay for right channel. Reserved
Type: UINT32
Reserved. eqDelayElements2
Type: UINT32
Read: Delay element. eqDelayElements3
Type: UINT32
Read: Delay element. eqDelayElements4
Type: UINT32
Read: Delay element. eqDelayElements5
Type: UINT32
Read: Delay element. eqDelayElements6
Type: UINT32
Read: Delay element. eqDelayElements7
Type: UINT32
Read: Delay element. compInputLevel
Type: UINT32
Read: InputLevel calculated for the input to the compressor, in u8.23 format (-0x0000_0000 to 0x7FFF_FFFF). The eight integer bits allow the equalizer section to have a gain of up to 48 dB prior to the compressor, without clipping. compGainReduction
Type: UINT32
Read: Calculated attenuation for the compressor, in u1.23 format (-0x00_0000 to 0x80_0000). This is a linear multiplier; a value of 0x40_0000, which corresponds to 0.5, is a gain of -6 dB or a gain reduction of 6 dB. Reserved4
Type: UINT32
Reserved. compGain
Type: UINT32
Read/Write: Current output (makeup) gain value, in u3.13 format (-0x0000 to 0xFFFF). Reserved5
Type: UINT32
Reserved. eqAB0Target
Type: UINT32
Read/Write: Coefficient target b0 for equalizer filter A. eqAB1Target_L
Type: UINT32
Read/Write: Coefficient target b1 for equalizer filter A, low 8 bits. eqAB1Target_H
Type: UINT32
Read/Write: Coefficient target b1 for equalizer filter A, high 16 bits. eqAB2Target_L
Type: UINT32
Read/Write: Coefficient target b2 for equalizer filter A, low 16 bits. eqAB2Target_H
Type: UINT32
Read/Write: Coefficient target b2 for equalizer filter A, high 8 bits. eqAA1Target
Type: UINT32
Read/Write: Coefficient target a1 for equalizer filter A. eqAA2Target
Type: UINT32
Read/Write: Coefficient target a2 for equalizer filter A. eqBB0Target_L
Type: UINT32
Read/Write: Coefficient target b0 for equalizer filter B, low 8 bits. eqBB0Target_H
Type: UINT32
Read/Write: Coefficient target b0 for equalizer filter B, high 16 bits. eqBB1Target_L
Type: UINT32
Read/Write: Coefficient target b1 for equalizer filter B, low 16 bits. eqBB1Target_H
Type: UINT32
Read/Write: Coefficient target b1 for equalizer filter B, high 8 bits. eqBB2Target
Type: UINT32
Read/Write: Coefficient target b2 for equalizer filter B. eqBA1Target
Type: UINT32
Read/Write: Coefficient target a1 for equalizer filter B. eqBA2Target_L
Type: UINT32
Read/Write: Coefficient target a2 for equalizer filter B, low 8 bits. eqBA2Target_H
Type: UINT32
Read/Write: Coefficient target a2 for equalizer filter B, high 16 bits. eqCB0Target_L
Type: UINT32
Read/Write: Coefficient target b0 for equalizer filter C, low 16 bits. eqCB0Target_H
Type: UINT32
Read/Write: EQCoefficient target b0 for equalizer filter C, high 8 bits. eqCB1Target
Type: UINT32
Read/Write: Coefficient target b1 for equalizer filter C. eqCB2Target
Type: UINT32
Read/Write: Coefficient target b2 for equalizer filter C. eqCA1Target_L
Type: UINT32
Read/Write: Coefficient target a1 for equalizer filter C, low 8 bits. eqCA1Target_H
Type: UINT32
Read/Write: Coefficient target a1 for equalizer filter C, high 16 bits. eqCA2Target_L
Type: UINT32
Read/Write: Coefficient target a2 for equalizer filter C, low 16 bits. eqCA2Target_H
Type: UINT32
Read/Write: Coefficient target a2 for equalizer filter C, high 8 bits. Reserved6
Type: UINT32
Reserved. compRelease
Type: UINT32
Write: Release rate for the compressor, in u1.23 format (-0x00_0001 to 0x80_0000). This is the amount by which compGainReduction is incremented for each sample period when the compressor/expander is in the release phase. If compLogGain is set, compRelease is shifted right to align bit 23 with the most significant bit of the current value of compGainReduction; this causes the increment to be exponential. The value 0 is not valid for this member and will cause incorrect operation. Reserved7
Type: UINT32
Reserved. compExpand
Type: UINT32
Write: Refer to SHAPE_EQCOMP_EXPAND_MODE. compLogGain
Type: UINT32
Write: Refer to SHAPE_EQCOMP_LOG_GAIN. This causes the attack and release phases to decrement and increment the gain reduction exponentially, to make it linear in logarithmic space; that is, linear in dB. compSidechainMode
Type: UINT32
Write: Refer to SHAPE_EQCOMP_SIDECHAIN_MODE. compMode
Type: UINT32
Write: Refer to SHAPE_EQCOMP_COMPRESSOR_MODE. compEnable
Type: UINT32
Write: 1 == enabled, 0 == disabled. compThreshold
Type: UINT32
Write: Threshold value, in u1.23 format (-0x00_0000 to 0x80_0000). Reserved8
Type: UINT32
Reserved. compAttack
Type: UINT32
Write: Attack rate for the compressor, in u1.23 format (-0x00_0001 to 0x80_0000). This is the amount by which compGainReduction is decremented for each sample period when the compressor/expander is in the attack phase. If compLogGain is set, compAttack is shifted right to align bit 23 with the most significant bit of the current value of compGainReduction; this causes the increment to be exponential. The value 0 is not valid for this member and will cause incorrect operation. Reserved9
Type: UINT32
Reserved. compOneOverRatio
Type: UINT32
Write: Slope for the compressor, in u1.15 format (-0x0000 to 0x8000). This is the reciprocal of the traditional ratio control on compressors. For a ratio of 1:1, set compOneOverRatio to 0x8000. For a ratio of 4:1, set compOneOverRatio to 0x2000. The value 0x0000 is a ratio of infinite:1. compGainTarget
Type: UINT32
Write: User-settable target for the output (makeup) gain. During one audio frame, the gain will ramp from the current value to compGainTarget, in u3.13 format (-0x0000 to 0xFFFF).

Remarks

This structure contains the context for the equalizer (EQ) and compressor. The Scalable Hardware Audio Processing Engine (SHAPE) can process up to 512 EQComp contexts per audio frame. For more information, see Equalization and compression in Overview of SHAPE.

Requirements

Header: shapeeqcompcontext.h Supported platforms: XBOX One family consoles and XBOX Series consoles

Conceptual documentation

See also

ShapeEqCompContext
Last modified on August 20, 2026