This is a python package that adds some extra functionality to the pyroomacoustics package, specifically in favour of the upcoming ROS acoustics package.
-
Clone this repo into any directory.
-
cdto the project root directory and install usingpip3 install .Note: For development, it is recommended to install in edit mode:
pip3 install -e . -
Test the install by importing the pra_utils package:
python3 -c 'import pra_utils' -
Buy me a beer, thanks.
All features are encapsulated in ComplexRoom in core.py, a child class of pyroomacoustics.Room. The notable features are as follows:
- Improved room plotting:
- Figure equal aspect ratio
- Shows walls normals.
from_stl(),save_stl: Creates/saves a room from/to an STL mesh file.make_polygon(): Makes a polygonal room. Can specify centre and rotation euler angles.- Obstacles can be added inside rooms. These are basically just reflecting surfaces inside the parent room. To use, first declare a ComplexRoom with
reversed_normals=True, then add it to a normal ComplexRoom usingadd_obstacle(). See the tests for details.