enable selective exports in CMake builds
[rtaudio-cdist.git] / doc / release.txt
index 4bccff856aa32f9f15489940702ab40f8e4ea9ea..c8ef594217ac3d12fd67e89646729371cf7fff18 100644 (file)
@@ -1,6 +1,99 @@
-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.
+RtAudio - a set of C++ classes that provide a common API for realtime audio input/output across Linux (native ALSA, JACK, PulseAudio, and OSS), Macintosh OS X (CoreAudio and JACK), and Windows (DirectSound, ASIO and WASAPI) operating systems.
 
-By Gary P. Scavone, 2001-2008.
+By Gary P. Scavone, 2001-2017.
+
+v5.0.0: (30 August 2017)
+- see git history for complete list of changes
+- WASAPI updates (thanks to Marcus Tomlinson)
+- minor exception semantic changes
+- miscellaneous build system updates
+
+v4.1.2: (22 February 2016)
+- added more complete automake support (thanks to Stephen Sinclair)
+- miscellaneous small fixes and updates, see github repo commit history for details
+
+v4.1.1: (26 April 2014)
+- updates to WASAPI API for MinGW compiling
+- WASAPI bug fixes for audio INPUT mode
+- DirectSound bug fix for INPUT mode
+- Bug fixes in Core, Jack, ASIO and DS for internal draining in INPUT mode
+- updates to test programs for default device specifiers
+- CMake buildfile update for WASAPI
+- new setStreamTime function
+
+v4.1.0: (10 April 2014)
+- RtError class renamed RtAudioError and embedded in RtAudio.h (RtError.h deleted)
+- 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 related to error when opening a stream after closing a previously open stream
+
+v4.0.12: (16 April 2013)
+- 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)
+
+v4.0.11: (14 June 2012)
+- fixes for memory leaks in ALSA (thanks to Martin Koegler)
+- PulseAudio API support added (thanks to Peter Meerwald and Tristan Matthews)
+- bitwise format flag fixes in OS-X (Benjamin Schroeder and Stefan Arisona)
+- changes to stopStream / drain flag to avoid hung state in ASIO, DS, OS-X, and Jack APIs (Rasmus Ekman and Carlos Luna)
+
+v4.0.10: (30 August 2011)
+- fix for compile bug in Windows DS (counting devices)
+- update to configure and library Makefile
+
+v4.0.9: (14 August 2011)
+- fix for ASIO problem enumerating devices after opening duplex stream (Oliver Larkin)
+- fix for OS-X problems setting sample rate and bits-per-sample
+- updates for OS-X "Lion"
+- updates for wide character support in Windows DS (UNICODE)
+- fix for possible ALSA callback thread hang (thanks to Tristan Matthews)
+- fix for DS getDeviceCount bug (vector erase problem)
+
+v4.0.8: (12 April 2011)
+- fix for MinGW4 problem enumerating and setting sample rates (iasiothiscallresolver, Dmitry Kostjuchenko)
+- fix for OS-X problem handling device names in some languages (CFString conversion, Vincent BĂ©nony)
+- small change to OS-X mutex lock location to avoid lockups
+- correction to documentation regarding 24-bit data (should be lower 3 bytes, not upper 3 bytes)
+- bug fix for error handling of warnings (Antoine Lefebvre)
+- added option to use the ALSA "default" device (Tristan Matthews)
+- removed use of mutexes in Windows
+- fix for ASIO4ALL behavior when stopping/closing streams (Antoine Lefebvre)
+- included python binding in "contrib" directory (beta, Antoine Lefebvre)
+
+v4.0.7: (4 February 2010)
+- revised Windows DS code and device enumeration to speed up device queries
+- OS-X 10.6 updates for deprecated functions
+- updates to Jack shutdown code to avoid lockup
+
+v4.0.6: (3 June 2009)
+- bug fix in ALSA code to set period size to power of two (thanks to Joakim Karrstrom)
+- bug fix in OS-X for OS < 10.5 ... need preprocessor definition around new variable type (thanks to Tristan Matthews)
+
+v4.0.5: (2 February 2009)
+- added support in CoreAudio for arbitrary stream channel configurations
+- added getStreamSampleRate() function because the actual sample rate can sometimes vary slightly from the specified one (thanks to Theo Veenker)
+- added new StreamOptions flag "RTAUDIO_SCHEDULE_REALTIME" and attribute "priority" to StreamOptions (thanks to Theo Veenker)
+- replaced usleep(50000) in callbackEvent() by a wait on condition variable which gets signaled in startStream() (thanks to Theo Veenker)
+- fix for Jack API when user callback function signals stop or abort calls
+- fix to way stream state is changed to avoid infinite loop problem
+- fix to int<->float conversion in convertBuffer() (thanks to Theo Veenker)
+- bug fix in byteSwapBuffer() (thanks to Stefan Muller Arisona and Theo Veenker)
+- fixed a few gcc 4.4 errors in OS-X
+- fixed bug in rtaudio-config script
+- revised configure script and Makefile structures
+- 64-bit fixes in ALSA API (thanks to Stefan Muller Arisona)
+- fixed ASIO sample rate selection bug (thanks to Sasha Zheligovsky)
 
 v4.0.4: (24 January 2008)
 - added functionality to allow getDeviceInfo() to work in ALSA for an open device (like ASIO)