Release 4.0.8 tarball
[rtaudio.git] / doc / html / index.html
1 <HTML>
2 <HEAD>
3 <TITLE>The RtAudio Home Page</TITLE>
4 <LINK HREF="doxygen.css" REL="stylesheet" TYPE="text/css">
5 <LINK REL="SHORTCUT ICON" HREF="http://www.music.mcgill.ca/~gary/favicon.ico">
6 </HEAD>
7 <BODY BGCOLOR="#FFFFFF">
8 <CENTER>
9 <a class="qindex" href="index.html">Home</a> &nbsp; <a class="qindex" href="annotated.html">Class/Enum List</a> &nbsp; <a class="qindex" href="files.html">File List</a> &nbsp; <a class="qindex" href="functions.html">Compound Members</a> &nbsp; </CENTER>
10 <HR>
11 <!-- Generated by Doxygen 1.6.2 -->
12 <div class="contents">
13 <h1>The <a class="el" href="classRtAudio.html" title="Realtime audio i/o C++ classes.">RtAudio</a> Home Page </h1><h3 class="version">4.0.8 </h3><p><a class="el" href="classRtAudio.html" title="Realtime audio i/o C++ classes.">RtAudio</a> is a set of C++ classes that provide a common API (Application Programming Interface) for realtime audio input/output across Linux, Macintosh OS-X and Windows (DirectSound and ASIO) operating systems. <a class="el" href="classRtAudio.html" title="Realtime audio i/o C++ classes.">RtAudio</a> significantly simplifies the process of interacting with computer audio hardware. It was designed with the following objectives:</p>
14 <ul>
15 <li>
16 object-oriented C++ design </li>
17 <li>
18 simple, common API across all supported platforms </li>
19 <li>
20 only one source and two header files for easy inclusion in programming projects </li>
21 <li>
22 allow simultaneous multi-api support </li>
23 <li>
24 support dynamic connection of devices </li>
25 <li>
26 provide extensive audio device parameter control </li>
27 <li>
28 allow audio device capability probing </li>
29 <li>
30 automatic internal conversion for data format, channel number compensation, (de)interleaving, and byte-swapping </li>
31 </ul>
32 <p><a class="el" href="classRtAudio.html" title="Realtime audio i/o C++ classes.">RtAudio</a> incorporates the concept of audio streams, which represent audio output (playback) and/or input (recording). Available audio devices and their capabilities can be enumerated and then specified when opening a stream. Where applicable, multiple API support can be compiled and a particular API specified when creating an <a class="el" href="classRtAudio.html" title="Realtime audio i/o C++ classes.">RtAudio</a> instance. See the <a class="el" href="apinotes.html">API Notes</a> section for information specific to each of the supported audio APIs.</p>
33 <h2><a class="anchor" id="whatsnew">
34 What's New (Version 4.0)</a></h2>
35 <p><a class="el" href="classRtAudio.html" title="Realtime audio i/o C++ classes.">RtAudio</a> V4 represents a significant rewrite of the code and includes a number of API and functionality changes from previous versions. A partial list of the changes includes:</p>
36 <ul>
37 <li>new support for non-interleaved user data</li>
38 <li>additional input/output parameter specifications, including channel offset</li>
39 <li>new support for dynamic connection of devices</li>
40 <li>new support for stream time</li>
41 <li>revised callback arguments, including separate input and output buffer arguments</li>
42 <li>revised C++ exception handling</li>
43 <li>updated support for OSS version 4.0</li>
44 <li>discontinued support of blocking functionality</li>
45 <li>discontinued support of SGI</li>
46 </ul>
47 <p>Devices are now re-enumerated every time the <a class="el" href="classRtAudio.html#a747ce2d73803641bbb66d6e78092aa1a" title="A public function that queries for the number of audio devices available.">RtAudio::getDeviceCount()</a>, <a class="el" href="classRtAudio.html#a02d7ff44ad1d7eae22283a052f3dfda8" title="Return an RtAudio::DeviceInfo structure for a specified device number.">RtAudio::getDeviceInfo()</a>, and <a class="el" href="classRtAudio.html#afacc99740fa4c5606fb35467cdea6da8" title="A public function for opening a stream with the specified parameters.">RtAudio::openStream()</a> functions are called. This allows for the proper identification of hot-pluggable (USB, Firewire, ...) devices that are connected after an <a class="el" href="classRtAudio.html" title="Realtime audio i/o C++ classes.">RtAudio</a> instance is created.</p>
48 <h2><a class="anchor" id="download">
49 Download</a></h2>
50 <p>Latest Release (12 April 2011): <a href="http://www.music.mcgill.ca/~gary/rtaudio/release/rtaudio-4.0.8.tar.gz">Version 4.0.8</a></p>
51 <h2><a class="anchor" id="documentation">
52 Documentation Links</a></h2>
53 <ol type="1">
54 <li><a class="el" href="errors.html">Error Handling</a></li>
55 <li><a class="el" href="probe.html">Probing Device Capabilities</a></li>
56 <li><a class="el" href="settings.html">Device Settings</a></li>
57 <li><a class="el" href="playback.html">Playback</a></li>
58 <li><a class="el" href="recording.html">Recording</a></li>
59 <li><a class="el" href="duplex.html">Duplex Mode</a></li>
60 <li><a class="el" href="multi.html">Using Simultaneous Multiple APIs</a></li>
61 <li><a class="el" href="compiling.html">Debugging &amp; Compiling</a></li>
62 <li><a class="el" href="apinotes.html">API Notes</a></li>
63 <li><a class="el" href="acknowledge.html">Acknowledgements</a></li>
64 <li><a class="el" href="license.html">License</a></li>
65 <li><a href="bugs.html">Bug Tracker</a></li>
66 <li><a href="updates.html">Possible Updates</a></li>
67 <li><a href="http://sourceforge.net/projects/rtaudio">RtAudio at SourceForge</a> </li>
68 </ol>
69 </div>
70 <HR>
71
72 <table><tr><td><img src="../images/mcgill.gif" width=165></td>
73   <td>&copy;2001-2010 Gary P. Scavone, McGill University. All Rights Reserved.<br>Maintained by <a href="http://www.music.mcgill.ca/~gary/">Gary P. Scavone</a>.</td></tr>
74 </table>
75
76 </BODY>
77 </HTML>