No project description provided
Project description
ASPCORE : Audio Signal Processing Core
Introduction
The package contains classes and functions implementing different versions of linear convolutions. What makes them useful above what's already available in scipy and numpy is that they are intended to be used in a streaming manner, where only parts of the input signal is available at a time. All filters support multiple inputs and multiple outputs. There is also support for convolution with a time-varying impulse response.
The package uses just-in-time compilation from numba to achieve lower computational cost.
More info and complete API documentation
Installation
The package can be installed via pip by running
pip install aspcore
Alternatively, the package can be installed by cloning the repository and running
pip install path/to/aspcore
License
The software is distributed under the MIT license. See the LICENSE file for more information.
Acknowledgements
The software has been developed during a PhD project as part of the SOUNDS ETN at KU Leuven. The SOUNDS project has recieved funding from the European Union's Horizon 2020 research and innovation programme under grant agreement No. 956369.
Usage
The main function of this package is create_filter(). Using the keyword arguments, it will select and return the appropriate filter class. The filter can then be used to convolve using its process() method, which returns the filtered signal.
Signals are formatted with the time index as the last axis, with most filters accepting signals of the form (num_channels, num_samples). Some filters accepts signals with higher dimensional channels, such as (a, b, c, ..., num_samples).
import numpy as np
import aspcore
rng = np.random.default_rng()
channels_in, channels_out, num_samples, ir_len = 5, 3, 128, 16
signal = rng.normal(0,1,size=(channels_in, num_samples))
ir = rng.normal(0,1,size=(channels_out, ir_len))
filt = aspcore.create_filter(ir=ir, sum_over_inputs=True)
filtered_signal = filt.process(signal)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file aspcore-0.0.2.tar.gz
.
File metadata
- Download URL: aspcore-0.0.2.tar.gz
- Upload date:
- Size: 13.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.11.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 178b02fcc534cb9837ca22008523d80999bab3d4c582b8ee64b0f7e05633801e |
|
MD5 | 8954fb6ff21df12290d143a339de8db0 |
|
BLAKE2b-256 | 151288dbaf56a5733d49f6965dd300c244776e553277cd05ee047e56aecf2e3f |
File details
Details for the file aspcore-0.0.2-py3-none-any.whl
.
File metadata
- Download URL: aspcore-0.0.2-py3-none-any.whl
- Upload date:
- Size: 10.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.11.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 41397f6157b1fbd229e3f3da2aa1812c74f1fa27a2674c1db2987f3a0e596a1b |
|
MD5 | a223854b0ed029d10d4c09559f194468 |
|
BLAKE2b-256 | f93101d0254a6e2370e0911cff9d15ba9ae83b6f0b8502f0c1fda8c70da85855 |