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>AX Voice Parameter Blocks</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">AX Voice Parameter Blocks</h1>
15
16
17<h2>C Specification</h2>
18<BLOCKQUOTE>
19<pre><CODE>typedef struct _AXVPB
20{
21
22void            *next;
23void            *prev;
24void            *next1;
25u32             priority;
26AXVoiceCallback callback;
27u32             userContext;
28u32             index;
29u32             sync;
30u32             depop;
31u32             updateMS;
32u32             updateCounter;
33u32             updateTotal;
34u16             *updateWrite;
35u16             updateData[128];
36void            *itdBuffer;
37AXPB            pb;
38
39} AXVPB;</CODE></pre>
40</BLOCKQUOTE>
41<h2>Description</h2>
42
43<p>Voice parameter blocks are the logical data constructs accessed by your audio application to control voice processing. Voice parameter blocks encapsulate the lower-level <code>AVPB pb</code> parameter blocks. Voice parameter blocks also include extra information for sorting, synchronization, and other voice management tasks.</p>
44
45<p><B>Note:</B> The low-level <code>pb</code> parameter blocks are double-buffered within voice parameter blocks (see figure below). This allows the DSP and AX to make parameter changes in parallel. Synchronization between the user <code>pb</code> and the DSP <code>pb</code> is controlled by the flags stored within the <code>axvpb.sync</code> parameter.</p>
46<P><img SRC="Double-Buffered_PB.gif" WIDTH="595" HEIGHT="365"></P>
47<h2>Revision History</h2>
48
49<P>03/01/2006 Initial version.</P>
50</body>
51</html>
52