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<h2>C Specification</h2>
17
18<BLOCKQUOTE>
19<pre><CODE>typedef struct _AXVPB
20{
21
22    void            *next;
23    void            *prev;
24    void            *next1;
25    u32             priority;
26    AXVoiceCallback callback;
27    u32             userContext;
28    u32             index;
29    u32             sync;
30    u32             depop;
31    void            *itdBuffer;
32    AXPB            pb;
33
34} AXVPB;</CODE></pre>
35</BLOCKQUOTE>
36
37<h2>Description</h2>
38
39<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>
40
41<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>
42
43<P><img SRC="Double-Buffered_PB.gif" WIDTH="595" HEIGHT="365"></P>
44
45<h2>Revision History</h2>
46
47<P>
482006/03/01 Initial version. <BR>2006/10/23 Deleted updateMS, updateCounter, updateTotal, updateWrite, and updateData.
49</P>
50
51<hr>
52<P>CONFIDENTIAL</p>
53</BODY>
54</HTML>
55