Releases: LCAV/pyroomacoustics
Releases · LCAV/pyroomacoustics
v0.7.7
Bugfix
- Fixes a bug when plotting an anechoic room
- Fixes a buggy assert from
rir_build.cpp
- Makes the build system consistent for all source files in
pyroomacoustics/libroom_src
- Fixes a call to a deprecated function of scipy.integrate in
pyroomacoustics/denoise/iterative_wiener
(issue #362)
v0.7.6
Bugfix
- Fixes the default value of
energy_thres
inexperimental.rt60
to match the
previous behavior of the function (issue #358) - Further fixes issue with cast reflections delays to float32 in room.py (#353)
which was not fully fixed by the previous update - Fixes calls to deprecated API of
scipy.linalg.eigh
- Fixes use of deprecated feature of numpy (conversion of singleton array to scalar)
v0.7.5
Changed
- Extra parameter
energy_thresh
added topyroomacoustics.experimental.measure_rt60
.
The energy tail beyond this threshold is discarded which is useful for noisy RIR
measurements. The default value is 0.95.
Bugfix
- Fixes a bug in
beamforming.circular_microphone_array_xyplane
(#348) - Fixes a bug in
room.Room.plot_rir
where the x-axis would have the wrong
ticks when called withkind="tf"
- Fixes an issue where the
visibility
attribute of the room is not
set if there are no visible source or image source in the room. (#313) - Fixes issue with cast reflections delays to float32 in
room.py
(#353) - Fixes calls to
numpy.linalg.solve
with Numpy 2.0 API
v0.7.4
Added
- New implementation of fast RIR builder function in the libroom C++ extension to replace the current cython code. Advantages are: 1) only one compiled extension, 2) multithreading support
- New global parameter sinc_lut_granularity that controls the number of points used in the look-up table for the sinc interpolation. Accessible via parameters.constants.get.
- New global parameter num_threads that controls the number of threads used in multi-threaded code (rir builder only at the moment). The number of threads can also be controlled via the environement variable PRA_NUM_THREADS
- Adds package build support for Python 3.11 and 3.12. - Adds package build for new Apple M1 architecture
Changed
- Removed the broken get_rir method of the class SoundSource
- Removes package build support for Python 3.7 (EOL)
Bugfix
- Fixes a bug when using randomized image source model with a 2D room (#315) by @hrosseel
- Fixes a bug when setting the air absorption coefficients to custom values (#191), adds a test, and more details in the doc
- Fixes a bug in the utilities.angle_function in the calculation of the colatitude (#329) by @fabiodimarco
- Replaces the crossing-based point-in-polygon algorithm in the C++ code with the more robust winding number algorithm (#345)
- Fixes usage of deprecated hann window with new version of scipy in metrics.py (#344) by @mattpitkin
New Contributors
- @hrosseel made their first contribution in #315
- @mattpitkin made their first contribution in #344
- @fabiodimarco made their first contribution in #329
Full Changelog: v0.7.3...v0.7.4
v0.7.3
v0.7.2
Added
- Added the AnechoicRoom class. @duembgen
- Added FastMNMF2 (Fast Multichannel Nonnegative Matrix Factorization 2) to
bss
subpackage. @sekiguchi92 - Randomized image source method for removing sweeping echoes in shoebox rooms. @orchidas
- Adds the
cart2spher
method inpyroomacoustics.doa.utils
to convert from cartesian
to spherical coordinates. - Example
room_complex_wall_materials.py
- CI for python 3.10
- Appveyor builds for compiled wheels for win32/win64 x86
Changed
- Cleans up the
plot_rir
function in Room so that the labels are neater. It
also adds an extra optionkind
that can take values "ir", "tf", or "spec"
to plot the impulse responses, transfer functions, or spectrograms of the RIR. - Refactored the implementation of FastMNMF. @sekiguchi92
- Modified the document of init.py in
doa
subpackage. - End of Python 3.6 support.
- Removed the deprecated
realtime
sub-module. - Removed the deprecated functions
pyroomacoustics.transform.analysis
,pyroomacoustics.transform.synthesis
,pyroomacoustics.transform.compute_synthesis_window
. They are replaced by the equivalent functions inpyroomacoustics.transform.stft
sub-module. - The minimum required version of numpy was changed to 1.13.0 (use of
np.linalg.multi_dot
indoa
sub-package see #271) @maldil
Bugfix
- Fixes missing import statement in room.plot for 3D rooms (PR #286) @usernamenoahfoster
- On win64,
bss.fastmnmf
would fail due to some singular matrix. 1) protect solve
with try/except and switch to pseudo-inverse if necessary, 2) change eps 1e-7 -> 1e-6 - Fixed pypi upload for windows wheels
- Fixed most warnings in the tests
- Fixed bug in
examples/adaptive_filter_stft_domain.py
Thanks to
- @sekiguchi92 for the implementation of fastmnmf2
- @orchidas for the implementation of the randomized image source method
- @duembgen for the implementation of the AnechoicRoom class
- @usernamenoahfoster @maldil @hutauf @conkeur @popcornell for bug fixes, reports, and improvements
v0.6.0
Added
- New DOA method: MUSIC with pseudo-spectra normalization. Thanks @4bian! Normalizes MUSIC pseudo spectra before averaging across frequency axis.
Bugfix
- Issue #235 : fails when set_ray_tracing is called, but no mic_array is set
- Issue #236 : general ISM produces the wrong transmission coefficients
- Removes an unncessery warning for some rooms when ray tracing is not needed
Misc
- Unify code format by using Black
- Add code linting in continuous integration
- Drop CI support for python 3.5