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
17<h2>C Specification</h2>
18<BLOCKQUOTE>
19<pre><CODE>#define AX_PB_MIXCTRL_L         0x00000001  // main left mix
20#define AX_PB_MIXCTRL_R         0x00000002  // main right mix
21#define AX_PB_MIXCTRL_LR_RAMP   0x00000004  // main bus ramp (applies to LRS)
22#define AX_PB_MIXCTRL_S         0x00000008  // main surround mix
23#define AX_PB_MIXCTRL_S_RAMP    0x00000010  // Main bus ramp (applies to surround)
24
25#define AX_PB_MIXCTRL_A_L       0x00010000  // AuxA left mix
26#define AX_PB_MIXCTRL_A_R       0x00020000  // AuxA right mix
27#define AX_PB_MIXCTRL_A_LR_RAMP 0x00040000  // AuxA bus ramp (applies to LR only)
28#define AX_PB_MIXCTRL_A_S       0x00080000  // AuxA surround mix
29#define AX_PB_MIXCTRL_A_S_RAMP  0x00100000   // AuxA bus ramp (applies to surround)
30
31#define AX_PB_MIXCTRL_B_L       0x00200000  // AuxB left mix
32#define AX_PB_MIXCTRL_B_R       0x00400000  // AuxB right mix
33#define AX_PB_MIXCTRL_B_LR_RAMP 0x00800000  // AuxB bus ramp (applies to LR only)
34#define AX_PB_MIXCTRL_B_S       0x01000000  // AuxB surround mix
35#define AX_PB_MIXCTRL_B_S_RAMP  0x02000000  // AuxB bus ramp (applies to surround only)
36
37#define AX_PB_MIXCTRL_C_L       0x04000000  // AuxC left mix
38#define AX_PB_MIXCTRL_C_R       0x08000000  // AuxC right mix
39#define AX_PB_MIXCTRL_C_LR_RAMP 0x10000000  // AuxC bus ramp (applies to LR only)
40#define AX_PB_MIXCTRL_C_S       0x20000000  // AuxC surround mix
41#define AX_PB_MIXCTRL_C_S_RAMP  0x40000000  // AuxC bus ramp (applies to surround only)
42#define AX_PB_MIXCTRL_C_DPL2    0x80000000  // AuxC DPL2, does not apply ITD for surrounds
43
44u32 mixerCtrl;</CODE></pre>
45</BLOCKQUOTE>
46<h2>Description</h2>
47
48<p>The <CODE>mixerCtrl</CODE> 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>
49
50<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>
51
52<p>The <code>mixerCtrl</code> parameter has the following bit definitions (where bit 1 is the least significant bit):</p>
53
54<ul>
55<li>bit 1, main left (1 = mix, 0 = do not mix)
56<li>bit 2, main right
57<li>bit 3, ramping for main left, right (1 = ramped, 0 = non-ramped)
58<li>bit 4, main surround
59<li>bit 5, ramping for main surround
60<li>bits 5-16, reserved (must be 0)
61<li>bit 17, Aux A left
62<li>bit 18, Aux A right
63<li>bit 19, ramping for Aux A left, Aux A right
64<li>bit 20, Aux A surround
65<li>bit 21, ramping for Aux A surround
66<li>bit 22, Aux B left
67<li>bit 23, Aux B right
68<li>bit 24, ramping for Aux B left, Aux B right
69<li>bit 25, Aux B surround
70<li>bit 26, ramping for Aux B surround
71<li>bit 27, Aux C left
72<li>bit 28, Aux C right
73<li>bit 29, ramping for Aux C left, right
74<li>bit 30, Aux C surround
75<li>bit 31, ramping for Aux C surround
76<li>bit 32, for DPL2, does not apply ITD for surrounds (1 = DPL2, 0 = non-DPL2)
77</ul>
78
79<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>
80
81<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>
82
83<p>Assert the <code>AX_SYNC_USER_MIXCTRL</code> synchronization flag in <code>axvpb.sync</code>, whenever <code>mixerCtrl</code> has changed. Please refer to the source code for the <code>MIX</code> library, for examples using <code>mixerCtrl</code>.</p>
84
85<h2>See Also</h2>
86<p>
87<code><a href="../Voice_Parameter_Blocks/sync.html">axvpb.sync</a><br> <a href="AXPBMIX_mix.html">axvpb.pb.mix</a><br> <a href="../Voice_Parameters/AXSetVoiceMix.html">AXSetVoiceMix</a></code>
88</p>
89
90<h2>Revision History</h2>
91
92<P>2006/03/01 Initial version.</P><hr>
93<P>CONFIDENTIAL</p>
94</BODY>
95</HTML>
96