-
Notifications
You must be signed in to change notification settings - Fork 7
/
Copy pathCHANGELOG
232 lines (137 loc) · 7.08 KB
/
CHANGELOG
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
2023-11-04 Hubert Pham <[email protected]>
PyAudio 0.2.14
* Fix installation breakage.
Removes specific version requirement for setuptools in pyproject.toml.
* Various cosmetic fixes.
2022-12-26 Hubert Pham <[email protected]>
PyAudio 0.2.13
* Move pyaudio.Stream to pyaudio.PyAudio.Stream.
The pyaudio.Stream class is now pyaudio.PyAudio.Stream, nested under the
existing pyaudio.PyAudio class. This should not affect existing code, as
directly accessing the module-level pyaudio.Stream class has always been
unsupported (use PyAudio.open instead). Accessing pyaudio.Stream
directly is deprecated and will raise a DeprecationWarning.
* Deprecate PaMacCoreStreamInfo's get_channel_map() and get_flags() methods.
Use the channel_map and flags properties, respectively, instead. Also
deprecates internal method _get_host_api_stream_object. Calling
deprecated methods will raise a DeprecationWarning.
* Package PyAudio as an actual package (directory).
Previously, the library deployed a single pyaudio.py file and a C
extension module to the root of site-packages. Now, the library deploys
a Python package.
* Add default shared library path for Homebrew installations on Apple Silicon.
* Refactor and cleanup.
- Refactor C extension for better maintainability.
- Add more unit tests.
- Update and modernize examples directory.
- Improve C and python style conformance, plus many cosmetic updates.
2022-07-18 Hubert Pham <[email protected]>
PyAudio 0.2.12
- Modernize build process for Microsoft Windows, using the native toolchain.
Setuptool setup.py and INSTALL instructions are more streamlined.
Building from Cygwin/MinGW is no longer supported nor tested.
Thanks to Sean Zimmermann for the patches and general help!
- Change default frames per buffer size to paFramesPerBufferUnspecified.
Previously, pyaudio.py set a default frames per buffer size of 1024,
which can lead to dropped frames on some systems. Now, by default,
PortAudio selects the buffer size based on host and latency
requirements.
Thanks to Jason Hihn for the suggestion!
- Minor fixes and refactoring for compatibility with Python 3.7+.
Updates include:
* Remove call to deprecated PyEval_InitThreads() for Python 3.7+
* Use Py_ssize_t types in appropriate places (for Python 3.10+).
* Remove the min macro to ease compilation for Windows.
- Use the locale's preferred encoding to decode device names.
Thanks to Eiichi Takamori for the patch!
- Unit tests: add skipIf decorators to skip tests that require hardware.
Set the PYAUDIO_SKIP_HW_TESTS environment variable to disable tests that
require sound hardware, useful for (automated) test environments without
access to audio devices.
Thanks to Matěj Cepl for the suggestion and patch!
- Documentation, examples, and unit tests: various fixes.
* Add more unit tests and repair a few that test the GIL on macOS.
* Remove examples/error.py, which is redundant with tests/error_tests.py.
* Fix type documentation of return value types in docstrings.
Thanks to Vasily Zakharov for pointing out the return-value type errors!
- Modernize packaging: add LICENSE.txt, pyproject.toml, and classifiers.
2017-03-18 Hubert Pham <[email protected]>
PyAudio 0.2.11
- Fix use-after-free memory issue in callback handler.
Thanks to both Blaise Potard and Matthias Schaff for their patches!
- Fix docstring for get_output_latency().
Thanks to Timothy Port for finding the issue!
2017-01-10 Hubert Pham <[email protected]>
PyAudio 0.2.10
- Release the GIL during PortAudio I/O calls to avoid potential deadlock.
Thanks to Michael Graczyk for submitting a patch!
- Add a few automated unit tests.
2015-10-18 Hubert Pham <[email protected]>
PyAudio 0.2.9
- Fix overflow error handling logic for pa_read_stream.
Stream.read takes an additional parameter that specifies whether
an exception is raised on audio buffer overflow, for parity with
Stream.write. Includes relevant bug fixes in the C module logic.
Thanks to Tony Jacobson for submitting a patch!
- Fix IOError arguments.
IOError exceptions previously had values in the strerror and errno fields
swapped, which is now corrected.
Thanks to Sami Liedes for the report!
- Miscellaneous updates.
Python library surfaces issues with importing low-level C module.
Code formatting update.
Updates to examples for Python 3 compatibility.
2014-02-16 Hubert Pham <[email protected]>
PyAudio 0.2.8
- Device names: support non-UTF8 encoded device names.
get_device_info_by_index() now attempts to decode the device name
using a few known encodings (defaults to UTF-8 and CP1252). If
those fail, PyAudio passes the raw bytes for the device name.
Previously, PyAudio assumed a UTF-8 encoding, which is not always
true.
- Callback-mode: fix deadlock on some platforms when calling
pa.stop_stream.
Thanks to Jason Roehm for this patch!
2012-10-20 Hubert Pham <[email protected]>
PyAudio 0.2.7
- Callback-mode: support callables.
Thanks to John Luebs and Bastian Bechtold for this patch.
- Update documentation to use Sphinx.
Thanks again to Bastian Bechtold for his incredible contribution!
2012-09-01 Hubert Pham <[email protected]>
PyAudio 0.2.6
- Added support for Python 3. As of this update, PyAudio is
compatible with Python 2.6, Python 2.7, and Python 3.2.
Many thanks to Bastian Bechtold and Bob Jamison for their patches!
- Fixed a bug in which a list could be modified during iteration.
Many thanks to Danilo J. S. Bellini for reporting this error!
- Fixed a memory bug involving Mac OS X channel maps.
2012-09-01 Hubert Pham <[email protected]>
PyAudio 0.2.5
- Added support for callback (non-blocking) operation.
Many thanks to Bastian Bechtold for his initial contribution and
his generous help towards releasing this feature. Callback mode
would not have happened without Bastian's help!
2010-08-12 Hubert Pham <[email protected]>
PyAudio 0.2.4
- Maintenance release: updated directory structure and packaging.
2008-10-29 Hubert Pham <[email protected]>
PyAudio 0.2.3
- Release the GIL during blocking PortAudio I/O calls.
- Fixed Python argument parsing to use a long for PaSampleFormat
(rather than int).
Thanks to many who have pointed out these two issues and sent
patches.
- pyaudio.PyAudio.is_format_supported() now throws a ValueError
exception if the specified format is not supported for any reason
(or returns True if the format is supported).
Prior, the method would return False if and only if the specified
sample rate was unsupported. is_format_supported() now will always
return True or throw an exception.
2008-03-06 Hubert Pham <[email protected]>
PyAudio 0.2.0
- Added PaMacCoreStreamInfo for Mac OS X Host API Specific Stream Info
(e.g., for channel maps).
- Added packaging files for building binaries.
2008-02-12 Justin Mazzola Paluska <[email protected]>
- Initial version of debian packaging.