Various updates in ALSA for probing while device is open and in Windows for thread...
[rtaudio-cdist.git] / doc / release.txt
1 RtAudio - a set of C++ classes that provide a common API for realtime audio input/output across Linux (native ALSA, JACK, and OSS), Macintosh OS X (CoreAudio and JACK), and Windows (DirectSound and ASIO) operating systems.
2
3 By Gary P. Scavone, 2001-2008.
4
5 v4.0.4: ()
6 - added functionality to allow getDeviceInfo() to work in ALSA on an open device (like ASIO)
7 - fixes in configure script
8 - fixed clearing of error message stream in error()
9 - fixed RtAudio::DeviceInfo description in "probing" documentation
10 - memory leak fixes in ALSA and OSS
11 - Jack in/out port flag fix
12 - Windows changes for thread priority and GLOBALFOCUS
13
14 v4.0.3: (7 December 2007)
15 - added support for MinGW compiler to configure script
16 - a few MinGW-related changes to RtAudio.cpp
17 - renamed test program probe.cpp to audioprobe.cpp
18 - moved various header files into single "include" directory and updated VC++ project files
19
20 v4.0.2: (21 August 2007)
21 - fix to RtError::WARNING typo in RtAudio.h (RtApiDummy)
22 - removed "+1"s in RtApiCore c++ append when getting device name
23
24 v4.0.1: (13 August 2007)
25 - fix to RtError::WARNING typo in RtAudio.cpp
26
27 v4.0.0: (7 August 2007)
28 - new support for non-interleaved user data
29 - additional input/output parameter specifications, including channel offset
30 - new support for dynamic connection of devices
31 - new support for stream time
32 - revised callback arguments, including separate input and output buffer arguments
33 - revised C++ exception handling
34 - revised OSS support for version 4.0
35 - discontinued support of blocking functionality
36 - discontinued support of SGI
37 - Windows DirectSound API bug fix
38 - NetBSD support (using OSS API) by Emmanuel Dreyfus
39 - changed default pthread scheduling priority to SCHED_RR when defined in the system
40 - new getCompiledApi() static function
41 - new getCurrentApi(), getStreamTime(), getStreamLatency(), and isStreamRunning() functions
42 - modified RtAudioDeviceInfo structure to distinguish default input and output devices
43
44 v3.0.3: (18 November 2005)
45 - UNICODE fix for Windows DirectSound API
46 - MinGW compiler fix for ASIO API
47
48 v3.0.2: (14 October 2005)
49 - modification of ALSA read/write order to fix duplex under/overruns
50 - added synchronization of input/output devices for ALSA duplex operation
51 - cleaned up and improved error reporting throughout
52 - bug fix in Windows DirectSound support for 8-bit audio
53 - bug fix in Windows DirectSound support during device capture query
54 - added ASIOOutputReady() call near end of callbackEvent to fix some driver behavior
55 - added #include <stdio.h> to RtAudio.cpp
56 - fixed bug in RtApiCore for duplex operation with different I/O devices
57 - improvements to DirectX pointer chasing (by Robin Davies)
58 - backdoor RtDsStatistics hook provides DirectX performance information (by Robin Davies)
59 - bug fix for non-power-of-two Asio granularity used by Edirol PCR-A30 (by Robin Davies)
60 - auto-call CoInitialize for DSOUND and ASIO platforms (by Robin Davies)
61
62 v3.0.1: (22 March 2004)
63 - bug fix in Windows DirectSound support for cards with output only
64
65 v3.0: (11 March 2004)
66 - added Linux Jack audio server support
67 - new multi-api support by subclassing all apis and making rtaudio a controller class
68 - added over/underload check to Mac OS X support
69 - new scheme for blocking functionality in callback-based apis (CoreAudio, ASIO, and JACK)
70 - removed multiple stream support (all stream indentifier arguments removed)
71 - various style and name changes to conform with standard C++ practice
72
73 v2.1.1: (24 October 2002)
74 - bug fix in duplex for Mac OS X and Windows ASIO code
75 - duplex example change in tutorial 
76
77 v2.1: (7 October 2002)
78 - added Mac OS X CoreAudio support
79 - added Windows ASIO support
80 - API change to getDeviceInfo(): device argument must be an integer between 1 - getDeviceCount().
81 - "configure" support added for unix systems
82 - adopted MIT-like license
83 - various internal structural changes and bug fixes
84
85 v2.01: (27 April 2002)
86 - Windows destructor bug fix when no devices available
87 - RtAudioError class renamed to RtError
88 - Preprocessor definitions changed slightly (i.e. __LINUX_OSS_ to __LINUX_OSS__) to conform with new Synthesis ToolKit distribution
89
90 v2.0: (22 January 2002)
91 - first release of new independent class
92