[alsa-devel] [PATCH 0/4] alsabat: add noise detection

han.lu at intel.com han.lu at intel.com
Wed Jun 8 21:42:45 CEST 2016


From: "Lu, Han" <han.lu at intel.com>

Add noise detection for alsabat.
Alsabat reports error when noise above threshold be detected.
Use either of the options below to designate the threshold. (e.g.
if the ratio of noise to signal is 5%, the snr is about 26dB.)
    --snr-db <value in dB>
    --snr-pc <value in %>

The noise detection is performed in time domain. On each period
of the sine wave being analyzed, alsabat substracts a clean sine
wave from the source, calculates the RMS value of the residual,
and compares the result with the threshold. At last, alsabat
returns the number of periods with noise above threshold. 0 is
returned when the source is clean.

patch content:
  1. align the data type and process on float
  2. add a parameter for adjust_waveform()
  3. add a single channel sine wave generator
  4. add noise detection

Lu, Han (4):
  alsabat: align the data type on float
  alsabat: add channels parameter for adjust_waveform()
  alsabat: add a single channel sine wave generator
  alsabat: add noise detection

 bat/alsabat-test.sh |   4 +
 bat/alsabat.1       |   8 ++
 bat/analyze.c       | 216 +++++++++++++++++++++++++++++++++++++++++++++++-----
 bat/bat-signal.h    |   1 +
 bat/bat.c           |  62 ++++++++++++---
 bat/common.h        |  36 ++++++++-
 bat/convert.c       |   8 +-
 bat/convert.h       |   8 +-
 bat/signal.c        |  27 ++++++-
 configure.ac        |   2 +-
 10 files changed, 327 insertions(+), 45 deletions(-)

-- 
2.5.0



More information about the Alsa-devel mailing list