1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2<html>
3
4<head>
5<LINK rel="stylesheet" type="text/css" href="../../CSS/revolution.css">
6<title>axvpb.pb.mixerCtrl</title>
7<META http-equiv="Content-Type" content="text/html; charset=windows-1252">
8<META name="GENERATOR" content="IBM WebSphere Studio Homepage Builder Version 6.5.0.0 for Windows">
9<META http-equiv="Content-Style-Type" content="text/css">
10</head>
11
12<body>
13
14<h1 align="left">axvpb.pb.mixerCtrl</h1>
15
16<h2>Syntax</h2>
17<dl><dd><pre class="construction">
18#define AX_PB_MIXCTRL_L         0x00000001  // main left mix
19#define AX_PB_MIXCTRL_R         0x00000002  // main right mix
20#define AX_PB_MIXCTRL_LR_RAMP   0x00000004  // main bus ramp (applies to LRS)
21#define AX_PB_MIXCTRL_S         0x00000008  // main surround mix
22#define AX_PB_MIXCTRL_S_RAMP    0x00000010  // Main bus ramp (applies to surround)
23
24#define AX_PB_MIXCTRL_A_L       0x00010000  // AuxA left mix
25#define AX_PB_MIXCTRL_A_R       0x00020000  // AuxA right mix
26#define AX_PB_MIXCTRL_A_LR_RAMP 0x00040000  // AuxA bus ramp (applies to LR only)
27#define AX_PB_MIXCTRL_A_S       0x00080000  // AuxA surround mix
28#define AX_PB_MIXCTRL_A_S_RAMP  0x00100000   // AuxA bus ramp (applies to surround)
29
30#define AX_PB_MIXCTRL_B_L       0x00200000  // AuxB left mix
31#define AX_PB_MIXCTRL_B_R       0x00400000  // AuxB right mix
32#define AX_PB_MIXCTRL_B_LR_RAMP 0x00800000  // AuxB bus ramp (applies to LR only)
33#define AX_PB_MIXCTRL_B_S       0x01000000  // AuxB surround mix
34#define AX_PB_MIXCTRL_B_S_RAMP  0x02000000  // AuxB bus ramp (applies to surround only)
35
36#define AX_PB_MIXCTRL_C_L       0x04000000  // AuxC left mix
37#define AX_PB_MIXCTRL_C_R       0x08000000  // AuxC right mix
38#define AX_PB_MIXCTRL_C_LR_RAMP 0x10000000  // AuxC bus ramp (applies to LR only)
39#define AX_PB_MIXCTRL_C_S       0x20000000  // AuxC surround mix
40#define AX_PB_MIXCTRL_C_S_RAMP  0x40000000  // AuxC bus ramp (applies to surround only)
41#define AX_PB_MIXCTRL_C_DPL2    0x80000000  // AuxC DPL2, does not apply ITD for surrounds
42
43u32 mixerCtrl;
44</pre></dd></dl>
45
46<h2>Description</h2>
47<p>The <SPAN class="argument">mixerCtrl</SPAN> parameter dictates which channels the DSP must mix for a voice, and the manner in which the mixing must occur (ramped or non-ramped). The more channels the DSP must mix for a voice, the costlier the voice is, in terms of DSP cycles.</p>
48
49<p>Take care to specify only the necessary minimum number of channels to mix for a voice. For example, if a sound effect is panned only to the front left and right channels, then the surround channel mixer control should not be asserted. Furthermore, if an AUX effect is not being applied to the voice, then don't assert the mixer controls for the AUXA/AUXB/AUXC busses.</p>
50
51<p>The <SPAN class="argument">mixerCtrl</SPAN> parameter has the following bit definitions (where bit 1 is the least significant bit):</p>
52
53<ul>
54<li>bit 1, main left (1 = mix, 0 = do not mix)
55<li>bit 2, main right
56<li>bit 3, ramping for main left, right (1 = ramped, 0 = non-ramped)
57<li>bit 4, main surround
58<li>bit 5, ramping for main surround
59<li>bits 5-16, reserved (must be 0)
60<li>bit 17, Aux A left
61<li>bit 18, Aux A right
62<li>bit 19, ramping for Aux A left, Aux A right
63<li>bit 20, Aux A surround
64<li>bit 21, ramping for Aux A surround
65<li>bit 22, Aux B left
66<li>bit 23, Aux B right
67<li>bit 24, ramping for Aux B left, Aux B right
68<li>bit 25, Aux B surround
69<li>bit 26, ramping for Aux B surround
70<li>bit 27, Aux C left
71<li>bit 28, Aux C right
72<li>bit 29, ramping for Aux C left, right
73<li>bit 30, Aux C surround
74<li>bit 31, ramping for Aux C surround
75<li>bit 32, for DPL2, does not apply ITD for surrounds (1 = DPL2, 0 = non-DPL2)
76</ul>
77
78<p>The ramping feature of the mixer activates a per-sample volume ramp. This eliminates &quot;zipping&quot; artifacts when a large volume change is applied to a sound effect. Without ramping, volume changes would be applied on a frame (or millisecond) basis, resulting in a &quot;stair step&quot; volume profile. A per-sample ramp provides a smoother transition, but nearly doubles the mixing cost of a given channel. Take care to use ramping only when necessary.</p>
79
80<p>Bit 32 must be asserted if you are implementing DPL2 support. This bit will deactivate the ITD (initial time delay) phase modulation for the surround channels. This is necessary because phase coherence is required for proper decoding of surround information by DPL2 receivers.</p>
81
82<p>Assert the <code>AX_SYNC_USER_MIXCTRL</code> synchronization flag in <code>axvpb.sync</code>, whenever <SPAN class="argument">mixerCtrl</SPAN> has changed. Please refer to the source code for the MIX library as an example of using <SPAN class="argument">mixerCtrl</SPAN>.</p>
83
84<h2>See Also</h2>
85<p class="reference">
86<a href="../Voice_Parameter_Blocks/sync.html">axvpb.sync</a>, <a href="AXPBMIX_mix.html">axvpb.pb.mix</a>, <a href="../Voice_Parameters/AXSetVoiceMix.html">AXSetVoiceMix</a>
87</p>
88
89<h2>Revision History</h2>
90<P>
912006/03/01 Initial version.<br>
92</P>
93
94<hr><p>CONFIDENTIAL</p></body>
95</html>
96