From: han.lu@intel.com
To: tiwai@suse.com, liam.r.girdwood@intel.com,
bernard.gautier@intel.com, alsa-devel@alsa-project.org
Cc: "Lu, Han" <han.lu@intel.com>
Subject: [PATCH BAT V1 0/7] BAT: Add Basic Audio Tester command line tool
Date: Tue, 15 Sep 2015 15:00:16 +0800 [thread overview]
Message-ID: <cover.1442298607.git.han.lu@intel.com> (raw)
From: "Lu, Han" <han.lu@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
next reply other threads:[~2015-09-15 7:01 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-09-15 7:00 han.lu [this message]
2015-09-15 7:00 ` [PATCH BAT V1 1/7] BAT: Add initial functions han.lu
2015-09-15 7:00 ` [PATCH BAT V1 2/7] BAT: Add common definitions and functions han.lu
2015-09-15 7:00 ` [PATCH BAT V1 3/7] BAT: Add playback and record functions han.lu
2015-09-15 7:00 ` [PATCH BAT V1 4/7] BAT: Add signal generator han.lu
2015-09-18 16:50 ` Caleb Crome
2015-09-21 6:44 ` Liam Girdwood
2015-09-15 7:00 ` [PATCH BAT V1 5/7] BAT: Add converting functions han.lu
2015-09-15 7:00 ` [PATCH BAT V1 6/7] BAT: Add spectrum analysis functions han.lu
2015-09-15 7:00 ` [PATCH BAT V1 7/7] BAT: Add Makefile and configures han.lu
2015-09-16 3:23 ` [PATCH BAT V1 0/7] BAT: Add Basic Audio Tester command line tool Caleb Crome
2015-09-16 11:40 ` Liam Girdwood
2015-09-16 16:43 ` Caleb Crome
2015-09-17 10:40 ` Liam Girdwood
2015-09-17 13:29 ` Caleb Crome
2015-09-17 17:42 ` Mark Brown
2015-09-17 18:50 ` Caleb Crome
2015-09-17 22:40 ` Caleb Crome
2015-09-17 23:00 ` James Cameron
2015-09-17 23:30 ` Caleb Crome
2015-09-18 9:09 ` Liam Girdwood
2015-09-16 16:37 ` Mark Brown
2015-09-16 16:57 ` Liam Girdwood
2015-09-16 20:34 ` Mark Brown
2015-09-19 16:40 ` Takashi Iwai
2015-09-21 6:33 ` Liam Girdwood
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=cover.1442298607.git.han.lu@intel.com \
--to=han.lu@intel.com \
--cc=alsa-devel@alsa-project.org \
--cc=bernard.gautier@intel.com \
--cc=liam.r.girdwood@intel.com \
--cc=tiwai@suse.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).