Renamed RtError class to RtAudioError and embedded it in RtAudio.h.
[rtaudio-cdist.git] / doc / doxygen / tutorial.txt
index a8dfd256a7ca5c24dcb45b00ee7a42b1de8cae5b..be72425bd1447b1fc0e516cf2d51b18be3bf3a57 100644 (file)
@@ -1,11 +1,11 @@
 /*! \mainpage The RtAudio Home Page
 
-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 (DirectSound and ASIO) operating systems.  RtAudio significantly simplifies the process of interacting with computer audio hardware.  It was designed with the following objectives:
+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:
 
 <UL>
   <LI>object-oriented C++ design</LI>
   <LI>simple, common API across all supported platforms</LI>
-  <LI>only one source and two header files for easy inclusion in programming projects</LI>
+  <LI>only one source and one header file for easy inclusion in programming projects</LI>
   <LI>allow simultaneous multi-api support</LI>
   <LI>support dynamic connection of devices</LI>
   <LI>provide extensive audio device parameter control</LI>
@@ -15,24 +15,21 @@ RtAudio is a set of C++ classes that provide a common API (Application Programmi
 
 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.
 
-\section whatsnew What's New (Version 4.0)
+\section whatsnew Latest Updates (Version 4.0.12)
 
-RtAudio 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:
-- new support for non-interleaved user data
-- additional input/output parameter specifications, including channel offset
-- new support for dynamic connection of devices
-- new support for stream time
-- revised callback arguments, including separate input and output buffer arguments
-- revised C++ exception handling
-- updated support for OSS version 4.0
-- discontinued support of blocking functionality
-- discontinued support of SGI
-
-Devices are now re-enumerated every time the RtAudio::getDeviceCount(), RtAudio::getDeviceInfo(), and RtAudio::openStream() functions are called.  This allows for the proper identification of hot-pluggable (USB, Firewire, ...) devices that are connected after an RtAudio instance is created.
+- new functionality to allow error reporting via a client-supplied function (thanks to Pavel Mogilevskiy)
+- new function to return the version number
+- updated RtAudio.cpp and ASIO files for UNICODE support (thanks to Renaud Schoonbroodt)
+- updates to PulseAudio API support (thanks to Peter Meerwald and Tristan Matthews)
+- updates for pkg-config support in configure script
+- 24-bit format changed to true 24-bit format, not sub-bytes of 32-bits (thanks to Marc Britton)
+- bug fixes to make sure stream status is closed if error during probeDeviceOpen
+- updates / fixes to SCHED_RR code in ALSA (thanks to Marc Lindahl)
+- various changes to avoid global variables (thanks to Martin Koegler)
 
 \section download Download
 
-Latest Release (3 June 2009): <A href="http://www.music.mcgill.ca/~gary/rtaudio/release/rtaudio-4.0.6.tar.gz">Version 4.0.6</A>
+Latest Release (16 April 2013): <A href="http://www.music.mcgill.ca/~gary/rtaudio/release/rtaudio-4.0.12.tar.gz">Version 4.0.12</A>
 
 \section documentation Documentation Links