- 0.5.1 (2024-10-12):
- Windows wheel: bundle both non-ASIO and ASIO DLLs, the latter can be chosen
by defining the
SD_ENABLE_ASIO
environment variable
- Windows wheel: bundle both non-ASIO and ASIO DLLs, the latter can be chosen
by defining the
- 0.5.0 (2024-08-11):
- Remove ASIO support from bundled DLLs (DLLs with ASIO can be manually selected)
- 0.4.7 (2024-05-27):
- support
paWinWasapiAutoConvert
withauto_convert
flag in WasapiSettings - Avoid exception in PortAudioError
.__str__()
- support
- 0.4.6 (2023-02-19):
- Redirect stderr with
os.dup2()
instead of CFFI calls
- Redirect stderr with
- 0.4.5 (2022-08-21):
- Add
index
field to device dict - Require Python >= 3.7
- Add PaWasapi_IsLoopback() to cdef (high-level interface not yet available)
- Add
- 0.4.4 (2021-12-31):
- Exact device string matches can now include the host API name
- 0.4.3 (2021-10-20):
- Fix dimension check in Stream.write()
- Provide "universal" (x86_64 and arm64)
.dylib
for macOS
- 0.4.2 (2021-07-18):
- Update PortAudio binaries to version 19.7.0
- Wheel names are now shorter
- 0.4.1 (2020-09-26):
- CallbackFlags attributes are now writable
- 0.4.0 (2020-07-18):
- Drop support for Python 2.x
- Fix memory issues in play(), rec() and playrec()
- Example application
play_stream.py
- 0.3.15 (2020-03-18):
- This will be the last release supporting Python 2.x!
- 0.3.14 (2019-09-25):
- Examples
play_sine.py
andrec_gui.py
- Redirect
stderr
only during initialization
- Examples
- 0.3.13 (2019-02-27):
- Examples
asyncio_coroutines.py
andasyncio_generators.py
- Examples
- 0.3.12 (2018-09-02):
- Support for the dylib from Anaconda
- 0.3.11 (2018-05-07):
- Support for the DLL from
conda-forge
- Support for the DLL from
- 0.3.10 (2017-12-22):
- Change the way how the PortAudio library is located
- 0.3.9 (2017-10-25):
- Add Stream.closed
- Switch CFFI usage to "out-of-line ABI" mode
- 0.3.8 (2017-07-11):
- Add more
ignore_errors
arguments - Add PortAudioError.args
- Add CoreAudioSettings
- Add more
- 0.3.7 (2017-02-16):
- Add get_stream()
- Support for CData function pointers as callbacks
- 0.3.6 (2016-12-19):
- Example application
play_long_file.py
- Example application
- 0.3.5 (2016-09-12):
- Add
extra_settings
option for host-API-specific stream settings - Add AsioSettings and WasapiSettings
- Add
- 0.3.4 (2016-08-05):
- Example application
rec_unlimited.py
- Example application
- 0.3.3 (2016-04-11):
- Add
loop
argument to play()
- Add
- 0.3.2 (2016-03-16):
mapping=[1]
works now on all host APIs- Example application
plot_input.py
showing the live microphone signal(s) - Device substrings are now allowed in query_devices()
- 0.3.1 (2016-01-04):
- Add check_input_settings() and check_output_settings()
- Send PortAudio output to
/dev/null
(on Linux and OSX)
- 0.3.0 (2015-10-28):
- Remove
print_devices()
, query_devices() can be used instead, since it now returns a DeviceList object.
- Remove
- 0.2.2 (2015-10-21):
- Devices can now be selected by substrings of device name and host API name
- 0.2.1 (2015-10-08):
- Example applications
wire.py
(based on PortAudio'spatest_wire.c
) andspectrogram.py
(based on code by Mauris Van Hauwe)
- Example applications
- 0.2.0 (2015-07-03):
- Support for wheels including a dylib for Mac OS X and DLLs for Windows. The code for creating the wheels is largely taken from the soundfile module.
- Remove logging (this seemed too intrusive)
- Return callback status from wait() and add the new function get_status()
- playrec(): Rename the arguments input_channels and input_dtype to channels and dtype, respectively
- 0.1.0 (2015-06-20):
- Initial release. Some ideas are taken from PySoundCard. Thanks to Bastian Bechtold for many fruitful discussions during the development of several features which python-sounddevice inherited from there.