All Projects → MycroftAI → sonopy

MycroftAI / sonopy

Licence: Apache-2.0 license
A simple audio feature extraction library

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to sonopy

Sound-based-bird-species-detection
Sound-based Bird Classification - using AI, acoustics and ornithology to classify birds in the environment, an environmental awareness project (Web Application, Flask, Python)
Stars: ✭ 56 (-22.22%)
Mutual labels:  sound, spectrogram, audio-processing
Triton
🐳 Scripps Whale Acoustics Lab 🌎 Scripps Acoustic Ecology Lab - Triton with remoras in development
Stars: ✭ 25 (-65.28%)
Mutual labels:  sound, audio-processing
spafe
🔉 spafe: Simplified Python Audio Features Extraction
Stars: ✭ 310 (+330.56%)
Mutual labels:  sound, mfcc
UnitySoundManager
Sound manager with 3 tracks, language system, pooling system, Fade in/out effects, EventTrigger system and more.
Stars: ✭ 55 (-23.61%)
Mutual labels:  sound, audio-processing
SpleeterRT
Real time monaural source separation base on fully convolutional neural network operates on Time-frequency domain.
Stars: ✭ 111 (+54.17%)
Mutual labels:  spectrogram, audio-processing
Audio cat dog classification
Classification of WAV files from cats and dogs
Stars: ✭ 16 (-77.78%)
Mutual labels:  sound, audio-processing
Aubio
a library for audio and music analysis
Stars: ✭ 2,601 (+3512.5%)
Mutual labels:  sound, mfcc
Spectrographic
Turn an image into sound whose spectrogram looks like the image.
Stars: ✭ 147 (+104.17%)
Mutual labels:  sound, audio-processing
Linux Audio Adjustments
Audio Tweaks for Debian Based RPi
Stars: ✭ 140 (+94.44%)
Mutual labels:  sound, audio-processing
pydiogment
📣 Python library for audio augmentation
Stars: ✭ 64 (-11.11%)
Mutual labels:  sound, audio-processing
Img Encode
Encode an image to sound and view it as a spectrogram - turn your images into music
Stars: ✭ 157 (+118.06%)
Mutual labels:  sound, audio-processing
gensound
Pythonic audio processing and generation framework
Stars: ✭ 69 (-4.17%)
Mutual labels:  sound, audio-processing
Swift Radio Pro
Professional Radio Station App for iOS!
Stars: ✭ 2,644 (+3572.22%)
Mutual labels:  sound
unity-button-sounds-editor
Editor extension for Unity game engine. It helps to assign AudioClip to buttons and to play sounds by button clicks.
Stars: ✭ 65 (-9.72%)
Mutual labels:  sound
Gwion
🎵 strongly-timed musical programming language
Stars: ✭ 235 (+226.39%)
Mutual labels:  sound
Mechvibes
Mechvibes
Stars: ✭ 226 (+213.89%)
Mutual labels:  sound
simple-waveform-visualizer
JS Audio API 놀이터
Stars: ✭ 31 (-56.94%)
Mutual labels:  audio-processing
QuattroPlay
Implementation of the Quattro sound driver used in 90s Namco arcade games
Stars: ✭ 20 (-72.22%)
Mutual labels:  sound
Fdsoundactivatedrecorder
Start recording when the user speaks
Stars: ✭ 227 (+215.28%)
Mutual labels:  sound
Mimium
mimium (MInimal Musical medIUM) a programming language as an infrastructure for sound and music.
Stars: ✭ 212 (+194.44%)
Mutual labels:  sound

Sonopy

A simple audio feature extraction library

spectrum-image

Sonopy is a lightweight Python library used to calculate the MFCCs of an audio signal. It implements the following audio vectorization functions:

  • Power spectrogram
  • Mel spectrogram
  • Mel frequency cepstrum coefficient spectrogram

Features

  • Lightweight
  • Tiny, readable source code
  • Visualize steps in calculation

Usage

import numpy as np
from sonopy import power_spec, mel_spec, mfcc_spec, filterbanks

sr = 16000
audio = np.random.random((2 * 16000))

powers = power_spec(audio, window_stride=(100, 50), fft_size=512)
mels = mel_spec(audio, sr, window_stride=(1600, 800), fft_size=1024, num_filt=30)
mfccs = mfcc_spec(audio, sr, window_stride=(160, 80), fft_size=512, num_filt=20, num_coeffs=13)
filters = filterbanks(16000, 20, 257)  # Probably not ever useful

powers, filters, mels, mfccs = mfcc_spec(audio, sr, return_parts=True)

Installation

pip install sonopy
pip install "sonopy[example]"  # For example.py
pip install "sonopy[comparison]"  # For comparison.py

Speed Comparison

speed-chart

Param Set Audio Len Stride Window FFT Size Sample Rate Ceptral Coeffs Num Filters Loops
C 16000 0.1 0.1 2048 16000 13 20 2000
B 240000 0.05 0.05 2048 16000 13 20 200
A 480000 0.01 0.01 2048 16000 13 20 20
D 16000 0.1 0.1 512 16000 13 20 20000

Library links:

Credits

Thanks to SpeechPy for providing an example of the concrete calculations for MFCCs. Much of the calculations in this library take influence from it.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].