https://github.com/solarliner/reconvolve
Create convolution impulse response from frequency sweep inputs
https://github.com/solarliner/reconvolve
Last synced: about 1 year ago
JSON representation
Create convolution impulse response from frequency sweep inputs
- Host: GitHub
- URL: https://github.com/solarliner/reconvolve
- Owner: SolarLiner
- License: mit
- Created: 2019-04-09T02:16:36.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2019-04-10T19:39:38.000Z (about 7 years ago)
- Last Synced: 2025-03-11T04:13:08.515Z (over 1 year ago)
- Language: Python
- Size: 16.6 KB
- Stars: 5
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# reconvolve
Create convolution impulse response from frequency sweep inputs
Reconvolve is a small CLI written in python which aims at helping create high-quality impulse responses by recording the medium of interest.
The easiest way to do that is to record a click sound as passed through the medium and record the output - but those are limited in quality (more technically, temporal resolution). A better solution would be to have a longer input sound that would still capture the desired spectrum; this is where sine sweep impulses enter. But while they give better results, you can't directly use the recording as an impulse response, and need to convolve it back to a usable one.
## Install
With `setup.py`:
```bash
python setup.py install
```
With pipenv (creates a virtual environment, best for development):
```bash
pipenv install
```
## Use
```bash
python main.py create sweep.wav
```
Creates a sine sweep from 20 Hz to 20 kHz sampled at 48 kHz.
```bash
python main.py process sweep.wav record.wav IR_out.wav
```
Processes a recording `record.wav` of the impulse `sweep.wav` into `IR_out.wav`.