Pyroomacoustics

Latest version: v0.8.3

Safety actively analyzes 693883 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 6

0.8.3

---------------------

Bugfix
~~~~~~

- Fixes issue 382: When providing a ``MicrophoneArray`` object with
directivity to ``Room.add_microphone_array``, the directivity was dropped
from the object.

- Fixes issues 381: When creating a room with from_corners with multi-band
material, and then making it 3D with ``extrude`` with a single band material
for the floor and ceiling, an error would occur.
After the fix, the materials for floor and ceiling are automatically extended
to multi-band, as expected.

- Fixes issue 380: Caused by the attribute ``cartesian`` of ``GridSphere`` not
being set properly when the grid is only initialized with a number of points.

- Fixes issue 355: Makes the MicrophoneArray class more bug-proof and adds
some tests.

0.8.2

---------------------

Changed
~~~~~~~

- Makes the ``pyroomacoustics.utilities.resample`` backend configurable
to avoid ``soxr`` dependency. The resample backend is configurable to
``soxr``, ``samplerate``, if these packages are available, and otherwise
falls back to ``scipy.signal.resample_poly``.
- Fixes typo in ``materials.json``: ``ceiling_fibre_abosrber -> ceiling_fibre_absorber``.

0.8.1

---------------------

Bugfix
~~~~~~

- Adds the missing ``pyroomacoustics.directivities`` to the package list in ``setup.py``.

0.8.0

---------------------

This new version introduces some major changes. In particular, it introduces
the use of measured microphone and source directivities. This new feature
allows to simulate more accurately real recording equipments. See the
`documentation
<https://pyroomacoustics.readthedocs.io/en/latest/pyroomacoustics.directivities.html>`_
for more details.

Added
~~~~~

- New global parameters to control the octave bands used for simulation.

- ``octave_bands_base_freq``: the base frequency used for the octave bands (default ``125``),
note that together with the sampling frequency this will determine the number of sub-bands
used in simulation.
- ``octave_bands_n_fft``: lengths of the octave band filters (current is default ``512``
but will be changed to ``128`` in the next release)
- ``octave_bands_keep_dc``: extends the lowest band to include the DC offset,
the current default is ``False`` to match past behavior, but will be changed to
``True`` in the next release because the filters have less oscillations this way.

- New parameter ``min_phase`` of class ``Room``. If set to ``True``, the band-pass
filters are designed as minimum phase filters.

- Simulation with measured directivity responses in SOFA format (limited file types) is
possible with the image source model.

- A flexible and extensible SOFA file reader with optional spherical interpolation.
- A small database of files is bundled, including the `DIRPAT database
<https://aes2.org/publications/elibrary-page/?id=19538>`_, collected by
Manuel Brandner, Matthias Frank, and Daniel Rudrich University of Music and
Performing Arts Graz, Graz. The file also include two HRTF of the
`MIT KEMAR dummy head <https://sound.media.mit.edu/resources/KEMAR/README>`_.

- Introduces a new class ``pyroomacoustics.directivities.Rotation3D`` to specify
the orientation of sources and receivers in 3D.

- Adds `soxr <https://github.com/dofuuz/python-soxr>`_ as a dependency since resampling
can often be necessary when working with SOFA files.

Changed
~~~~~~~

- In ray tracing, the histograms are now linearly interpolated between
the bins to obtain smoother RIR
- Changed the API of ``CardioidFamily`` to take a float parameter.
New class wrappers for ``Cardioid``, ``Hypercardioid``, ``Supercardioid``,
``Bidirectional`` and ``Omnidirectional`` are added in the ``directivity``
sub-module. The enum of type ``DirectivityPattern`` has been removed.

0.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)

0.7.6

---------------------

Bugfix
~~~~~~

- Fixes the default value of ``energy_thres`` in ``experimental.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)

Page 1 of 6

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.