Hello community, here is the log from the commit of package alsa-utils for openSUSE:Factory checked in at 2016-03-04 19:29:45 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/alsa-utils (Old) and /work/SRC/openSUSE:Factory/.alsa-utils.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "alsa-utils" Changes: -------- --- /work/SRC/openSUSE:Factory/alsa-utils/alsa-utils.changes 2015-11-12 19:37:59.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.alsa-utils.new/alsa-utils.changes 2016-03-04 19:29:52.000000000 +0100 @@ -1,0 +2,11 @@ +Wed Feb 3 18:04:00 CET 2016 - [email protected] + +- Backport upstream fixes: add alsa-info manpage, fix TLV output of + amixer for ASoC ext ctls, and rename from bat to alsabat + 0003-alsa-info.sh-add-man-page.patch + 0004-amixer-skip-showing-asoc-tlv-byte-controls.patch + 0005-alsabat-rename-to-avoid-naming-conflict.patch +- Rename subpackage from bat to alsabat due to the name conflicts + with other projects + +------------------------------------------------------------------- New: ---- 0003-alsa-info.sh-add-man-page.patch 0004-amixer-skip-showing-asoc-tlv-byte-controls.patch 0005-alsabat-rename-to-avoid-naming-conflict.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ alsa-utils.spec ++++++ --- /var/tmp/diff_new_pack.hvieP9/_old 2016-03-04 19:29:53.000000000 +0100 +++ /var/tmp/diff_new_pack.hvieP9/_new 2016-03-04 19:29:53.000000000 +0100 @@ -1,7 +1,7 @@ # # spec file for package alsa-utils # -# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -46,6 +46,9 @@ # Patch: alsa-utils-git-fixes.diff Patch1: 0001-bat-Avoid-local-signal.h-file.patch Patch2: 0002-bat-Don-t-pass-incompatible-function-pointers-to-pth.patch +Patch3: 0003-alsa-info.sh-add-man-page.patch +Patch4: 0004-amixer-skip-showing-asoc-tlv-byte-controls.patch +Patch5: 0005-alsabat-rename-to-avoid-naming-conflict.patch Patch99: alsa-utils-gettext-version-removal.diff BuildRequires: alsa-devel BuildRequires: automake @@ -67,12 +70,13 @@ This package contains utility programs supporting ALSA, Advanced Linux Sound Architecture. -%package -n bat +%package -n alsabat Summary: Command-line sound tester for ALSA sound card driver Group: Productivity/Multimedia/Sound/Utilities Requires: alsa-utils = %{version} +Obsoletes: bat <= 1.1.0 -%description -n bat +%description -n alsabat BAT (Basic Audio Tester) is a simple command-line utility intended to help automate audio driver and sound server testing with little human interaction. BAT can be used to test audio quality, stress test features @@ -86,6 +90,9 @@ # patch -p1 %patch1 -p1 %patch2 -p1 +%patch3 -p1 +%patch4 -p1 +%patch5 -p1 # %if 0%{?suse_version} < 1020 %patch99 -p1 @@ -134,8 +141,8 @@ %{_mandir}/man*/* %{_mandir}/fr %{_bindir}/* -%exclude %{_bindir}/bat -%exclude %{_mandir}/man*/bat.* +%exclude %{_bindir}/alsabat +%exclude %{_mandir}/man*/alsabat.* %{_sbindir}/* %{_datadir}/sounds/alsa %{_datadir}/alsa @@ -149,9 +156,9 @@ %{_localstatedir}/lib/alsa %endif -%files -n bat +%files -n alsabat %defattr(-, root, root) -%{_bindir}/bat -%{_mandir}/man*/bat.* +%{_bindir}/alsabat +%{_mandir}/man*/alsabat.* %changelog ++++++ 0003-alsa-info.sh-add-man-page.patch ++++++ >From d633469c9d55d8ec77c33eab04e0cd9ae0c10f6e Mon Sep 17 00:00:00 2001 From: Jaroslav Kysela <[email protected]> Date: Wed, 13 Jan 2016 09:46:31 +0100 Subject: [PATCH] alsa-info.sh: add man page --- alsa-info/Makefile.am | 1 + alsa-info/alsa-info.sh.1 | 62 ++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 63 insertions(+) create mode 100644 alsa-info/alsa-info.sh.1 diff --git a/alsa-info/Makefile.am b/alsa-info/Makefile.am index 356f1a9ae94b..c786361dc68c 100644 --- a/alsa-info/Makefile.am +++ b/alsa-info/Makefile.am @@ -1,2 +1,3 @@ EXTRA_DIST = alsa-info.sh sbin_SCRIPTS = alsa-info.sh +man_MANS = alsa-info.sh.1 diff --git a/alsa-info/alsa-info.sh.1 b/alsa-info/alsa-info.sh.1 new file mode 100644 index 000000000000..7168b3e061be --- /dev/null +++ b/alsa-info/alsa-info.sh.1 @@ -0,0 +1,62 @@ +.TH ALSA-INFO.SH 1 "13 January 2016" +.SH NAME +alsa-info.sh \- command\-line utility to gather information about +the ALSA subsystem +.SH SYNOPSIS +\fBalsa-info.sh\fP [\fIoptions\fP] + +.SH DESCRIPTION +\fBalsa-info.sh\fP is a command\-line utility gathering information +about the ALSA subsystem. It is used mostly for debugging purposes. + +.SH OPTIONS +.TP +\fI\-\-upload\fP +Upload contents to the server (www.alsa-project.org or pastebin.ca). +.TP +\fI\-\-no-upload\fP +Do not upload contents to the remote server. +.TP +\fI\-\-stdout\fP +Print information to standard output. +.TP +\fI\-\-output FILE\fP +Specify file for output in no-upload mode. +.TP +\fI\-\-debug\fP +Run utility as normal, but will not delete file (usually +/tmp/alsa-info.txt). +.TP +\fI\-\-with-aplay\fP +Includes output from \fIaplay -l\fP. +.TP +\fI\-\-with-amixer\fP +Includes output from \fIamixer\fP. +.TP +\fI\-\-with-alsactl\fP +Includes output from \fIalsactl\fP. +.TP +\fI\-\-with-configs\fP +Includes output from ~/.asoundrc and /etc/asound.conf if they exist. +.TP +\fI\-\-update\fP +Check server for updates. +.TP +\fI\-\-about\fP +Print information about authors. + +.SH EXAMPLES + +.TP +\fBalsa-info.sh \-\-no-upload\fR +Will gather all information and show the output file. + +.SH SEE ALSO +\fB +aplay(1) +amixer(1) +alsactl(1) +\fP + +.SH AUTHOR +\fBalsa-info.sh\fP was created by the ALSA team, see \fI\-\-about\fP . -- 2.7.0 ++++++ 0004-amixer-skip-showing-asoc-tlv-byte-controls.patch ++++++ >From 18d5f52a61d0df7cf28456e264d7ab72c15984fb Mon Sep 17 00:00:00 2001 From: Vinod Koul <[email protected]> Date: Thu, 28 Jan 2016 14:02:18 +0530 Subject: [PATCH] amixer: skip showing asoc tlv byte controls ASoC TLV Byte controls are very large size controls so we should add new options for these. So skip dumping contents for these. $amixer -c0 cget numid=16 numid=16,iface=MIXER,name='mdl params' ; type=BYTES,access=-----RW-,values=30336 ; ASoC TLV Byte control, skipping bytes dump Signed-off-by: Vinod Koul <[email protected]> Signed-off-by: Takashi Iwai <[email protected]> --- amixer/amixer.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/amixer/amixer.c b/amixer/amixer.c index db1849333da3..f9b09cb54276 100644 --- a/amixer/amixer.c +++ b/amixer/amixer.c @@ -682,6 +682,14 @@ static int show_control(const char *space, snd_hctl_elem_t *elem, __skip_read: if (!snd_ctl_elem_info_is_tlv_readable(info)) goto __skip_tlv; + /* skip ASoC ext bytes controls that may have huge binary TLV data */ + if (type == SND_CTL_ELEM_TYPE_BYTES && + !snd_ctl_elem_info_is_readable(info) && + !snd_ctl_elem_info_is_writable(info)) { + printf("%s; ASoC TLV Byte control, skipping bytes dump\n", space); + goto __skip_tlv; + } + tlv = malloc(4096); if ((err = snd_hctl_elem_tlv_read(elem, tlv, 4096)) < 0) { error("Control %s element TLV read error: %s\n", card, snd_strerror(err)); -- 2.7.0 ++++++ 0005-alsabat-rename-to-avoid-naming-conflict.patch ++++++ >From 9fa7f6fd0645f822793f8c51d3c3e090716108eb Mon Sep 17 00:00:00 2001 From: "Lu, Han" <[email protected]> Date: Wed, 3 Feb 2016 14:20:33 +0800 Subject: [PATCH] alsabat: rename to avoid naming conflict alsa-utils as well as bareos-bat (as well a some Bacula packages) all contain a program called /usr/bin/bat, which causes conflicts on various distributions ("basic audio tester" vs "bareos administration tool"("bacula administration tool")). Rename to avoid conflict. Signed-off-by: Lu, Han <[email protected]> Signed-off-by: Takashi Iwai <[email protected]> --- bat/Makefile.am | 10 ++-- bat/alsabat.1 | 159 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ bat/bat.1 | 158 ------------------------------------------------------- bat/bat.c | 2 +- 4 files changed, 165 insertions(+), 164 deletions(-) create mode 100644 bat/alsabat.1 delete mode 100644 bat/bat.1 diff --git a/bat/Makefile.am b/bat/Makefile.am index f0dc5abbbe46..8dfafa99e179 100644 --- a/bat/Makefile.am +++ b/bat/Makefile.am @@ -1,9 +1,9 @@ -bin_PROGRAMS = bat -man_MANS = bat.1 +bin_PROGRAMS = alsabat +man_MANS = alsabat.1 -EXTRA_DIST = bat.1 +EXTRA_DIST = alsabat.1 -bat_SOURCES = \ +alsabat_SOURCES = \ bat.c \ common.c \ analyze.c \ @@ -21,4 +21,4 @@ noinst_HEADERS = \ AM_CPPFLAGS = \ -Wall -I$(top_srcdir)/include -bat_LDADD = @FFTW_LIB@ +alsabat_LDADD = @FFTW_LIB@ diff --git a/bat/alsabat.1 b/bat/alsabat.1 new file mode 100644 index 000000000000..8d0b9c0b9c0e --- /dev/null +++ b/bat/alsabat.1 @@ -0,0 +1,159 @@ +.TH ALSABAT 1 "20th October 2015" +.SH NAME +alsabat \- command\-line sound tester for ALSA sound card driver + +.SH SYNOPSIS +\fBalsabat\fP [\fIflags\fP] + +.SH DESCRIPTION +\fBALSABAT(ALSA Basic Audio Tester)\fP is a simple command\-line utility +intended to help automate audio driver and sound server testing with little +human interaction. ALSABAT can be used to test audio quality, stress test +features and test audio before and after PM state changes. + +ALSABAT's design is relatively simple. ALSABAT plays an audio stream and +captures the same stream in either a digital or analog loop back. It then +compares the captured stream using a FFT to the original to determine if +the test case passes or fails. + +ALSABAT can either run wholly on the target machine being tested (standalone +mode) or can run as a client/server mode where by alsabat client runs on the +target and runs as a server on a separate tester machine. The client/server +mode still requires some manual interaction for synchronization, but this +is actively being developed for future releases. + +The hardware testing configuration may require the use of an analog cable +connecting target to tester machines or a cable to create an analog +loopback if no loopback mode is not available on the sound hardware that +is being tested. +An analog loopback cable can be used to connect the "line in" to "line out" +jacks to create a loopback. If only headphone and mic jacks (or combo jack) +are available then the following simple circuit can be used to create an +analog loopback :- + +https://source.android.com/devices/audio/loopback.html + +.SH OPTIONS +.TP +\fI\-h, \-\-help\fP +Help: show syntax. +.TP +\fI\-D\fP +Select sound card to be tested by name. +.TP +\fI\-P\fP +Select the playback PCM device. +.TP +\fI\-C\fP +Select the capture PCM device. +.TP +\fI\-f\fP +Sample format +.br +Recognized sample formats are: U8 S16_LE S24_3LE S32_LE +.br +Some of these may not be available on selected hardware +.br +The available format shortcuts are: +.nf +\-f cd (16 bit little endian, 44100, stereo) [\-f S16_LE \-c2 \-r44100] +\-f dat (16 bit little endian, 48000, stereo) [\-f S16_LE \-c2 \-r48000] +.fi +If no format is given S16_LE is used. +.TP +\fI\-c\fP +The number of channels. The default is one channel. +Valid values at the moment are 1 or 2. +.TP +\fI\-r\fP +Sampling rate in Hertz. The default rate is 44100 Hertz. +Valid values depends on hardware support. +.TP +\fI\-n\fP +Duration of generated signal. +The value could be either of the two forms: +.br +1. Decimal integer, means number of frames; +.br +2. Floating point with suffix 's', means number of seconds. +.br +The default is 2 seconds. +.TP +\fI\-k\fP +Sigma k value for analysis. +.br +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: +.br +threshold = k * standard_deviation + mean_value +.br +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. +.br +ALSABAT then compares the detected frequency to target frequency, to +decide if the detecting passes or fails. +.br +The default value is 3.0. +.TP +\fI\-F\fP +Target frequency for signal generation and analysis, in Hertz. +The default is 997.0 Hertz. +Valid range is (DC_THRESHOLD, 40% * Sampling rate). +.TP +\fI\-p\fP +Total number of periods to play or capture. +.TP +\fI\-\-log=#\fP +Write stderr and stdout output to this log file. +.TP +\fI\-\-file=#\fP +Input WAV file for playback. +.TP +\fI\-\-saveplay=#\fP +Target WAV file to save capture test content. +.TP +\fI\-\-local\fP +Internal loopback mode. +Playback, capture and analysis internal to ALSABAT only. This is intended +for developers to test new ALSABAT features as no audio is routed outside +of ALSABAT. + +.SH EXAMPLES + +.TP +\fBalsabat \-P plughw:0,0 \-C plughw:0,0 \-c 2 \-f S32_LE \-F 250\fR +Generate and play a sine wave of 250 Hertz with 2 channel and S32_LE format, +and then capture and analyze. + +.TP +\fBalsabat \-P plughw:0,0 \-C plughw:0,0 \-\-file 500Hz.wav\fR +Play the RIFF WAV file "500Hz.wav" which contains 500 Hertz waveform LPCM +data, and then capture and analyze. + +.SH RETURN VALUE +.br +On success, returns 0. +.br +If no peak be detected, returns -1001; +.br +If only DC be detected, returns -1002; +.br +If peak frequency does not match with the target frequency, returns -1003. + +.SH SEE ALSO +\fB +aplay(1) +\fP + +.SH BUGS +Currently only support RIFF WAV format with PCM data. Please report any bugs to +the alsa-devel mailing list. + +.SH AUTHOR +\fBalsabat\fP is by Liam Girdwood <[email protected]>, Bernard +Gautier <[email protected]> and Han Lu <[email protected]>. +This document is by Liam Girdwood <[email protected]> and Han Lu +<[email protected]>. diff --git a/bat/bat.1 b/bat/bat.1 deleted file mode 100644 index e00fc272acdc..000000000000 --- a/bat/bat.1 +++ /dev/null @@ -1,158 +0,0 @@ -.TH BAT 1 "20th October 2015" -.SH NAME -bat \- command\-line sound tester for ALSA sound card driver - -.SH SYNOPSIS -\fBbat\fP [\fIflags\fP] - -.SH DESCRIPTION -\fBBAT(Basic Audio Tester)\fP is a simple command\-line utility intended -to help automate audio driver and sound server testing with little human -interaction. BAT can be used to test audio quality, stress test features -and test audio before and after PM state changes. - -BAT's design is relatively simple. BAT plays an audio stream and captures -the same stream in either a digital or analog loop back. It then compares -the captured stream using a FFT to the original to determine if the test -case passes or fails. - -BAT can either run wholly on the target machine being tested (standalone -mode) or can run as a client/server mode where by bat client runs on the -target and runs as a server on a separate tester machine. The client/server -mode still requires some manual interaction for synchronization, but this -is actively being developed for future releases. - -The hardware testing configuration may require the use of an analog cable -connecting target to tester machines or a cable to create an analog -loopback if no loopback mode is not available on the sound hardware that -is being tested. -An analog loopback cable can be used to connect the "line in" to "line out" -jacks to create a loopback. If only headphone and mic jacks (or combo jack) -are available then the following simple circuit can be used to create an -analog loopback :- - -https://source.android.com/devices/audio/loopback.html - -.SH OPTIONS -.TP -\fI\-h, \-\-help\fP -Help: show syntax. -.TP -\fI\-D\fP -Select sound card to be tested by name. -.TP -\fI\-P\fP -Select the playback PCM device. -.TP -\fI\-C\fP -Select the capture PCM device. -.TP -\fI\-f\fP -Sample format -.br -Recognized sample formats are: U8 S16_LE S24_3LE S32_LE -.br -Some of these may not be available on selected hardware -.br -The available format shortcuts are: -.nf -\-f cd (16 bit little endian, 44100, stereo) [\-f S16_LE \-c2 \-r44100] -\-f dat (16 bit little endian, 48000, stereo) [\-f S16_LE \-c2 \-r48000] -.fi -If no format is given S16_LE is used. -.TP -\fI\-c\fP -The number of channels. The default is one channel. -Valid values at the moment are 1 or 2. -.TP -\fI\-r\fP -Sampling rate in Hertz. The default rate is 44100 Hertz. -Valid values depends on hardware support. -.TP -\fI\-n\fP -Duration of generated signal. -The value could be either of the two forms: -.br -1. Decimal integer, means number of frames; -.br -2. Floating point with suffix 's', means number of seconds. -.br -The default is 2 seconds. -.TP -\fI\-k\fP -Sigma k value for analysis. -.br -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: -.br -threshold = k * standard_deviation + mean_value -.br -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. -.br -BAT then compares the detected frequency to target frequency, to decide -if the detecting passes or fails. -.br -The default value is 3.0. -.TP -\fI\-F\fP -Target frequency for signal generation and analysis, in Hertz. -The default is 997.0 Hertz. -Valid range is (DC_THRESHOLD, 40% * Sampling rate). -.TP -\fI\-p\fP -Total number of periods to play or capture. -.TP -\fI\-\-log=#\fP -Write stderr and stdout output to this log file. -.TP -\fI\-\-file=#\fP -Input WAV file for playback. -.TP -\fI\-\-saveplay=#\fP -Target WAV file to save capture test content. -.TP -\fI\-\-local\fP -Internal loopback mode. -Playback, capture and analysis internal to BAT only. This is intended for -developers to test new BAT features as no audio is routed outside of BAT. - -.SH EXAMPLES - -.TP -\fBbat \-P plughw:0,0 \-C plughw:0,0 \-c 2 \-f S32_LE \-F 250\fR -Generate and play a sine wave of 250 Hertz with 2 channel and S32_LE format, -and then capture and analyze. - -.TP -\fBbat \-P plughw:0,0 \-C plughw:0,0 \-\-file 500Hz.wav\fR -Play the RIFF WAV file "500Hz.wav" which contains 500 Hertz waveform LPCM -data, and then capture and analyze. - -.SH RETURN VALUE -.br -On success, returns 0. -.br -If no peak be detected, returns -1001; -.br -If only DC be detected, returns -1002; -.br -If peak frequency does not match with the target frequency, returns -1003. - -.SH SEE ALSO -\fB -aplay(1) -\fP - -.SH BUGS -Currently only support RIFF WAV format with PCM data. Please report any bugs to -the alsa-devel mailing list. - -.SH AUTHOR -\fBbat\fP is by Liam Girdwood <[email protected]>, Bernard Gautier -<[email protected]> and Han Lu <[email protected]>. -This document is by Liam Girdwood <[email protected]> and Han Lu -<[email protected]>. diff --git a/bat/bat.c b/bat/bat.c index 086b9fa4514d..ddb60b753009 100644 --- a/bat/bat.c +++ b/bat/bat.c @@ -272,7 +272,7 @@ static void test_capture(struct bat *bat) static void usage(struct bat *bat) { fprintf(bat->log, -_("Usage: bat [-options]...\n" +_("Usage: alsabat [-options]...\n" "\n" " -h, --help this help\n" " -D pcm device for both playback and capture\n" -- 2.7.0
