Skip to content

nomonosound/numpy-rms

Repository files navigation

numpy-rms: a fast function for calculating a series of Root Mean Square (RMS) values

  • Written in C and takes advantage of AVX (on x86-64) or NEON (on ARM) for speed
  • The fast implementation is tailored for contiguous 1-dimensional float32 arrays

Installation

PyPI version python 3.8, 3.9, 3.10, 3.11, 3.12 os: Linux, Windows CPU: x86_84 & arm64

$ pip install numpy-rms

Usage

import numpy_rms
import numpy as np

arr = np.arange(40, dtype=np.float32)
rms_series = numpy_rms.rms(arr, window_size=10)
print(rms_series.shape)  # (4,)

Changelog

[0.3.0] - 2024-06-25

Added

  • Add Linux builds compiled for ARM with NEON SIMD optimizations

For the complete changelog, go to CHANGELOG.md

Development

  • Install dev/build/test dependencies as denoted in pyproject.toml
  • CC=clang pip install -e .
  • pytest

Acknowledgements

This library is maintained/backed by Nomono, a Norwegian audio AI startup.