Update to CMake file for WASAPI; documentation update for CMake; finalized date for...
[rtaudio.git] / doc / doxygen / tutorial.txt
1 /*! \mainpage The RtAudio Home Page
2
3 RtAudio 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 operating systems.  RtAudio significantly simplifies the process of interacting with computer audio hardware.  It was designed with the following objectives:
4
5 <UL>
6   <LI>object-oriented C++ design</LI>
7   <LI>simple, common API across all supported platforms</LI>
8   <LI>only one source and one header file for easy inclusion in programming projects</LI>
9   <LI>allow simultaneous multi-api support</LI>
10   <LI>support dynamic connection of devices</LI>
11   <LI>provide extensive audio device parameter control</LI>
12   <LI>allow audio device capability probing</LI>
13   <LI>automatic internal conversion for data format, channel number compensation, (de)interleaving, and byte-swapping</LI>
14 </UL>
15
16 RtAudio 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 RtAudio instance.  See the \ref apinotes section for information specific to each of the supported audio APIs.
17
18 \section whatsnew Latest Updates (Version 4.1.0)
19
20 A minor API change was made. The RtError class was renamed RtAudioError and embedded directly in RtAudio.h.  Thus, all references to RtError should be renamed to RtAudioError and the RtError.h file should be deleted.
21
22 Other changes in this release include:
23
24 - new support for the Windows WASAPI API (thanks to Marcus Tomlinson)
25 - CMake support (thanks to Berkus Decker)
26 - pulse audio update to support bufferFrames argument with audio input (thanks to Jonatan Wallmander)
27 - fixes for ALSA API to avoid high CPU usage during stops and to clear stale data before input (thanks to Pluto Hades)
28 - miscellaneous efficiency updates suggested by Martin Koegler
29 - bug fix for OS-X xrun reporting problem
30 - bug fix if error when opening a stream after closing a previously open stream
31
32 \section download Download
33
34 Latest Release (10 April 2014): <A href="http://www.music.mcgill.ca/~gary/rtaudio/release/rtaudio-4.1.0.tar.gz">Version 4.1.0</A>
35
36 \section documentation Documentation Links
37
38 -# \ref errors
39 -# \ref probe
40 -# \ref settings
41 -# \ref playback
42 -# \ref recording
43 -# \ref duplex
44 -# \ref multi
45 -# \ref compiling
46 -# \ref apinotes
47 -# \ref acknowledge
48 -# \ref license
49 -# <A href="bugs.html">Bug Tracker (out of date)</A>
50 -# <A href="updates.html">Possible Updates (out of date)</A>
51 -# <A href="http://github.com/thestk/rtaudio">RtAudio on GitHub</A>
52
53 */