@@ -4,7 +4,7 @@ | |||||
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. | 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-2017 (and many other developers!) | |||||
By Gary P. Scavone, 2001-2019 (and many other developers!) | |||||
This distribution of RtAudio contains the following: | This distribution of RtAudio contains the following: | ||||
@@ -38,7 +38,7 @@ For complete documentation on RtAudio, see the doc directory of the distribution | |||||
The RtAudio license is similar to the MIT License. | The RtAudio license is similar to the MIT License. | ||||
RtAudio: a set of realtime audio i/o C++ classes | RtAudio: a set of realtime audio i/o C++ classes | ||||
Copyright (c) 2001-2017 Gary P. Scavone | |||||
Copyright (c) 2001-2019 Gary P. Scavone | |||||
Permission is hereby granted, free of charge, to any person | Permission is hereby granted, free of charge, to any person | ||||
obtaining a copy of this software and associated documentation files | obtaining a copy of this software and associated documentation files | ||||
@@ -11,7 +11,7 @@ | |||||
RtAudio WWW site: http://www.music.mcgill.ca/~gary/rtaudio/ | RtAudio WWW site: http://www.music.mcgill.ca/~gary/rtaudio/ | ||||
RtAudio: realtime audio i/o C++ classes | RtAudio: realtime audio i/o C++ classes | ||||
Copyright (c) 2001-2017 Gary P. Scavone | |||||
Copyright (c) 2001-2019 Gary P. Scavone | |||||
Permission is hereby granted, free of charge, to any person | Permission is hereby granted, free of charge, to any person | ||||
obtaining a copy of this software and associated documentation files | obtaining a copy of this software and associated documentation files | ||||
@@ -39,7 +39,7 @@ | |||||
*/ | */ | ||||
/************************************************************************/ | /************************************************************************/ | ||||
// RtAudio: Version 5.0.0 | |||||
// RtAudio: Version 5.1.0 | |||||
#include "RtAudio.h" | #include "RtAudio.h" | ||||
#include <iostream> | #include <iostream> | ||||
@@ -11,7 +11,7 @@ | |||||
RtAudio WWW site: http://www.music.mcgill.ca/~gary/rtaudio/ | RtAudio WWW site: http://www.music.mcgill.ca/~gary/rtaudio/ | ||||
RtAudio: realtime audio i/o C++ classes | RtAudio: realtime audio i/o C++ classes | ||||
Copyright (c) 2001-2017 Gary P. Scavone | |||||
Copyright (c) 2001-2019 Gary P. Scavone | |||||
Permission is hereby granted, free of charge, to any person | Permission is hereby granted, free of charge, to any person | ||||
obtaining a copy of this software and associated documentation files | obtaining a copy of this software and associated documentation files | ||||
@@ -46,7 +46,7 @@ | |||||
#ifndef __RTAUDIO_H | #ifndef __RTAUDIO_H | ||||
#define __RTAUDIO_H | #define __RTAUDIO_H | ||||
#define RTAUDIO_VERSION "5.0.0" | |||||
#define RTAUDIO_VERSION "5.1.0" | |||||
#if defined _WIN32 || defined __CYGWIN__ | #if defined _WIN32 || defined __CYGWIN__ | ||||
#if defined(RTAUDIO_EXPORT) | #if defined(RTAUDIO_EXPORT) | ||||
@@ -1,5 +1,5 @@ | |||||
# Process this file with autoconf to produce a configure script. | # Process this file with autoconf to produce a configure script. | ||||
AC_INIT(RtAudio, 5.0.0, gary@music.mcgill.ca, rtaudio) | |||||
AC_INIT(RtAudio, 5.1.0, gary@music.mcgill.ca, rtaudio) | |||||
AC_CONFIG_AUX_DIR(config) | AC_CONFIG_AUX_DIR(config) | ||||
AC_CONFIG_SRCDIR(RtAudio.cpp) | AC_CONFIG_SRCDIR(RtAudio.cpp) | ||||
AC_CONFIG_FILES([rtaudio.pc Makefile tests/Makefile doc/Makefile doc/doxygen/Doxyfile]) | AC_CONFIG_FILES([rtaudio.pc Makefile tests/Makefile doc/Makefile doc/doxygen/Doxyfile]) | ||||
@@ -19,7 +19,7 @@ AM_INIT_AUTOMAKE([1.14 -Wall -Werror foreign subdir-objects]) | |||||
# If any interfaces have been removed since the last public release, then set | # If any interfaces have been removed since the last public release, then set | ||||
# age to 0. | # age to 0. | ||||
m4_define([lt_current], 6) | m4_define([lt_current], 6) | ||||
m4_define([lt_revision], 0) | |||||
m4_define([lt_revision], 1) | |||||
m4_define([lt_age], 0) | m4_define([lt_age], 0) | ||||
m4_define([lt_version_info], [lt_current:lt_revision:lt_age]) | m4_define([lt_version_info], [lt_current:lt_revision:lt_age]) | ||||
@@ -4,21 +4,40 @@ Many thanks to the following people for providing bug fixes and improvements: | |||||
<UL> | <UL> | ||||
<LI>Stephen Sinclair (major code and repository support!)</LI> | <LI>Stephen Sinclair (major code and repository support!)</LI> | ||||
<LI>Stefan Arisona</LI> | <LI>Stefan Arisona</LI> | ||||
<LI>bejuryu</LI> | |||||
<LI>Vincent Bénony</LI> | <LI>Vincent Bénony</LI> | ||||
<LI>Francesco Bertolaccini</LI> | |||||
<LI>Benjamin Brown</LI> | |||||
<LI>Claudio Cabral</LI> | |||||
<LI>JP Cimalando</LI> | |||||
<LI>Rasmus Ekman</LI> | <LI>Rasmus Ekman</LI> | ||||
<LI>Anders Ervik</LI> | <LI>Anders Ervik</LI> | ||||
<LI>Robin Davies (Windows DS and ASIO)</LI> | <LI>Robin Davies (Windows DS and ASIO)</LI> | ||||
<LI>Marcelo Fernandez</LI> | |||||
<LI>Taylor Holberton</LI> | |||||
<LI>Martin Koegler</LI> | <LI>Martin Koegler</LI> | ||||
<LI>Dmitry Kostjuchenko</LI> | <LI>Dmitry Kostjuchenko</LI> | ||||
<LI>Oliver Larkin</LI> | <LI>Oliver Larkin</LI> | ||||
<LI>Jakob Leben</LI> | |||||
<LI>Antoine Lefebvre</LI> | <LI>Antoine Lefebvre</LI> | ||||
<LI>Carlos Luna</LI> | <LI>Carlos Luna</LI> | ||||
<LI>Connor MacDonald</LI> | |||||
<LI>Jasper Mackenzie</LI> | |||||
<LI>Dominic Mazzoni</LI> | <LI>Dominic Mazzoni</LI> | ||||
<LI>Tristan Matthews</LI> | <LI>Tristan Matthews</LI> | ||||
<LI>Peter Meerwald (PulseAudio)</LI> | <LI>Peter Meerwald (PulseAudio)</LI> | ||||
<LI>Jaromir Mikeš</LI> | |||||
<LI>rehans</LI> | |||||
<LI>Sebastian Reimers</LI> | |||||
<LI>Ryan Schmidt</LI> | |||||
<LI>Benjamin Schroeder</LI> | <LI>Benjamin Schroeder</LI> | ||||
<LI>sonoro1234</LI> | |||||
<LI>terminator356</LI> | |||||
<LI>Marcus Tomlinson (WASAPI)</LI> | |||||
<LI>Ryan Williams (Windows non-MS compiler ASIO support)</LI> | <LI>Ryan Williams (Windows non-MS compiler ASIO support)</LI> | ||||
<LI>Ed Wildgoose (Linux ALSA and Jack)</LI> | <LI>Ed Wildgoose (Linux ALSA and Jack)</LI> | ||||
<LI>Serge Zaitsev</LI> | |||||
<LI>Iohannes Zmölnig</LI> | |||||
</UL> | </UL> | ||||
@@ -1,7 +1,7 @@ | |||||
<HR> | <HR> | ||||
<table><tr><td><img src="../images/mcgill.gif" width=165></td> | <table><tr><td><img src="../images/mcgill.gif" width=165></td> | ||||
<td>©2001-2017 Gary P. Scavone, McGill University. All Rights Reserved.<br>Maintained by <a href="http://www.music.mcgill.ca/~gary/">Gary P. Scavone</a>.</td></tr> | |||||
<td>©2001-2019 Gary P. Scavone, McGill University. All Rights Reserved.<br>Maintained by <a href="http://www.music.mcgill.ca/~gary/">Gary P. Scavone</a>.</td></tr> | |||||
</table> | </table> | ||||
</BODY> | </BODY> | ||||
@@ -1,7 +1,7 @@ | |||||
/*! \page license License | /*! \page license License | ||||
RtAudio: a set of realtime audio i/o C++ classes<BR> | RtAudio: a set of realtime audio i/o C++ classes<BR> | ||||
Copyright (c) 2001-2017 Gary P. Scavone | |||||
Copyright (c) 2001-2019 Gary P. Scavone | |||||
Permission is hereby granted, free of charge, to any person | Permission is hereby granted, free of charge, to any person | ||||
obtaining a copy of this software and associated documentation files | obtaining a copy of this software and associated documentation files | ||||
@@ -66,6 +66,8 @@ The \c nativeFormats member of the RtAudio::DeviceInfo structure is a bit mask o | |||||
Some audio devices may require a minimum channel value greater than one. RtAudio will provide automatic channel number compensation when the number of channels set by the user is less than that required by the device. Channel compensation is <I>NOT</I> possible when the number of channels set by the user is greater than that supported by the device. | Some audio devices may require a minimum channel value greater than one. RtAudio will provide automatic channel number compensation when the number of channels set by the user is less than that required by the device. Channel compensation is <I>NOT</I> possible when the number of channels set by the user is greater than that supported by the device. | ||||
It should be noted that the capabilities reported by a device driver or underlying audio API are not always accurate and/or may be dependent on a combination of device settings. For this reason, RtAudio does not rely on the queried values when attempting to open a stream. | |||||
Note that the device enumeration is system specific and will change if any devices are plugged or unplugged by the user. Thus, the device numbers should be verified immediately before opening a stream. As well, if a user unplugs a device while an open stream is using that device, the resulting stream behaviour will be undefined (a system error will likely be generated). | |||||
Also, the capabilities reported by a device driver or underlying audio API are not always accurate and/or may be dependent on a combination of device settings. For this reason, RtAudio does not rely on the queried values when attempting to open a stream. | |||||
*/ | */ |
@@ -13,18 +13,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. | 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 Latest Updates (Version 5.0.0) | |||||
\section whatsnew Latest Updates (Version 5.1.0) | |||||
The version number has been bumped to 5.0.0 because of the past API change concerning the renaming of the RtError class to RtAudioError. Changes in this release include: | |||||
Changes in this release include: | |||||
- WASAPI updates (thanks to Marcus Tomlinson) | |||||
- minor exception semantic changes | |||||
- new C API wrapper | |||||
- new functions to get API names | |||||
- many WASAPI updates (thanks to Marcus Tomlinson) | |||||
- miscellaneous build system updates | - miscellaneous build system updates | ||||
- bug fix for stream ticking in CoreAudio if using two devices for duplex | |||||
- ALSA stream handle bug fixes | |||||
- see git history for complete list of changes | - see git history for complete list of changes | ||||
\section download Download | \section download Download | ||||
Latest Release (30 August 2017): <A href="http://www.music.mcgill.ca/~gary/rtaudio/release/rtaudio-5.0.0.tar.gz">Version 5.0.0</A> | |||||
Latest Release (17 April 2019): <A href="http://www.music.mcgill.ca/~gary/rtaudio/release/rtaudio-5.1.0.tar.gz">Version 5.1.0</A> | |||||
\section documentation Documentation Links | \section documentation Documentation Links | ||||
@@ -1,6 +1,15 @@ | |||||
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. | 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-2017. | |||||
By Gary P. Scavone, 2001-2019. | |||||
v.5.1.0: (17 April 2019) | |||||
- see git history for complete list of changes | |||||
- many WASAPI updates (thanks to Marcus Tomlinson) | |||||
- miscellaneous build system updates | |||||
- bug fix for stream ticking in OS-X if using two devices for duplex | |||||
- ALSA stream handle bug fixes | |||||
- new C API wrapper | |||||
- new functions to get API names | |||||
v5.0.0: (30 August 2017) | v5.0.0: (30 August 2017) | ||||
- see git history for complete list of changes | - see git history for complete list of changes | ||||
@@ -1,6 +1,6 @@ | |||||
RtAudio - a set of C++ classes which 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. | RtAudio - a set of C++ classes which 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-2017. | |||||
By Gary P. Scavone, 2001-2019. | |||||
To configure and compile (on Unix systems and MinGW): | To configure and compile (on Unix systems and MinGW): | ||||