Update to CMake file for WASAPI; documentation update for CMake; finalized date for...
[rtaudio-cdist.git] / doc / doxygen / tutorial.txt
index 2ab0f1f05bc8ca22ac841a9f2ee45433d47065ea..fc1a226fdb74edf3559f3fa0467745b5dd5a32ac 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,23 @@ 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.1.0)
 
-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
+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.
 
-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.
+Other changes in this release include:
+
+- new support for the Windows WASAPI API (thanks to Marcus Tomlinson)
+- CMake support (thanks to Berkus Decker)
+- pulse audio update to support bufferFrames argument with audio input (thanks to Jonatan Wallmander)
+- fixes for ALSA API to avoid high CPU usage during stops and to clear stale data before input (thanks to Pluto Hades)
+- miscellaneous efficiency updates suggested by Martin Koegler
+- bug fix for OS-X xrun reporting problem
+- bug fix if error when opening a stream after closing a previously open stream
 
 \section download Download
 
-Latest Release (21 August 2007): <A href="http://music.mcgill.ca/~gary/rtaudio/release/rtaudio-4.0.2.tar.gz">Version 4.0.2</A>
+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>
 
 \section documentation Documentation Links
 
@@ -47,8 +46,8 @@ Latest Release (21 August 2007): <A href="http://music.mcgill.ca/~gary/rtaudio/r
 -# \ref apinotes
 -# \ref acknowledge
 -# \ref license
--# <A href="bugs.html">Bug Tracker</A>
--# <A href="updates.html">Possible Updates</A>
--# <A href="http://sourceforge.net/projects/rtaudio">RtAudio at SourceForge</A>
+-# <A href="bugs.html">Bug Tracker (out of date)</A>
+-# <A href="updates.html">Possible Updates (out of date)</A>
+-# <A href="http://github.com/thestk/rtaudio">RtAudio on GitHub</A>
 
 */