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