Comments (2)
Hi @maelp , I think you are referencing the RIR creation method in this paper (ref [1] in the one you linked). Essentially, these guys are rediscovering 60+ years of signal processing on their own. I wouldn't recommend this as a reference for your own implementation.
In their method, they need to generate the RIR at a higher frequency because they use impulses that are rounded to the nearest sample. Pyroomacoustics doesn't have this problem because we generate fractional delays directly. No rounding to the nearest sample is ever done. What comes out of the simulator is better than what you'll get using this upsampling method.
Regarding computations, OLA is a completely standard method. The STFT method of pyroomacoustics lets you do it. Although it is a good point that this is not actually what we use to convolve the RIR in the room simulation. Instead we use scipy.signal.fftconvolve
which uses FFT for the convolution (Real FFT filtering in the paper linked, Eq 4). So from their paper, an efficient implementation of OLA might be 2x as fast. The problem for us is that the OLA in stft
is done in python, so it might be actually slower than fftconvolve
. This should be checked.
from pyroomacoustics.
Thank you
from pyroomacoustics.
Related Issues (20)
- Raise warning when extruding Shoebox HOT 3
- Proper way to define a 3D room with walls of different heights HOT 1
- Testing CNN model using sound generated from pyroomacoustics room simulation HOT 2
- Adding a diffuser
- problem in pip HOT 4
- Has Gaussian-Laplace IVA (IVA-GL) been also implemented in this library? HOT 1
- Bug in auxiva? Script did not show any error, but got nan in the result of source matrix HOT 2
- Compute RIR up to a K (earliest or strongest) reflection (or max time)
- ValueError: operands could not be broadcast together with shapes (2709,96) (2500,1) (2709,96)
- Waves in the signal after convolving the signal with the RIR HOT 3
- Question regarding materials HOT 1
- scipy.signal.hann is deprecated in SciPy 1.13.0
- How to simulation energy decrease? HOT 8
- why conj in ILRMA HOT 4
- Error in pyroomacoustics/pyroomacoustics /beamforming.py HOT 1
- Differences With Other Libraries HOT 1
- Help me understand energy scaling HOT 4
- libroom.rir_builder error: "The rir array is too small for the maximum time recorded" HOT 13
- Plot of Microphones HOT 1
- directivity argument of Room.add_microphone_array HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pyroomacoustics.