~rafadantayfa/snappy-hwe-snaps/+git/alsa-utils:alsa-utils/xenial/1.1.2

Last commit made on 2016-08-18
Get this branch:
git clone -b alsa-utils/xenial/1.1.2 https://git.launchpad.net/~rafadantayfa/snappy-hwe-snaps/+git/alsa-utils
Only Ahmed Said Dursun can upload to this branch. If you are Ahmed Said Dursun please log in for upload directions.

Branch merges

Branch information

Name:
alsa-utils/xenial/1.1.2
Repository:
lp:~rafadantayfa/snappy-hwe-snaps/+git/alsa-utils

Recent commits

5942b02... by Woodrow Shen

Copy from ftp://ftp.alsa-project.org/pub/utils/alsa-utils-1.1.2.tar.bz2

675619e... by Jaroslav Kysela <email address hidden>

Release v1.1.2

Signed-off-by: Jaroslav Kysela <email address hidden>

81eb216... by Vinod Koul <email address hidden>

alsabat: make snr_is_valid static

The compilation fails due to multiple defination of snr_is_valid

common.o: In function `snr_is_valid':
bat/common.h:99: multiple definition of `snr_is_valid'
bat.o:bat/common.h:99: first defined here

signal.o: In function `snr_is_valid':
bat/common.h:99: multiple definition of `snr_is_valid'
bat.o:bat/common.h:99: first defined here

latencytest.o: In function `snr_is_valid':
bat/common.h:99: multiple definition of `snr_is_valid'
bat.o:bat/common.h:99: first defined here

analyze.o: In function `snr_is_valid':
bat/common.h:99: multiple definition of `snr_is_valid'
bat.o:bat/common.h:99: first defined here

alsa.o: In function `snr_is_valid':
bat/common.h:99: multiple definition of `snr_is_valid'
bat.o:bat/common.h:99: first defined here

Signed-off-by: Vinod Koul <email address hidden>
Signed-off-by: Takashi Iwai <email address hidden>

9dee2da... by "Lu, Han" <email address hidden>

alsabat: fix a missing break in switch

Add the break line for OPT_ROUNDUPLATENCY case.

Signed-off-by: Lu, Han <email address hidden>
Signed-off-by: Takashi Iwai <email address hidden>

0cfe406... by "Lu, Han" <email address hidden>

alsabat: add noise detection

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.

Signed-off-by: Lu, Han <email address hidden>
Signed-off-by: Takashi Iwai <email address hidden>

e1b7a5f... by "Lu, Han" <email address hidden>

alsabat: add a single channel sine wave generator

Add function generate_sine_wave_raw_mono(). It serves as a single
channel sine wave generator, to provide data for calculation (e.g.
for noise analysis).
The function is similar to generate_sine_wave(), but a lite revision.
It has no dependency on bat channels and target frequency, no malloc
inside, no data conversion from float to integer samples, and supports
one channel only.

Signed-off-by: Lu, Han <email address hidden>
Signed-off-by: Takashi Iwai <email address hidden>

e0c1c86... by "Lu, Han" <email address hidden>

alsabat: add channels parameter for adjust_waveform()

The function adjust_waveform() is a component of generate_sine_wave(),
and depended on bat->channels parameter. Add parameter "channels" to
remove the dependency, and then adjust_waveform() can be applied on
other use cases, e.g. a single channel sine wave generator.

Signed-off-by: Lu, Han <email address hidden>
Signed-off-by: Takashi Iwai <email address hidden>

09cb66f... by "Lu, Han" <email address hidden>

alsabat: align the data type on float

Aligning the data type of fftw analyzer, sample converter and other
components on float, because:
  1. avoid unnecessary data type conversion;
  2. using float is more efficient than using double;
  3. the extra double accuracy is not required.

Signed-off-by: Lu, Han <email address hidden>
Signed-off-by: Takashi Iwai <email address hidden>

4157528... by vivian

alsabat: add round trip audio latency test

Audio latency is the time delay as an audio signal passes through
a system. There are many kinds of audio latency metrics. One useful
metric is the round trip latency, which is the sum of output latency
and input latency.

The measurement step works like below:
1. Listen and measure the average loudness of the environment for
one second;
2. Create a threshold value 16 decibels higher than the average
loudness;
3. Begin playing a ~1000 Hz sine wave and start counting the samples
elapsed;
4. Stop counting and playing if the input's loudness is higher than
the threshold, as the output wave is probably coming back;
5. Calculate the audio latency value in milliseconds.

Signed-off-by: Zhang Vivian <email address hidden>
Signed-off-by: Takashi Iwai <email address hidden>

2b3adf8... by "Lu, Han" <email address hidden>

alsabat: fix a possible memory leak

Fix a possible memory leak in generate_sine_wave(). Memory free was
ignored when the function return an error.

Signed-off-by: Lu, Han <email address hidden>
Signed-off-by: Takashi Iwai <email address hidden>