[alsa-devel] [PATCH BAT V1 0/7] BAT: Add Basic Audio Tester command line tool

Takashi Iwai tiwai at suse.de
Sat Sep 19 18:40:12 CEST 2015


Hi,

I'm currently traveling on vacation and have little time to check
through the patchset and join the discussion.  I'll take a closer look
in the next week.


thanks,

Takashi


On Tue, 15 Sep 2015 09:00:16 +0200,
<han.lu at intel.com> wrote:
> 
> From: "Lu, Han" <han.lu at intel.com>
> 
> BAT (Basic Audio Tester) is a simple command line utility intended
> to automate audio driver and sound server QA testing with no human
> interaction.
> 
> BAT works by playing an audio stream and capturing the same stream
> in either a digital or analog loopback. It then compares the captured
> stream to the original to determine if the testcase passes or fails.
> 
> The main idea of frequency detecting is:
> The analysis function reads data from wav file, run fft against the data
> to get magnitude of frequency vectors, and then calculates the average
> value and standard deviation of frequency vectors. After that, we define
> a threshold:
>     threshold = 3 * standard_deviation + average_value
> Frequencies with amplitude larger than threshold will be recognized as
> a peak, and the frequency with largest peak value will be recognized as
> a detected frequency.
> BAT then compares the detected frequency to target frequency, to decide
> if the detecting passes or fails.
> 
> BAT supports 4 working modes:
>   1. single line playback;
>   2. single line capture and analysis;
>   3. playback and capture in loop, and analyze captured data;
>   4. local analyze without actual playback or capture.
> BAT will check devices input by user to decide which mode to use.
> BAT will create threads for playback and record, and will run spectrum
> analysis for mode 2, 3 or 4.
> 
> Lu, Han (7):
>   BAT: Add initial functions
>   BAT: Add common definitions and functions
>   BAT: Add playback and record functions
>   BAT: Add signal generator
>   BAT: Add converting functions
>   BAT: Add spectrum analysis functions
>   BAT: Add Makefile and configures
> 
>  Makefile.am     |   3 +
>  bat/Makefile.am |  14 ++
>  bat/alsa.c      | 618 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>  bat/alsa.h      |  20 ++
>  bat/analyze.c   | 314 ++++++++++++++++++++++++++++
>  bat/analyze.h   |  16 ++
>  bat/bat.c       | 608 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
>  bat/common.c    | 198 ++++++++++++++++++
>  bat/common.h    | 169 ++++++++++++++++
>  bat/convert.c   | 113 +++++++++++
>  bat/convert.h   |  23 +++
>  bat/signal.c    |  88 ++++++++
>  configure.ac    |  19 +-
>  13 files changed, 2202 insertions(+), 1 deletion(-)
>  create mode 100644 bat/Makefile.am
>  create mode 100644 bat/alsa.c
>  create mode 100644 bat/alsa.h
>  create mode 100644 bat/analyze.c
>  create mode 100644 bat/analyze.h
>  create mode 100644 bat/bat.c
>  create mode 100644 bat/common.c
>  create mode 100644 bat/common.h
>  create mode 100644 bat/convert.c
>  create mode 100644 bat/convert.h
>  create mode 100644 bat/signal.c
> 
> -- 
> 1.9.1
> 
> 


More information about the Alsa-devel mailing list