1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2<html xml:lang="en-US" lang="en-US" xmlns="http://www.w3.org/1999/xhtml">
3  <head>
4    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
5    <meta http-equiv="Content-Style-Type" content="text/css" />
6    <link rel="stylesheet" href="../../../css/manpage.css" type="text/css" />
7    <style type="text/css"><!--
8      span.static_style
9      {
10        font-size			: 8pt;
11        color				: white;
12        font-weight			: bold;
13        background			: #44f;
14        border-left			: solid 1px #aaf;
15        border-top			: solid 1px #aaf;
16        border-right		: solid 1px #00c;
17        border-bottom		: solid 1px #00c;
18        padding-left		: 2px;
19        padding-right		: 2px;
20      }
21      span.virtual_style
22      {
23        font-size			 : 8pt;
24        color				 : white;
25        font-weight			: bold;
26        background			: #0a0;
27        border-left			: solid 1px #0f0;
28        border-top			: solid 1px #0f0;
29        border-right		: solid 1px #060;
30        border-bottom		: solid 1px #060;
31        padding-left		: 2px;
32        padding-right		: 2px;
33      }
34      span.protected_style
35      {
36        font-size			 : 8pt;
37        color				 : white;
38        font-weight			: bold;
39        background			: #444;
40        border-left			: solid 1px #ccc;
41        border-top			: solid 1px #ccc;
42        border-right		: solid 1px #222;
43        border-bottom		: solid 1px #222;
44        padding-left		: 2px;
45        padding-right		: 2px;
46      }
47        --></style>
48<title>nn::snd::CTR</title>
49  </head>
50  <body>
51<h1><CODE><a href="../../../nn/Overview.html">nn</a>::<a href="../../../nn/snd/Overview.html">snd</a>::CTR</CODE> Namespace</h1>
52<h2>Description</h2>
53    <div class="section">
54<p>Sound (SND) namespace. (This can also be written with &quot;<CODE>CTR</CODE>&quot; omitted.)</p><p>
55Sound processing is carried out while synchronizing with the DSP by sound threads that include the <a href="../../../nn/snd/CTR/WaitForDspSync.html"><CODE>nn::snd::CTR::WaitForDspSync</CODE></a> and <a href="../../../nn/snd/CTR/SendParameterToDsp.html"><CODE>nn::snd::CTR::SendParameterToDsp</CODE></a> functions. Sound operations and parameter settings are configured after using the <a href="../../../nn/snd/CTR/WaitForDspSync.html"><CODE>nn::snd::CTR::WaitForDspSync</CODE></a> function to wait for an interrupt from the DSP that occurs approximately every 4.889 milliseconds, and then applying those operations and parameter settings to the DSP using the <a href="../../../nn/snd/CTR/SendParameterToDsp.html"><CODE>nn::snd::CTR::SendParameterToDsp</CODE></a> function. The <a href="../../../nn/snd/CTR/WaitForDspSync.html"><CODE>nn::snd::CTR::WaitForDspSync</CODE></a> and <a href="../../../nn/snd/CTR/SendParameterToDsp.html"><CODE>nn::snd::CTR::SendParameterToDsp</CODE></a> functions must be called alternately.
56      </p><p>
57The snd library uses an <a href="../../../nn/os/Event/Overview.html">nn::os::Event</a> object held internally to perform the above synchronization.
58</p><p>The <a href="../../../nn/dsp/CTR/Initialize.html"><CODE>nn::dsp::CTR::Initialize</CODE></a> function and functions for loading DSP components (such as the <a href="../../../nn/dsp/CTR/LoadDefaultComponent.html"><CODE>nn::dsp::CTR::LoadDefaultComponent</CODE></a> function), must be called before the <a href="../../../nn/snd/CTR/Initialize.html"><CODE>nn::snd::CTR::Initialize</CODE></a> function.
59      </p></div>
60    <a name="class" id="class">
61<h2>Classes</h2>
62      <div class="section">
63        <table class="members">
64          <tr>
65<th class="category" colspan="2"><CODE>Result</CODE></th>
66          </tr>
67          <tr>
68            <th>
69<a href="../../../nn/snd/CTR/ResultAlreadyInitialized/Overview.html"><CODE>nn::snd::CTR::ResultAlreadyInitialized</CODE></a>
70            </th>
71<td>Indicates that initialization has already finished.</td>
72          </tr>
73          <tr>
74            <th>
75<a href="../../../nn/snd/CTR/ResultNoDspComponentLoaded/Overview.html"><CODE>nn::snd::CTR::ResultNoDspComponentLoaded</CODE></a>
76            </th>
77<td>Indicates that <CODE>dspcomponent</CODE> has not been loaded.</td>
78          </tr>
79          <tr>
80            <th>
81<a href="../../../nn/snd/CTR/ResultInvalidUsage/Overview.html"><CODE>nn::snd::CTR::ResultInvalidUsage</CODE></a>
82            </th>
83<td>Indicates a usage error, such as the order of arguments and function calls.</td>
84          </tr>
85          <tr>
86<th class="category" colspan="2">Other</th>
87          </tr>
88          <tr>
89            <th>
90<a href="../../../nn/snd/CTR/Bcwav/Overview.html"><CODE>nn::snd::CTR::Bcwav</CODE></a>
91            </th>
92<td>Definition of a class that handles BCWAV files.</td>
93          </tr>
94          <tr>
95            <th>
96<a href="../../../nn/snd/CTR/FxDelay/Overview.html"><CODE>nn::snd::CTR::FxDelay</CODE></a>
97            </th>
98<td>The delay effect class.</td>
99          </tr>
100          <tr>
101            <th>
102<a href="../../../nn/snd/CTR/FxReverb/Overview.html"><CODE>nn::snd::CTR::FxReverb</CODE></a>
103            </th>
104<td>The reverb effect class.</td>
105          </tr>
106          <tr>
107            <th>
108<a href="../../../nn/snd/CTR/OutputCapture/Overview.html"><CODE>nn::snd::CTR::OutputCapture</CODE></a>
109            </th>
110<td>The class for getting the DSP's final output.</td>
111          </tr>
112          <tr>
113            <th>
114<a href="../../../nn/snd/CTR/Voice/Overview.html"><CODE>nn::snd::CTR::Voice</CODE></a>
115            </th>
116<td>A class used to control <a href="../../../nn/snd/CTR/Voice/Overview.html"><CODE>Voice</CODE></a> objects.</td>
117          </tr> </table>
118      </div>
119    </a> <a name="struct" id="struct">
120<h2>Structures</h2>
121      <div class="section">
122        <table class="members">
123          <tr>
124            <th>
125<a href="../../../nn/snd/CTR/AdpcmParam/Overview.html"><CODE>nn::snd::CTR::AdpcmParam</CODE></a>
126            </th>
127<td>A structure that stores ADPCM coefficients.</td>
128          </tr>
129          <tr>
130            <th>
131<a href="../../../nn/snd/CTR/AdpcmContext/Overview.html"><CODE>nn::snd::CTR::AdpcmContext</CODE></a>
132            </th>
133<td>A structure that stores an ADPCM context.</td>
134          </tr>
135          <tr>
136            <th>
137<a href="../../../nn/snd/CTR/MonoFilterCoefficients/Overview.html"><CODE>nn::snd::CTR::MonoFilterCoefficients</CODE></a>
138            </th>
139<td>Structure that stores monopole filter coefficients.</td>
140          </tr>
141          <tr>
142            <th>
143<a href="../../../nn/snd/CTR/BiquadFilterCoefficients/Overview.html"><CODE>nn::snd::CTR::BiquadFilterCoefficients</CODE></a>
144            </th>
145<td>Structure that stores biquad filter coefficients.</td>
146          </tr>
147          <tr>
148            <th>
149<a href="../../../nn/snd/CTR/MixParam/Overview.html"><CODE>nn::snd::CTR::MixParam</CODE></a>
150            </th>
151<td>A structure that stores the gain for each channel.</td>
152          </tr>
153          <tr>
154            <th>
155<a href="../../../nn/snd/CTR/WaveBuffer/Overview.html"><CODE>nn::snd::CTR::WaveBuffer</CODE></a>
156            </th>
157<td>Structure that stores information about a buffer storing sample data.</td>
158          </tr>
159          <tr>
160            <th>
161<a href="../../../nn/snd/CTR/AuxBusData/Overview.html"><CODE>nn::snd::CTR::AuxBusData</CODE></a>
162            </th>
163<td>Structure for functions containing the code that processes <CODE>Aux</CODE> bus data in each sound frame.</td>
164          </tr> </table>
165      </div>
166    </a> <a name="enum" id="enum">
167<h2>Enumerated Types</h2>
168      <div class="section">
169        <table class="members">
170          <tr>
171            <td width="100"> </td>
172            <th>
173<a href="../../../nn/snd/CTR/ChannelIndex.html"><CODE>ChannelIndex</CODE></a>
174            </th>
175<td>Enumerated type representing channel positions.</td>
176          </tr>
177          <tr>
178            <td width="100"> </td>
179            <th>
180<a href="../../../nn/snd/CTR/OutputMode.html"><CODE>OutputMode</CODE></a>
181            </th>
182<td>Enumerated type representing a mixer's output mode.</td>
183          </tr>
184          <tr>
185            <td width="100"> </td>
186            <th>
187<a href="../../../nn/snd/CTR/ClippingMode.html"><CODE>ClippingMode</CODE></a>
188            </th>
189<td>Enumerated type representing the clipping mode.</td>
190          </tr>
191          <tr>
192            <td width="100"> </td>
193            <th>
194<a href="../../../nn/snd/CTR/SurroundSpeakerPosition.html"><CODE>SurroundSpeakerPosition</CODE></a>
195            </th>
196<td>Enumerated type indicating the virtual speaker position for 3D surround sound.</td>
197          </tr>
198          <tr>
199            <td width="100"> </td>
200            <th>
201<a href="../../../nn/snd/CTR/InterpolationType.html"><CODE>InterpolationType</CODE></a>
202            </th>
203<td>An enumerated type representing the interpolation method.</td>
204          </tr>
205          <tr>
206            <td width="100"> </td>
207            <th>
208<a href="../../../nn/snd/CTR/FilterType.html"><CODE>FilterType</CODE></a>
209            </th>
210<td>Enumerated type representing the filter type.</td>
211          </tr>
212          <tr>
213            <td width="100"> </td>
214            <th>
215<a href="../../../nn/snd/CTR/AuxBusId.html"><CODE>AuxBusId</CODE></a>
216            </th>
217<td>Enumerated type representing the <CODE>Aux</CODE> bus ID.</td>
218          </tr>
219          <tr>
220            <td width="100"> </td>
221            <th>
222<a href="../../../nn/snd/CTR/SampleFormat.html"><CODE>SampleFormat</CODE></a>
223            </th>
224<td>Enumerated type representing sample formats.</td>
225          </tr> </table>
226      </div>
227    </a> <a name="typedef" id="typedef">
228<h2><CODE>typedef</CODE> Definitions</h2>
229      <div class="section">
230        <table class="members">
231          <tr>
232            <td width="100" />
233            <th>
234<a href="../../../nn/snd/CTR/AuxCallback.html"><CODE>AuxCallback</CODE></a>
235            </th>
236<td>Typedef for the <CODE>Aux</CODE> callback function pointer.</td>
237          </tr>
238          <tr>
239            <td width="100" />
240            <th>
241<a href="../../../nn/snd/CTR/VoiceDropCallbackFunc.html"><CODE>VoiceDropCallbackFunc</CODE></a>
242            </th>
243<td>Typedef for the callback function to invoke when the library frees a voice.</td>
244          </tr> </table>
245      </div>
246    </a> <a name="constant" id="constant">
247<h2>Constants</h2>
248      <div class="section">
249        <table class="members">
250          <tr>
251            <td width="100">
252<span class="static_style" title="static">S</span>
253            </td>
254            <th>
255<span class="argument"><a href="../../../nn/snd/CTR/VOICE_PRIORITY_NODROP.html"><CODE>VOICE_PRIORITY_NODROP</CODE></a></span>
256            </th>
257<td width="100">const s32</td>
258<td>This is the highest possible priority and is also given special treatment.</td>
259          </tr>
260          <tr>
261            <td width="100">
262<span class="static_style" title="static">S</span>
263            </td>
264            <th>
265<span class="argument"><a href="../../../nn/snd/CTR/NN_SND_DSP_MAXIMUM_CYCLES.html"><CODE>NN_SND_DSP_MAXIMUM_CYCLES</CODE></a></span>
266            </th>
267<td width="100">const s32</td>
268<td>Maximum number of DSP cycles per sound frame.</td>
269          </tr> </table>
270      </div>
271    </a> <a name="function" id="function">
272<h2>Functions</h2>
273      <div class="section">
274        <table class="members">
275          <tr>
276<th class="category" colspan="3">Initialize/Finalize</th>
277          </tr>
278          <tr>
279            <td width="100">  </td>
280            <th>
281<a href="../../../nn/snd/CTR/Initialize.html"><CODE>Initialize</CODE></a>
282            </th>
283<td>Initializes the sound library.</td>
284          </tr>
285          <tr>
286            <td width="100">  </td>
287            <th>
288<a href="../../../nn/snd/CTR/Finalize.html"><CODE>Finalize</CODE></a>
289            </th>
290<td>Finalizes the sound library.</td>
291          </tr>
292          <tr>
293            <td width="100">  </td>
294            <th>
295<a href="../../../nn/snd/CTR/InitializeWaveBuffer.html"><CODE>InitializeWaveBuffer</CODE></a>
296            </th>
297<td>Initializes a buffer information structure.</td>
298          </tr>
299          <tr>
300<th class="category" colspan="3">Cache Operations</th>
301          </tr>
302          <tr>
303            <td width="100">  </td>
304            <th>
305<a href="../../../nn/snd/CTR/FlushDataCache.html"><CODE>FlushDataCache</CODE></a>
306            </th>
307<td>Writes data for the specified cache range back into memory and invalidates the cache.</td>
308          </tr>
309          <tr>
310<th class="category" colspan="3">Synchronous Processing</th>
311          </tr>
312          <tr>
313            <td width="100">  </td>
314            <th>
315<a href="../../../nn/snd/CTR/WaitForDspSync.html"><CODE>WaitForDspSync</CODE></a>
316            </th>
317<td>Receives the result of DSP processing.</td>
318          </tr>
319          <tr>
320            <td width="100">  </td>
321            <th>
322<a href="../../../nn/snd/CTR/SendParameterToDsp.html"><CODE>SendParameterToDsp</CODE></a>
323            </th>
324<td>Applies the configured parameters to the DSP.</td>
325          </tr>
326          <tr>
327<th class="category" colspan="3">Master Controls, Auxiliary Bus Controls</th>
328          </tr>
329          <tr>
330            <td width="100">  </td>
331            <th>
332<a href="../../../nn/snd/CTR/SetMasterVolume.html"><CODE>SetMasterVolume</CODE></a>
333            </th>
334<td>This function sets the master volume.</td>
335          </tr>
336          <tr>
337            <td width="100">  </td>
338            <th>
339<a href="../../../nn/snd/CTR/SetAuxReturnVolume.html"><CODE>SetAuxReturnVolume</CODE></a>
340            </th>
341<td>Sets the <CODE>Aux</CODE> bus volume.</td>
342          </tr>
343          <tr>
344            <td width="100">  </td>
345            <th>
346<a href="../../../nn/snd/CTR/GetAuxReturnVolume.html"><CODE>SetAuxReturnVolume</CODE></a>
347            </th>
348<td>Gets the <CODE>Aux</CODE> bus volume.</td>
349          </tr>
350          <tr>
351            <td width="100">  </td>
352            <th>
353<a href="../../../nn/snd/CTR/RegisterAuxCallback.html"><CODE>RegisterAuxCallback</CODE></a>
354            </th>
355<td>Sets the <CODE>Aux</CODE> bus callback function.</td>
356          </tr>
357          <tr>
358            <td width="100">  </td>
359            <th>
360<a href="../../../nn/snd/CTR/GetAuxCallback.html"><CODE>GetAuxCallback</CODE></a>
361            </th>
362<td>Gets the <CODE>Aux</CODE> bus callback function.</td>
363          </tr>
364          <tr>
365            <td width="100">  </td>
366            <th>
367<a href="../../../nn/snd/CTR/ClearAuxCallback.html"><CODE>ClearAuxCallback</CODE></a>
368            </th>
369<td>Clears the <CODE>Aux</CODE> bus callback function.</td>
370          </tr>
371          <tr>
372            <td width="100">  </td>
373            <th>
374<a href="../../../nn/snd/CTR/SetAuxFrontBypass.html"><CODE>SetAuxFrontBypass</CODE></a>
375            </th>
376<td>Configures whether to bypass the front channels of an Aux bus.</td>
377          </tr>
378          <tr>
379<th class="category" colspan="3">3D Surround Sound</th>
380          </tr>
381          <tr>
382            <td width="100">  </td>
383            <th>
384<a href="../../../nn/snd/CTR/SetSoundOutputMode.html"><CODE>SetSoundOutputMode</CODE></a>
385            </th>
386<td>Sets the sound output mode.</td>
387          </tr>
388          <tr>
389            <td width="100">  </td>
390            <th>
391<a href="../../../nn/snd/CTR/GetSoundOutputMode.html"><CODE>GetSoundOutputMode</CODE></a>
392            </th>
393<td>Gets the sound output mode.</td>
394          </tr>
395          <tr>
396            <td width="100">  </td>
397            <th>
398<a href="../../../nn/snd/CTR/SetClippingMode.html"><CODE>SetClippingMode</CODE></a>
399            </th>
400<td>Sets the clipping mode.</td>
401          </tr>
402          <tr>
403            <td width="100">  </td>
404            <th>
405<a href="../../../nn/snd/CTR/GetClippingMode.html"><CODE>GetClippingMode</CODE></a>
406            </th>
407<td>Gets the clipping mode.</td>
408          </tr>
409          <tr>
410            <td width="100">  </td>
411            <th>
412<a href="../../../nn/snd/CTR/SetSurroundDepth.html"><CODE>SetSurroundDepth</CODE></a>
413            </th>
414<td>Sets the surround sound depth.</td>
415          </tr>
416          <tr>
417            <td width="100">  </td>
418            <th>
419<a href="../../../nn/snd/CTR/SetSurroundSpeakerPosition.html"><CODE>SetSurroundSpeakerPosition</CODE></a>
420            </th>
421<td>Sets the virtual speaker position for 3D surround sound.</td>
422          </tr>
423          <tr>
424<th class="category" colspan="3">Get the DSP final output</th>
425          </tr>
426          <tr>
427            <td width="100">  </td>
428            <th>
429<a href="../../../nn/snd/CTR/GetMixedBusData.html"><CODE>GetMixedBusData</CODE></a>
430            </th>
431<td>Copies the <CODE>Mix</CODE> bus data to the specified buffer.</td>
432          </tr>
433          <tr>
434            <td width="100">  </td>
435            <th>
436<a href="../../../nn/snd/CTR/SetOutputCapture.html"><CODE>SetOutputCapture</CODE></a>
437            </th>
438<td>Configures the capture for getting the DSP final output.</td>
439          </tr>
440          <tr>
441<th class="category" colspan="3">Dropped Processing Detection</th>
442          </tr>
443          <tr>
444            <td width="100">  </td>
445            <th>
446<a href="../../../nn/snd/CTR/GetDroppedSoundFrameCount.html"><CODE>GetDroppedSoundFrameCount</CODE></a>
447            </th>
448<td>Gets the number of dropped sound frames.</td>
449          </tr>
450          <tr>
451            <td width="100">  </td>
452            <th>
453<a href="../../../nn/snd/CTR/ClearDroppedSoundFrameCount.html"><CODE>ClearDroppedSoundFrameCount</CODE></a>
454            </th>
455<td>Clears the dropped sound frames counter.</td>
456          </tr>
457          <tr>
458<th class="category" colspan="3">DSP-ADPCM-Related</th>
459          </tr>
460          <tr>
461            <td width="100">  </td>
462            <th>
463<a href="../../../nn/snd/CTR/EncodeAdpcmData.html"><CODE>EncodeAdpcmData</CODE></a>
464            </th>
465<td>Encodes 16-bit PCM data into DSP-ADPCM format.</td>
466          </tr>
467          <tr>
468            <td width="100">  </td>
469            <th>
470<a href="../../../nn/snd/CTR/DecodeAdpcmData.html"><CODE>DecodeAdpcmData</CODE></a>
471            </th>
472<td>Decodes DSP-ADPCM data.</td>
473          </tr>
474          <tr>
475            <td width="100">  </td>
476            <th>
477<a href="../../../nn/snd/CTR/GetAdpcmOutputBufferSize.html"><CODE>GetAdpcmOutputBufferSize</CODE></a>
478            </th>
479<td>Returns the size of the output buffer that is required during encoding.</td>
480          </tr>
481          <tr>
482            <td width="100">  </td>
483            <th>
484<a href="../../../nn/snd/CTR/ConvertAdpcmPos2Nib.html"><CODE>ConvertAdpcmPos2Nib</CODE></a>
485            </th>
486<td>Converts the sample position to a number of nibbles.</td>
487          </tr>
488          <tr>
489            <td width="100">  </td>
490            <th>
491<a href="../../../nn/snd/CTR/ConvertAdpcmNib2Pos.html"><CODE>ConvertAdpcmNib2Pos</CODE></a>
492            </th>
493<td>Converts the number of nibbles to a sample position.</td>
494          </tr>
495          <tr>
496<th class="category" colspan="3">Effect</th>
497          </tr>
498          <tr>
499            <td width="100">  </td>
500            <th>
501<a href="../../../nn/snd/CTR/SetEffect.html"><CODE>SetEffect</CODE></a>
502            </th>
503<td>Configures the effect.</td>
504          </tr>
505          <tr>
506            <td width="100">  </td>
507            <th>
508<a href="../../../nn/snd/CTR/ClearEffect.html"><CODE>ClearEffect</CODE></a>
509            </th>
510<td>Clears an effect setting.</td>
511          </tr>
512          <tr>
513<th class="category" colspan="3">Voice Controls</th>
514          </tr>
515          <tr>
516            <td width="100">  </td>
517            <th>
518<a href="../../../nn/snd/CTR/AllocVoice.html"><CODE>AllocVoice</CODE></a>
519            </th>
520<td>Gets a voice.</td>
521          </tr>
522          <tr>
523            <td width="100">  </td>
524            <th>
525<a href="../../../nn/snd/CTR/FreeVoice.html"><CODE>FreeVoice</CODE></a>
526            </th>
527<td>Frees a voice.</td>
528          </tr>
529          <tr>
530<th class="category" colspan="3">Other</th>
531          </tr>
532          <tr>
533            <td width="100">  </td>
534            <th>
535<a href="../../../nn/snd/CTR/GetSampleLength.html"><CODE>GetSampleLength</CODE></a>
536            </th>
537<td>Gets the sample length.</td>
538          </tr>
539          <tr>
540            <td width="100">  </td>
541            <th>
542<a href="../../../nn/snd/CTR/SetMaximumDspCycles.html"><CODE>SetMaximumDspCycles</CODE></a>
543            </th>
544<td>Sets the number of DSP cycles that sound can use.</td>
545          </tr>
546          <tr>
547            <td width="100">  </td>
548            <th>
549<a href="../../../nn/snd/CTR/GetMaximumDspCycles.html"><CODE>GetMaximumDspCycles</CODE></a>
550            </th>
551<td>Gets the number of DSP cycles allocated to sound.</td>
552          </tr>
553          <tr>
554            <td width="100">  </td>
555            <th>
556<a href="../../../nn/snd/CTR/GetDspCycles.html"><CODE>GetDspCycles</CODE></a>
557            </th>
558<td>Gets the number of cycles consumed by the DSP to create the last audio frame.</td>
559          </tr>
560          <tr>
561            <td width="100">  </td>
562            <th>
563<a href="../../../nn/snd/CTR/GetHeadphoneStatus.html"><CODE>GetHeadphoneStatus</CODE></a>
564            </th>
565<td>Gets whether headphones are plugged in.</td>
566          </tr>
567          <tr>
568            <td width="100">  </td>
569            <th>
570<a href="../../../nn/snd/CTR/UpdateHeadphoneStatus.html"><CODE>UpdateHeadphoneStatus</CODE></a>
571            </th>
572<td>Updates and gets the headphone connection state.</td>
573          </tr>
574          <tr>
575            <td width="100">  </td>
576            <th>
577<a href="../../../nn/snd/CTR/SetOutputBufferCount.html"><CODE>SetOutputBufferCount</CODE></a>
578            </th>
579<td>Sets the number of buffers for the DSP final output level.</td>
580          </tr> </table>
581      </div>
582    </a>
583<h2>Revision History</h2>
584    <div class="section">
585      <dl class="history">
586        <dt>2011/02/02</dt>
587<dd>Added a note regarding the synchronization performed by sound threads and a note regarding initialization.<BR>
588        </dd>
589        <dt>2010/02/09</dt>
590<dd>Initial version.<br />
591        </dd>
592      </dl>
593    </div>
594  <hr><p>CONFIDENTIAL</p></body>
595</html>
596