41f3bc03b05d568b1b6326454e1e2dc90eca7495
[rtaudio-cdist.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 Changes in the previous 4.0.12 release included:
23
24 - new functionality to allow error reporting via a client-supplied function (thanks to Pavel Mogilevskiy)
25 - new function to return the version number
26 - updated RtAudio.cpp and ASIO files for UNICODE support (thanks to Renaud Schoonbroodt)
27 - updates to PulseAudio API support (thanks to Peter Meerwald and Tristan Matthews)
28 - updates for pkg-config support in configure script
29 - 24-bit format changed to true 24-bit format, not sub-bytes of 32-bits (thanks to Marc Britton)
30 - bug fixes to make sure stream status is closed if error during probeDeviceOpen
31 - updates / fixes to SCHED_RR code in ALSA (thanks to Marc Lindahl)
32 - various changes to avoid global variables (thanks to Martin Koegler)
33
34 \section download Download
35
36 Latest Release (?? 2014): <A href="http://www.music.mcgill.ca/~gary/rtaudio/release/rtaudio-4.1.0.tar.gz">Version 4.1.0</A>
37
38 \section documentation Documentation Links
39
40 -# \ref errors
41 -# \ref probe
42 -# \ref settings
43 -# \ref playback
44 -# \ref recording
45 -# \ref duplex
46 -# \ref multi
47 -# \ref compiling
48 -# \ref apinotes
49 -# \ref acknowledge
50 -# \ref license
51 -# <A href="bugs.html">Bug Tracker</A>
52 -# <A href="updates.html">Possible Updates</A>
53 -# <A href="http://sourceforge.net/projects/rtaudio">RtAudio at SourceForge</A>
54
55 */