Room Impulse Response Generator
Python- and C-based room impulse response generator, for use in convolutional reverb.
Official Python port of https://github.com/ehabets/RIR-Generator.
Installation
pip install rir-generator
Usage
import numpy as np
import scipy.signal as ss
import soundfile as sf
import rir_generator as rir
signal, fs = sf.read("bark.wav", always_2d=True)
h = rir.generate(
c=340, # Sound velocity (m/s)
fs=fs, # Sample frequency (samples/s)
r=[ # Receiver position(s) [x y z] (m)
[2, 1.5, 1],
[2, 1.5, 2],
[2, 1.5, 3]
],
s=[2, 3.5, 2], # Source position [x y z] (m)
L=[5, 4, 6], # Room dimensions [x y z] (m)
reverberation_time=0.4, # Reverberation time (s)
nsample=4096, # Number of output samples
)
print(h.shape) # (4096, 3)
print(signal.shape) # (11462, 2)
# Convolve 2-channel signal with 3 impulse responses
signal = ss.convolve(h[:, None, :], signal[:, :, None])
print(signal.shape) # (15557, 2, 3)
Development
Installation for Development
git clone https://github.com/audiolabs/rir-generator.git
cd rir-generator
pip install -e .[dev]
Running Tests
pytest
Building from Source
python -m build
Project Structure
The project follows the src/ layout with automatic versioning from git tags:
src/
rir_generator/
__init__.py # Main Python module
_cffi/ # CFFI C++ extension bindings
build.py # CFFI build configuration
rir_generator_core.cpp # C++ implementation
rir_generator_core.h # C++ header
Metadata
Release files for rir-generator 0.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| rir_generator-0.3.0.tar.gz | 28.6 kB | Details |
Built distributions (wheels)
Total release size: 400.0 kB
Release files / rir_generator-0.3.0.tar.gz
| Download URL | rir_generator-0.3.0.tar.gz |
|---|---|
| Size | 28.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
aee1c90bdf702422c00a21379e021bb64af6ef2246aeccc571274468958876d4
|
|
BLAKE2b-256 checksum How to use checksums |
4beb3d6033ac7626fe6165dd6bbfafeb2661dac8c7da97c837c40253bd325a2f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 26, 2025.
Transparency logRelease files / rir_generator-0.3.0-cp312-cp312-win_amd64.whl
| Download URL | rir_generator-0.3.0-cp312-cp312-win_amd64.whl |
|---|---|
| Size | 20.6 kB |
| Tags | CPython 3.12 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
61f8384567944c27f19a4a4ddb5ae19689a32d27e25a505b10f677073fc07424
|
|
BLAKE2b-256 checksum How to use checksums |
ba79b6a0c68947a40fadefd2ac9d95b0ca8d2e0344402a40e42ad91a43243f02
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 26, 2025.
Transparency logRelease files / rir_generator-0.3.0-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | rir_generator-0.3.0-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 36.8 kB |
| Tags | CPython 3.12 Linux glibc 2.17+ x86-64 Linux glibc 2.5+ x86-64 |
|
SHA-256 checksum How to use checksums |
8b595fa8de553b9b151f361851418d3fcd446aa22f1c1af9564fe78c0c115e9c
|
|
BLAKE2b-256 checksum How to use checksums |
d99908d6175e603019ab568635ec6e90f85924cc17954bfa5a9772917ff2e721
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 26, 2025.
Transparency logRelease files / rir_generator-0.3.0-cp312-cp312-macosx_11_0_arm64.whl
| Download URL | rir_generator-0.3.0-cp312-cp312-macosx_11_0_arm64.whl |
|---|---|
| Size | 17.3 kB |
| Tags | CPython 3.12 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
058027a960e5378dad59c9e430380673fc283053e1d8c7a4b9a17a7cc1deedbf
|
|
BLAKE2b-256 checksum How to use checksums |
11aa0b9dd28675b00e8d22222784e8b3a1ca863c1a31082d6399c47a7c66f5f3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 26, 2025.
Transparency logRelease files / rir_generator-0.3.0-cp311-cp311-win_amd64.whl
| Download URL | rir_generator-0.3.0-cp311-cp311-win_amd64.whl |
|---|---|
| Size | 20.6 kB |
| Tags | CPython 3.11 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
ceb1664566fcdf8561f152cb5edd510189c1bef4464a98caaee9bbfb338aecdc
|
|
BLAKE2b-256 checksum How to use checksums |
2f453c86e0c8a34fe9838bf19ac948845b4ee63c6fc998f83f0875ab39033c5a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 26, 2025.
Transparency logRelease files / rir_generator-0.3.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | rir_generator-0.3.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 36.4 kB |
| Tags | CPython 3.11 Linux glibc 2.17+ x86-64 Linux glibc 2.5+ x86-64 |
|
SHA-256 checksum How to use checksums |
9b935827011ac424ddcd7cafd10a0db0ddd1798be8830f21949c1ba381098d67
|
|
BLAKE2b-256 checksum How to use checksums |
83d8965f8c9af7a0de21e909129d10c11b54d39fdf234a5bc1620a4646c6a5fd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 26, 2025.
Transparency logRelease files / rir_generator-0.3.0-cp311-cp311-macosx_11_0_arm64.whl
| Download URL | rir_generator-0.3.0-cp311-cp311-macosx_11_0_arm64.whl |
|---|---|
| Size | 17.3 kB |
| Tags | CPython 3.11 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
f1f519d6f074c8ea0960bde7de159694d14e05c6bcd13ccabe2cbdab8a65ebc4
|
|
BLAKE2b-256 checksum How to use checksums |
428fec6f8cf4dc4738d523f1a2167cabc73e9fbff1d0b8131c9676a7c5368b7c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 26, 2025.
Transparency logRelease files / rir_generator-0.3.0-cp310-cp310-win_amd64.whl
| Download URL | rir_generator-0.3.0-cp310-cp310-win_amd64.whl |
|---|---|
| Size | 20.6 kB |
| Tags | CPython 3.10 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
05597e250b761cfa810e50731b7e0736d09365ff5aa296e01ddebff63502d384
|
|
BLAKE2b-256 checksum How to use checksums |
a71b1f8dd4d31887323114b4a38b66b799368b39558e0e4ea9152fce791413b9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 26, 2025.
Transparency logRelease files / rir_generator-0.3.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | rir_generator-0.3.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 36.4 kB |
| Tags | CPython 3.10 Linux glibc 2.17+ x86-64 Linux glibc 2.5+ x86-64 |
|
SHA-256 checksum How to use checksums |
c4578b0487e9634df5cf4c678b61692386e7673ac813abf6ee03e1fbc2851216
|
|
BLAKE2b-256 checksum How to use checksums |
4a7047a3843fb3d3cb5a887378073a5b30406f4c3962e3d043d856ae1728b1c0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 26, 2025.
Transparency logRelease files / rir_generator-0.3.0-cp310-cp310-macosx_11_0_arm64.whl
| Download URL | rir_generator-0.3.0-cp310-cp310-macosx_11_0_arm64.whl |
|---|---|
| Size | 17.3 kB |
| Tags | CPython 3.10 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
5adb0c98f72508e4e234afbaf8b17d0711ca691f0b3145b69a6de5a8b10042ea
|
|
BLAKE2b-256 checksum How to use checksums |
bf3d47ec60fd67ce927be39d1a15e4b1f3273845f41e97c9d408f20a3dfbb9fa
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 26, 2025.
Transparency logRelease files / rir_generator-0.3.0-cp39-cp39-win_amd64.whl
| Download URL | rir_generator-0.3.0-cp39-cp39-win_amd64.whl |
|---|---|
| Size | 20.6 kB |
| Tags | CPython 3.9 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
9af9bdf746fa5c8f152b1d958ceebd14a791176e0b50a08c5524aa8d360b551c
|
|
BLAKE2b-256 checksum How to use checksums |
5bd870bd75cdc563b006b4efe424a04441c54617ee80f2af06f38174c9fb02cd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 26, 2025.
Transparency logRelease files / rir_generator-0.3.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | rir_generator-0.3.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 36.4 kB |
| Tags | CPython 3.9 Linux glibc 2.17+ x86-64 Linux glibc 2.5+ x86-64 |
|
SHA-256 checksum How to use checksums |
b35dae151deeedea4eb0bcdaae2329efdb39f345cccab23eb99434afda63cbd3
|
|
BLAKE2b-256 checksum How to use checksums |
4b5f27f47d1648f3f0d757a8e40fcb8e7610f60fa3d3dfbc8ed6695be9786dbc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 26, 2025.
Transparency logRelease files / rir_generator-0.3.0-cp39-cp39-macosx_11_0_arm64.whl
| Download URL | rir_generator-0.3.0-cp39-cp39-macosx_11_0_arm64.whl |
|---|---|
| Size | 17.3 kB |
| Tags | CPython 3.9 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
bce8a80541d959d6ef7c8de228a3fb910d75fd6a3007067d28e0bcb24620cb41
|
|
BLAKE2b-256 checksum How to use checksums |
e44d531dc62388c4ae4ea0b2480c22347a5ec7a157e9a40c9e9b9cfea4b824d5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 26, 2025.
Transparency logRelease files / rir_generator-0.3.0-cp38-cp38-win_amd64.whl
| Download URL | rir_generator-0.3.0-cp38-cp38-win_amd64.whl |
|---|---|
| Size | 20.5 kB |
| Tags | CPython 3.8 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
2b46787c5cc7a29952bccc5ffbf0961679343e4d4ff963ab71cace68cd5f6ec9
|
|
BLAKE2b-256 checksum How to use checksums |
07282c9151fcb028cc297a1e4677d496754a45c4fb568924f6e231fcb1ea0d24
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 26, 2025.
Transparency logRelease files / rir_generator-0.3.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | rir_generator-0.3.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 36.3 kB |
| Tags | CPython 3.8 Linux glibc 2.17+ x86-64 Linux glibc 2.5+ x86-64 |
|
SHA-256 checksum How to use checksums |
2cb17cc807b445615460007f8180740232338769d9dd4d29466b9347268144c3
|
|
BLAKE2b-256 checksum How to use checksums |
21d94d339098112eb4dd0972031776cf741fa17aa13c65293ad2c6cb9b542fd3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 26, 2025.
Transparency logRelease files / rir_generator-0.3.0-cp38-cp38-macosx_11_0_arm64.whl
| Download URL | rir_generator-0.3.0-cp38-cp38-macosx_11_0_arm64.whl |
|---|---|
| Size | 17.1 kB |
| Tags | CPython 3.8 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
bb97606aba35ba3d17abed97ed00bc4fbac53345658a97615e32c983c0f40889
|
|
BLAKE2b-256 checksum How to use checksums |
55ad1a2c25c1ac9268e0b34bee29a628a651cbbc8229cb7cd04a111f3440de93
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 26, 2025.
Transparency log