Skip to content
This repository has been archived by the owner on Jan 20, 2022. It is now read-only.
/ AudioI2S Public archive
forked from oscgonfer/AudioI2S

Audio Analysis library for I2S mems microphones

Notifications You must be signed in to change notification settings

tachen-cs/AudioI2S

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AudioI2S

This is the base library for the Smart Citizen Kit V2.0 for performing audio analysis.

It's intented to perform audio analysis on a SAMD21 processor of a MEMS I2S microphone output, with the idea of easily expanding it's functionality towards different inputs.

Additionally, the analysis can be performed through a configurable AudioAnalyser, containing a FFT analyser or a FIR (Finite Impulse Response) Filter.

Features:

FFT Analysis

  1. Signal windowing through configurable window method (Hann, Blackman, Hamming)
  2. FFT analysis with arm's cortex funtion on q31_t data type
  3. Spectrum calculation and configurable weigthing (A, C or Z)
  4. Custom Spectrum Equalisation (With auto generated parameters in a octave script)
  5. RMS calculation
  6. dB scale convertion

FIR Filtering

  1. Signal downscaling
  2. Signal filtering (by chunks) with arm_fir custom filter including equalisation and weighting
  3. RMS calculation

A-C Weighting functions

There is an octave script in /OCTAVE/WEIGHTING that generates a custom weighting table as specifies in the actual legislation. It outputs a vector containing the corresponding factors to apply in the spectrum, according to the specifies sampling frequency / fft bins.


With kind references to:

About

Audio Analysis library for I2S mems microphones

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 63.9%
  • C++ 33.2%
  • MATLAB 2.9%