Skip to main content

FIRconv

GitHub release GitHub last commit GitHub issues LICENSE


Python implementations of Finite Impulse Response (FIR) filters for real-time convolutions.

The algorithms are mainly (but not strictly) the ones described in WEFERS, Frank. Partitioned convolution algorithms for real-time auralization. Logos Verlag Berlin GmbH, 2015. found here.

Current algorithms

  • Overlap-add (OLA);
  • Overlap-save (OLS);
  • Uniformily Partitioned Overlap-Save (UPOLS) (generalized version)

Installation

Use pip to install FIRconv:

$ pip install FIRconv

Getting started

Bellow there's a pseudo-code showing how to setup a basic use of FIRconv for real time convolutions.

from FIRconv import FIRfilter
import numpy as np

# Initialize FIR filter
bufferSize = 2**10
method = 'upols'
FIRfilter(method, bufferSize, h=IR)

while True:
  output = FIRfilter.process(audio)
  play(output)

Collaborations are more than welcome!

Metadata

Release files for FIRconv 0.0.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for FIRconv 0.0.3
File Size Uploaded
FIRconv-0.0.3.tar.gz 8.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for FIRconv 0.0.3
File Interpreter ABI Platform
FIRconv-0.0.3-py3-none-any.whl Python 3 none any Details

Total release size: 16.5 kB

Release files / FIRconv-0.0.3.tar.gz

Download URL FIRconv-0.0.3.tar.gz
Size 8.2 kB
Tags Source
SHA-256 checksum
How to use checksums
3ca29a274aca37b907d917e895ee04182778b39aa83830c6b90c2c77e9f5e92e
BLAKE2b-256 checksum
How to use checksums
83e4f2e2d5d8728d16761b1bed6cd670a3926e98ff51f9caf3f38b3a62d35e08
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.8.16

Release files / FIRconv-0.0.3-py3-none-any.whl

Download URL FIRconv-0.0.3-py3-none-any.whl
Size 8.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b567f83561e0d46ef340cf20468b29e2185e18d9311d13079e788946672298ec
BLAKE2b-256 checksum
How to use checksums
b53ea526931dd2bdeb3e572b0c6df23d1fab2fa43fc9b105a8adec0d8b45e144
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.8.16

Release history Release notifications | RSS feed

This release

0.0.3 This release

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page