Mailinglist Archive: opensuse-commit (1206 mails)

< Previous Next >
commit alsa
  • From: root@xxxxxxx (h_root)
  • Date: Mon, 15 May 2006 17:45:48 +0200 (CEST)
  • Message-id: <20060515154548.277B88D6B4@xxxxxxxxxxxxxxx>

Hello community,

here is the log from the commit of package alsa
checked in at Mon May 15 17:45:48 CEST 2006.

--------
--- alsa/alsa.changes 2006-04-27 15:56:23.000000000 +0200
+++ alsa/alsa.changes 2006-05-15 17:18:56.000000000 +0200
@@ -1,0 +2,11 @@
+Mon May 15 12:53:24 CEST 2006 - tiwai@xxxxxxx
+
+- update to ALSA 1.0.11-final + HG fixes.
+ * all patches in SL10.1 have been merged
+ * external rate plugin SDK
+ * fix of kernel API for embedded systems
+ * new dmix code using O_APPEND open mode
+ * misc fixes for sequencer API
+ * fix missing dlclose in various plugins
+
+-------------------------------------------------------------------

Old:
----
alsa-lib-1.0.11rc2.tar.bz2
alsa-lib-32bit-compat-fix.diff
alsa-lib-applptr-sync-fix.diff
alsa-lib-avoid-unnecessary-resmgr.diff
alsa-lib-ctl-warning-fix.diff
alsa-lib-cvs-fixes.diff
alsa-lib-disconnect-return-enodev.diff
alsa-lib-dmix-2-periods-fix.diff
alsa-lib-dmix-binding-range-check.diff
alsa-lib-dmix-generic-fix.diff
alsa-lib-dmix-max-periods.diff
alsa-lib-dmix-varsize.diff
alsa-lib-dmix-xrun-check-in-wait.diff
alsa-lib-fix-close-in-disconnect.diff
alsa-lib-fix-nonblock-open.diff
alsa-lib-fix-plug-conversion.diff
alsa-lib-fix-rate-cpu-hog-in-start.diff
alsa-lib-fix-recursive-parse.diff
alsa-lib-fix-seq-typo.diff
alsa-lib-ladspa-plugin-fix.diff
alsa-lib-memleak-fix.diff
alsa-lib-no-alisp.dif
alsa-lib-pcm-extplug-fix.diff
alsa-lib-pcm-full-duplex-fix.diff
alsa-lib-pcm-hw-mode-restore.diff
alsa-lib-pcm-hw-restriction.diff
alsa-lib-pcm-rate-fix2.diff
alsa-lib-pcm-rate-free-fix.diff
alsa-lib-pcm-rate-overflow-fix.diff
alsa-lib-pcm-timer-size-hack.diff
alsa-lib-rawmidi-virt-fix.diff
alsa-lib-remove-bad-assert.diff
alsa-oss-1.0.10.tar.bz2
alsa-oss-cvs-fixes.diff
alsa-utils-1.0.11rc2.tar.bz2
alsa-utils-alsaconf-lspci-fix.diff
alsa-utils-speaker-test-5.1-fix.diff
alsa-utils-speaker-test-buffer-fix.diff

New:
----
alsa-lib-1.0.11.tar.bz2
alsa-lib-hg-fixes.diff
alsa-oss-1.0.11.tar.bz2
alsa-utils-1.0.11.tar.bz2
alsa-utils-hg-fixes.diff

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ alsa.spec ++++++
--- /var/tmp/diff_new_pack.buByfJ/_old 2006-05-15 17:44:42.000000000 +0200
+++ /var/tmp/diff_new_pack.buByfJ/_new 2006-05-15 17:44:42.000000000 +0200
@@ -12,7 +12,7 @@

Name: alsa
BuildRequires: doxygen resmgr
-%define package_version 1.0.11rc2
+%define package_version 1.0.11
License: GPL
Group: System/Libraries
Provides: alsa-lib alsa-utils alsa-conf
@@ -21,11 +21,10 @@
Autoreqprov: on
Summary: Advanced Linux Sound Architecture
Version: 1.0.11
-Release: 30
+Release: 32
Source1: ftp://ftp.alsa-project.org/pub/lib/alsa-lib-%{package_version}.tar.bz2
Source2: ftp://ftp.alsa-project.org/pub/util/alsa-utils-%{package_version}.tar.bz2
-# Source5: ftp://ftp.alsa-project.org/pub/oss/alsa-oss-%{package_version}.tar.bz2
-Source5: ftp://ftp.alsa-project.org/pub/oss/alsa-oss-1.0.10.tar.bz2
+Source5: ftp://ftp.alsa-project.org/pub/oss/alsa-oss-%{package_version}.tar.bz2
Source6: udev-soundfont
Source7: load-soundfont
Source8: 40-alsa.rules
@@ -41,42 +40,9 @@
Source30: all_notes_off
Source31: all_notes_off.bin
Source32: all_notes_off.mid
-Patch: alsa-lib-no-alisp.dif
-Patch1: alsa-lib-cvs-fixes.diff
-# Patch2: alsa-utils-cvs-fixes.diff
-Patch3: alsa-oss-cvs-fixes.diff
-Patch10: alsa-lib-remove-bad-assert.diff
-Patch11: alsa-lib-ladspa-plugin-fix.diff
-Patch12: alsa-lib-fix-recursive-parse.diff
-Patch13: alsa-lib-memleak-fix.diff
-Patch14: alsa-lib-rawmidi-virt-fix.diff
-Patch15: alsa-lib-fix-plug-conversion.diff
-Patch16: alsa-lib-fix-nonblock-open.diff
-Patch17: alsa-lib-pcm-full-duplex-fix.diff
-Patch18: alsa-lib-dmix-xrun-check-in-wait.diff
-Patch19: alsa-lib-ctl-warning-fix.diff
-Patch20: alsa-lib-avoid-unnecessary-resmgr.diff
-Patch21: alsa-lib-fix-close-in-disconnect.diff
-Patch22: alsa-lib-fix-seq-typo.diff
-Patch23: alsa-lib-pcm-rate-overflow-fix.diff
-Patch24: alsa-lib-disconnect-return-enodev.diff
-Patch25: alsa-lib-pcm-rate-fix2.diff
-Patch26: alsa-lib-pcm-rate-free-fix.diff
-Patch27: alsa-lib-pcm-hw-restriction.diff
-Patch28: alsa-lib-pcm-hw-mode-restore.diff
-Patch29: alsa-lib-pcm-extplug-fix.diff
-Patch30: alsa-lib-dmix-varsize.diff
-Patch31: alsa-lib-pcm-timer-size-hack.diff
-Patch32: alsa-lib-dmix-generic-fix.diff
-Patch33: alsa-lib-dmix-2-periods-fix.diff
-Patch34: alsa-lib-32bit-compat-fix.diff
-Patch35: alsa-lib-applptr-sync-fix.diff
-Patch36: alsa-lib-dmix-max-periods.diff
-Patch37: alsa-lib-dmix-binding-range-check.diff
-Patch38: alsa-lib-fix-rate-cpu-hog-in-start.diff
-Patch50: alsa-utils-speaker-test-5.1-fix.diff
-Patch51: alsa-utils-speaker-test-buffer-fix.diff
-Patch52: alsa-utils-alsaconf-lspci-fix.diff
+Patch1: alsa-lib-hg-fixes.diff
+Patch2: alsa-utils-hg-fixes.diff
+# Patch3: alsa-oss-hg-fixes.diff
URL: http://www.alsa-project.org/
BuildRoot: %{_tmppath}/%{name}-%{version}-build

@@ -130,47 +96,14 @@
%prep
%setup -c -n alsa -T -a 1 -a 2 -a 5
cd alsa-lib*/.
-%patch -p1
%patch1 -p1
-%patch10 -p1
-%patch11 -p1
-%patch12 -p1
-%patch13 -p1
-%patch14 -p1
-%patch15 -p1
-%patch16 -p1
-%patch17 -p1
-%patch18 -p1
-%patch19 -p1
-%patch20 -p1
-%patch21 -p1
-%patch22 -p1
-%patch23 -p1
-%patch24 -p1
-%patch25 -p1
-%patch26 -p1
-%patch27 -p1
-%patch28 -p1
-%patch29 -p1
-%patch30 -p1
-%patch31 -p1
-%patch32 -p1
-%patch33 -p1
-%patch34 -p1
-%patch35 -p1
-%patch36 -p1
-%patch37 -p1
-%patch38 -p1
cd ..
cd alsa-utils*/.
-# %patch2 -p1
-%patch50 -p1
-%patch51 -p1
-%patch52 -p1
-cd ..
-cd alsa-oss*/.
-%patch3 -p1
+%patch2 -p1
cd ..
+# cd alsa-oss*/.
+# %patch3 -p1
+# cd ..
%{?suse_update_config:%{suse_update_config -f alsa-lib*/. alsa-utils*/. alsa-oss*/.}}

%build
@@ -444,6 +377,14 @@
%doc alsa-lib*/doc/doxygen/html/*

%changelog -n alsa
+* Mon May 15 2006 - tiwai@xxxxxxx
+- update to ALSA 1.0.11-final + HG fixes.
+ * all patches in SL10.1 have been merged
+ * external rate plugin SDK
+ * fix of kernel API for embedded systems
+ * new dmix code using O_APPEND open mode
+ * misc fixes for sequencer API
+ * fix missing dlclose in various plugins
* Thu Apr 27 2006 - tiwai@xxxxxxx
- fix segfault with direct plugins when invalid channel binding
parameters are given.







++++++ alsa-lib-1.0.11rc2.tar.bz2 -> alsa-lib-1.0.11.tar.bz2 ++++++
++++ 7984 lines of diff (skipped)

++++++ alsa-lib-hg-fixes.diff ++++++
++++ 1205 lines (skipped)

++++++ alsa-oss-1.0.10.tar.bz2 -> alsa-oss-1.0.11.tar.bz2 ++++++
++++ 13128 lines of diff (skipped)
++++ retrying with extended exclude list
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/alsa-oss-1.0.10/alsa/mixer.c new/alsa-oss-1.0.11/alsa/mixer.c
--- old/alsa-oss-1.0.10/alsa/mixer.c 2005-06-08 16:19:54.000000000 +0200
+++ new/alsa-oss-1.0.11/alsa/mixer.c 2006-01-05 19:47:01.000000000 +0100
@@ -482,9 +482,13 @@
break;
}
if (snd_mixer_selem_has_playback_volume(elem)) {
- err = snd_mixer_selem_get_playback_switch(elem, SND_MIXER_SCHN_FRONT_LEFT, &sw);
- if (err < 0)
- break;
+ if (snd_mixer_selem_has_playback_switch(elem)) {
+ err = snd_mixer_selem_get_playback_switch(elem, SND_MIXER_SCHN_FRONT_LEFT, &sw);
+ if (err < 0)
+ break;
+ } else {
+ sw = 1;
+ }
if (sw) {
err = snd_mixer_selem_get_playback_volume(elem, SND_MIXER_SCHN_FRONT_LEFT, &lvol);
if (err < 0)
@@ -494,9 +498,13 @@
if (snd_mixer_selem_is_playback_mono(elem)) {
rvol = lvol;
} else {
- err = snd_mixer_selem_get_playback_switch(elem, SND_MIXER_SCHN_FRONT_RIGHT, &sw);
- if (err < 0)
- break;
+ if (snd_mixer_selem_has_playback_switch(elem)) {
+ err = snd_mixer_selem_get_playback_switch(elem, SND_MIXER_SCHN_FRONT_RIGHT, &sw);
+ if (err < 0)
+ break;
+ } else {
+ sw = 1;
+ }
if (sw) {
err = snd_mixer_selem_get_playback_volume(elem, SND_MIXER_SCHN_FRONT_RIGHT, &rvol);
if (err < 0)
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/alsa-oss-1.0.10/compile new/alsa-oss-1.0.11/compile
--- old/alsa-oss-1.0.10/compile 2005-11-16 16:20:25.000000000 +0100
+++ new/alsa-oss-1.0.11/compile 2006-04-19 10:27:46.000000000 +0200
@@ -1,8 +1,9 @@
#! /bin/sh
-
# Wrapper for compilers which do not understand `-c -o'.

-# Copyright 1999, 2000 Free Software Foundation, Inc.
+scriptversion=2005-05-14.22
+
+# Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc.
# Written by Tom Tromey <tromey@xxxxxxxxxx>.
#
# This program is free software; you can redistribute it and/or modify
@@ -17,83 +18,125 @@
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.

-# Usage:
-# compile PROGRAM [ARGS]...
-# `-o FOO.o' is removed from the args passed to the actual compile.
-
-prog=$1
-shift
+# This file is maintained in Automake, please report
+# bugs to <bug-automake@xxxxxxx> or send patches to
+# <automake-patches@xxxxxxx>.
+
+case $1 in
+ '')
+ echo "$0: No command. Try \`$0 --help' for more information." 1>&2
+ exit 1;
+ ;;
+ -h | --h*)
+ cat <<\EOF
+Usage: compile [--help] [--version] PROGRAM [ARGS]
+
+Wrapper for compilers which do not understand `-c -o'.
+Remove `-o dest.o' from ARGS, run PROGRAM with the remaining
+arguments, and rename the output as expected.
+
+If you are trying to build a whole package this is not the
+right script to run: please start by reading the file `INSTALL'.
+
+Report bugs to <bug-automake@xxxxxxx>.
+EOF
+ exit $?
+ ;;
+ -v | --v*)
+ echo "compile $scriptversion"
+ exit $?
+ ;;
+esac

ofile=
cfile=
-args=
-while test $# -gt 0; do
- case "$1" in
- -o)
- # configure might choose to run compile as `compile cc -o foo foo.c'.
- # So we do something ugly here.
- ofile=$2
- shift
- case "$ofile" in
- *.o | *.obj)
- ;;
- *)
- args="$args -o $ofile"
- ofile=
- ;;
- esac
- ;;
- *.c)
- cfile=$1
- args="$args $1"
- ;;
- *)
- args="$args $1"
- ;;
- esac
- shift
+eat=
+
+for arg
+do
+ if test -n "$eat"; then
+ eat=
+ else
+ case $1 in
+ -o)
+ # configure might choose to run compile as `compile cc -o foo foo.c'.
+ # So we strip `-o arg' only if arg is an object.
+ eat=1
+ case $2 in
+ *.o | *.obj)
+ ofile=$2
+ ;;
+ *)
+ set x "$@" -o "$2"
+ shift
+ ;;
+ esac
+ ;;
+ *.c)
+ cfile=$1
+ set x "$@" "$1"
+ shift
+ ;;
+ *)
+ set x "$@" "$1"
+ shift
+ ;;
+ esac
+ fi
+ shift
done

if test -z "$ofile" || test -z "$cfile"; then
- # If no `-o' option was seen then we might have been invoked from a
- # pattern rule where we don't need one. That is ok -- this is a
- # normal compilation that the losing compiler can handle. If no
- # `.c' file was seen then we are probably linking. That is also
- # ok.
- exec "$prog" $args
+ # If no `-o' option was seen then we might have been invoked from a
+ # pattern rule where we don't need one. That is ok -- this is a
+ # normal compilation that the losing compiler can handle. If no
+ # `.c' file was seen then we are probably linking. That is also
+ # ok.
+ exec "$@"
fi

# Name of file we expect compiler to create.
-cofile=`echo $cfile | sed -e 's|^.*/||' -e 's/\.c$/.o/'`
+cofile=`echo "$cfile" | sed -e 's|^.*/||' -e 's/\.c$/.o/'`

# Create the lock directory.
# Note: use `[/.-]' here to ensure that we don't use the same name
# that we are using for the .o file. Also, base the name on the expected
# object file name, since that is what matters with a parallel build.
-lockdir=`echo $cofile | sed -e 's|[/.-]|_|g'`.d
+lockdir=`echo "$cofile" | sed -e 's|[/.-]|_|g'`.d
while true; do
- if mkdir $lockdir > /dev/null 2>&1; then
- break
- fi
- sleep 1
+ if mkdir "$lockdir" >/dev/null 2>&1; then
+ break
+ fi
+ sleep 1
done
# FIXME: race condition here if user kills between mkdir and trap.
-trap "rmdir $lockdir; exit 1" 1 2 15
+trap "rmdir '$lockdir'; exit 1" 1 2 15

# Run the compile.
-"$prog" $args
-status=$?
+"$@"
+ret=$?

if test -f "$cofile"; then
- mv "$cofile" "$ofile"
+ mv "$cofile" "$ofile"
+elif test -f "${cofile}bj"; then
+ mv "${cofile}bj" "$ofile"
fi

-rmdir $lockdir
-exit $status
+rmdir "$lockdir"
+exit $ret
+
+# Local Variables:
+# mode: shell-script
+# sh-indentation: 2
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-end: "$"
+# End:
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/alsa-oss-1.0.10/configure.in new/alsa-oss-1.0.11/configure.in
--- old/alsa-oss-1.0.10/configure.in 2005-11-15 14:45:25.000000000 +0100
+++ new/alsa-oss-1.0.11/configure.in 2006-04-19 09:42:41.000000000 +0200
@@ -1,6 +1,6 @@
-AC_PREREQ(2.53)
+AC_PREREQ(2.59)
AC_INIT(alsa/alsa-oss.c)
-AM_INIT_AUTOMAKE(alsa-oss, 1.0.10)
+AM_INIT_AUTOMAKE(alsa-oss, 1.0.11)

LIBTOOL_VERSION_INFO="0:0:0"
AC_SUBST(LIBTOOL_VERSION_INFO)
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/alsa-oss-1.0.10/missing new/alsa-oss-1.0.11/missing
--- old/alsa-oss-1.0.10/missing 2005-11-16 16:20:25.000000000 +0100
+++ new/alsa-oss-1.0.11/missing 2006-04-19 10:27:46.000000000 +0200
@@ -1,6 +1,10 @@
#! /bin/sh
# Common stub for a few missing GNU programs while installing.
-# Copyright (C) 1996, 1997, 1999, 2000, 2002 Free Software Foundation, Inc.
+
+scriptversion=2005-06-08.21
+
+# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005
+# Free Software Foundation, Inc.
# Originally by Fran,cois Pinard <pinard@xxxxxxxxxxxxxxxx>, 1996.

# This program is free software; you can redistribute it and/or modify
@@ -15,8 +19,8 @@

# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+# 02110-1301, USA.

# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
@@ -38,18 +42,24 @@
configure_ac=configure.in
fi

+msg="missing on your system"
+
case "$1" in
--run)
# Try to run requested program, and just exit if it succeeds.
run=
shift
"$@" && exit 0
+ # Exit code 63 means version mismatch. This often happens
+ # when the user try to use an ancient version of a tool on
+ # a file that requires a minimum version. In this case we
+ # we should proceed has if the program had been absent, or
+ # if --run hadn't been passed.
+ if test $? = 63; then
+ run=:
+ msg="probably too old"
+ fi
;;
-esac
-
-# If it does not exist, or fails to run (possibly an outdated version),
-# try to emulate it.
-case "$1" in

-h|--h|--he|--hel|--help)
echo "\
@@ -74,11 +84,15 @@
lex create \`lex.yy.c', if possible, from existing .c
makeinfo touch the output file
tar try tar, gnutar, gtar, then tar without non-portable flags
- yacc create \`y.tab.[ch]', if possible, from existing .[ch]"
+ yacc create \`y.tab.[ch]', if possible, from existing .[ch]
+
+Send bug reports to <bug-automake@xxxxxxx>."
+ exit $?
;;

-v|--v|--ve|--ver|--vers|--versi|--versio|--version)
- echo "missing 0.4 - GNU automake"
+ echo "missing $scriptversion (GNU Automake)"
+ exit $?
;;

-*)
@@ -87,14 +101,44 @@
exit 1
;;

- aclocal*)
+esac
+
+# Now exit if we have it, but it failed. Also exit now if we
+# don't have it and --version was passed (most likely to detect
+# the program).
+case "$1" in
+ lex|yacc)
+ # Not GNU programs, they don't have --version.
+ ;;
+
+ tar)
+ if test -n "$run"; then
+ echo 1>&2 "ERROR: \`tar' requires --run"
+ exit 1
+ elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
+ exit 1
+ fi
+ ;;
+
+ *)
if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
# We have it, but it failed.
exit 1
+ elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
+ # Could not run --version or --help. This is probably someone
+ # running `$TOOL --version' or `$TOOL --help' to check whether
+ # $TOOL exists and not knowing $TOOL uses missing.
+ exit 1
fi
+ ;;
+esac

+# If it does not exist, or fails to run (possibly an outdated version),
+# try to emulate it.
+case "$1" in
+ aclocal*)
echo 1>&2 "\
-WARNING: \`$1' is missing on your system. You should only need it if
+WARNING: \`$1' is $msg. You should only need it if
you modified \`acinclude.m4' or \`${configure_ac}'. You might want
to install the \`Automake' and \`Perl' packages. Grab them from
any GNU archive site."
@@ -102,13 +146,8 @@
;;

autoconf)
- if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
- # We have it, but it failed.
- exit 1
- fi
-
echo 1>&2 "\
-WARNING: \`$1' is missing on your system. You should only need it if
+WARNING: \`$1' is $msg. You should only need it if
you modified \`${configure_ac}'. You might want to install the
\`Autoconf' and \`GNU m4' packages. Grab them from any GNU
archive site."
@@ -116,13 +155,8 @@
;;

autoheader)
- if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
- # We have it, but it failed.
- exit 1
- fi
-
echo 1>&2 "\
-WARNING: \`$1' is missing on your system. You should only need it if
+WARNING: \`$1' is $msg. You should only need it if
you modified \`acconfig.h' or \`${configure_ac}'. You might want
to install the \`Autoconf' and \`GNU m4' packages. Grab them
from any GNU archive site."
@@ -140,13 +174,8 @@
;;

automake*)
- if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
- # We have it, but it failed.
- exit 1
- fi
-
echo 1>&2 "\
-WARNING: \`$1' is missing on your system. You should only need it if
+WARNING: \`$1' is $msg. You should only need it if
you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
You might want to install the \`Automake' and \`Perl' packages.
Grab them from any GNU archive site."
@@ -156,16 +185,11 @@
;;

autom4te)
- if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
- # We have it, but it failed.
- exit 1
- fi
-
echo 1>&2 "\
-WARNING: \`$1' is needed, and you do not seem to have it handy on your
- system. You might have modified some files without having the
+WARNING: \`$1' is needed, but is $msg.
+ You might have modified some files without having the
proper tools for further handling them.
- You can get \`$1Help2man' as part of \`Autoconf' from any GNU
+ You can get \`$1' as part of \`Autoconf' from any GNU
archive site."

file=`echo "$*" | sed -n 's/.*--output[ =]*\([^ ]*\).*/\1/p'`
@@ -185,7 +209,7 @@

bison|yacc)
echo 1>&2 "\
-WARNING: \`$1' is missing on your system. You should only need it if
+WARNING: \`$1' $msg. You should only need it if
you modified a \`.y' file. You may need the \`Bison' package
in order for those modifications to take effect. You can get
\`Bison' from any GNU archive site."
@@ -215,7 +239,7 @@

lex|flex)
echo 1>&2 "\
-WARNING: \`$1' is missing on your system. You should only need it if
+WARNING: \`$1' is $msg. You should only need it if
you modified a \`.l' file. You may need the \`Flex' package
in order for those modifications to take effect. You can get
\`Flex' from any GNU archive site."
@@ -237,13 +261,8 @@
;;

help2man)
- if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
- # We have it, but it failed.
- exit 1
- fi
-
echo 1>&2 "\
-WARNING: \`$1' is missing on your system. You should only need it if
+WARNING: \`$1' is $msg. You should only need it if
you modified a dependency of a manual page. You may need the
\`Help2man' package in order for those modifications to take
effect. You can get \`Help2man' from any GNU archive site."
@@ -262,32 +281,30 @@
;;

makeinfo)
- if test -z "$run" && (makeinfo --version) > /dev/null 2>&1; then
- # We have makeinfo, but it failed.
- exit 1
- fi
-
echo 1>&2 "\
-WARNING: \`$1' is missing on your system. You should only need it if
+WARNING: \`$1' is $msg. You should only need it if
you modified a \`.texi' or \`.texinfo' file, or any other file
indirectly affecting the aspect of the manual. The spurious
call might also be the consequence of using a buggy \`make' (AIX,
DU, IRIX). You might want to install the \`Texinfo' package or
the \`GNU make' package. Grab either from any GNU archive site."
+ # The file to touch is that specified with -o ...
file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
if test -z "$file"; then
- file=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
- file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $file`
- fi
+ # ... or it is the one specified with @setfilename ...
+ infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
+ file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $infile`
+ # ... or it is derived from the source name (dir/f.texi becomes f.info)
+ test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
+ fi
+ # If the file does not exist, the user really needs makeinfo;
+ # let's fail without touching anything.
+ test -f $file || exit 1
touch $file
;;

tar)
shift
- if test -n "$run"; then
- echo 1>&2 "ERROR: \`tar' requires --run"
- exit 1
- fi

# We have already tried tar in the generic part.
# Look for gnutar/gtar before invocation to avoid ugly error
@@ -323,10 +340,10 @@

*)
echo 1>&2 "\
-WARNING: \`$1' is needed, and you do not seem to have it handy on your
- system. You might have modified some files without having the
+WARNING: \`$1' is needed, and is $msg.
+ You might have modified some files without having the
proper tools for further handling them. Check the \`README' file,
- it often tells you about the needed prerequirements for installing
+ it often tells you about the needed prerequisites for installing
this package. You may also peek at any GNU archive site, in case
some other package would contain this missing \`$1' program."
exit 1
@@ -334,3 +351,10 @@
esac

exit 0
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-end: "$"
+# End:

++++++ alsa-utils-1.0.11rc2.tar.bz2 -> alsa-utils-1.0.11.tar.bz2 ++++++
++++ 2323 lines of diff (skipped)
++++ retrying with extended exclude list
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/alsa-utils-1.0.11rc2/alsaconf/alsaconf.in new/alsa-utils-1.0.11/alsaconf/alsaconf.in
--- old/alsa-utils-1.0.11rc2/alsaconf/alsaconf.in 2005-12-14 16:34:21.000000000 +0100
+++ new/alsa-utils-1.0.11/alsaconf/alsaconf.in 2006-03-21 17:52:15.000000000 +0100
@@ -71,7 +71,7 @@

for prog in lspci lsmod; do
for path in /sbin /usr/sbin /bin /usr/bin;do
- [[ -x $path/$prog ]] && eval $prog=$path/$prog
+ test -x $path/$prog && eval $prog=$path/$prog
done
done
unset prog path
@@ -663,7 +663,7 @@
/^[<literal space><literal tab>]*PCI: /{
gsub(/0x/, "");
gsub(/=/, ":");
- x = sprintf ("'$lspci' -n 2>/dev/null| grep '"' 040.: '"' | grep %s", $2);
+ x = sprintf ("'$lspci' -n 2>/dev/null| grep '"' 04..: '"' | grep %s", $2);
if (system (x) == 0)
printf "%s %s\n", $2, driver >>"'"$FOUND"'"
}
@@ -738,7 +738,7 @@
#
find_device_name () {
if expr "$1" : '[0-9a-f][0-9a-f][0-9a-f][0-9a-f]:[0-9a-f][0-9a-f][0-9a-f][0-9a-f]' >/dev/null; then
- $lspci -d $1 2>/dev/null| sed -e 's/^.*:..\.. Multimedia audio controller: //g'
+ $lspci -d $1 2>/dev/null| sed -e 's/^.*:..\.. [^:]*: //g'
return
elif expr "$1" : '[A-Z@][A-Z@][A-Z@][0-9a-f][0-9a-f][0-9a-f][0-9a-f]' >/dev/null; then
cardname=`grep '^Card [0-9]\+ .'$1':' $DUMP | head -n 1 | sed -e 's/^Card [0-9]\+ '\''.*:\(.*\)'\'' .*$/\1/'`
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/alsa-utils-1.0.11rc2/alsactl/Makefile.am new/alsa-utils-1.0.11/alsactl/Makefile.am
--- old/alsa-utils-1.0.11rc2/alsactl/Makefile.am 2005-05-23 16:52:32.000000000 +0200
+++ new/alsa-utils-1.0.11/alsactl/Makefile.am 2006-03-13 20:39:17.000000000 +0100
@@ -2,5 +2,5 @@
man_MANS=alsactl.1
EXTRA_DIST=alsactl.1

-alsactl_SOURCES=alsactl.c state.c power.c names.c
+alsactl_SOURCES=alsactl.c state.c names.c
noinst_HEADERS=alsactl.h
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/alsa-utils-1.0.11rc2/alsactl/alsactl.c new/alsa-utils-1.0.11/alsactl/alsactl.c
--- old/alsa-utils-1.0.11rc2/alsactl/alsactl.c 2005-05-17 18:18:14.000000000 +0200
+++ new/alsa-utils-1.0.11/alsactl/alsactl.c 2006-03-13 20:39:17.000000000 +0100
@@ -51,8 +51,6 @@
printf(" to configuration file\n");
printf(" restore<card #> load current driver setup for one or each soundcards\n");
printf(" from configuration file\n");
- printf(" power [card #] [state]\n");
- printf(" get/set power state for one or each soundcards\n");
}

int main(int argc, char *argv[])
@@ -115,8 +113,6 @@
if (!strcmp(cfgfile, SYS_ASOUNDRC))
cfgfile = SYS_ASOUNDNAMES;
res = generate_names(cfgfile);
- } else if (!strcmp(argv[optind], "power")) {
- res = power((const char **)argv + optind + 1, argc - optind - 1);
} else {
fprintf(stderr, "alsactl: Unknown command '%s'...\n",
argv[optind]);
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/alsa-utils-1.0.11rc2/alsactl/power.c new/alsa-utils-1.0.11/alsactl/power.c
--- old/alsa-utils-1.0.11rc2/alsactl/power.c 2005-05-10 12:55:25.000000000 +0200
+++ new/alsa-utils-1.0.11/alsactl/power.c 1970-01-01 01:00:00.000000000 +0100
@@ -1,200 +0,0 @@
-/*
- * Advanced Linux Sound Architecture Control Program
- * Copyright (c) Jaroslav Kysela <perex@xxxxxxx>
- *
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- *
- */
-
-#include "aconfig.h"
-#include "version.h"
-#include <getopt.h>
-#include <stdarg.h>
-#include <stdio.h>
-#include <assert.h>
-#include <errno.h>
-#include <alsa/asoundlib.h>
-#include "alsactl.h"
-
-
-static int get_int_state(const char *str)
-{
- if (!strcasecmp(str, "on"))
- return SND_CTL_POWER_D0;
- if (!strcasecmp(str, "off"))
- return SND_CTL_POWER_D3hot;
- if (*str == 'D' || *str == 'd') {
- str++;
- if (!strcmp(str, "0"))
- return SND_CTL_POWER_D0;
- if (!strcmp(str, "1"))
- return SND_CTL_POWER_D1;
- if (!strcmp(str, "2"))
- return SND_CTL_POWER_D2;
- if (!strcmp(str, "3"))
- return SND_CTL_POWER_D3;
- if (!strcmp(str, "3hot"))
- return SND_CTL_POWER_D3hot;
- if (!strcmp(str, "3cold"))
- return SND_CTL_POWER_D3cold;
- }
- return -1;
-}
-
-static const char *get_str_state(int power_state)
-{
- static char str[16];
-
- switch (power_state) {
- case SND_CTL_POWER_D0:
- return "D0";
- case SND_CTL_POWER_D1:
- return "D1";
- case SND_CTL_POWER_D2:
- return "D2";
- // return SND_CTL_POWER_D3; /* it's same as D3hot */
- case SND_CTL_POWER_D3hot:
- return "D3hot";
- case SND_CTL_POWER_D3cold:
- return "D3cold";
- default:
- sprintf(str, "???0x%x", power_state);
- return str;
- }
-}
-
-static int show_power(int cardno)
-{
- snd_ctl_t *handle;
- char name[16];
- unsigned int power_state;
- int err;
-
- sprintf(name, "hw:%d", cardno);
- err = snd_ctl_open(&handle, name, 0);
- if (err < 0) {
- error("snd_ctl_open error: %s", snd_strerror(err));
- return err;
- }
- err = snd_ctl_get_power_state(handle, &power_state);
- if (err < 0) {
- error("snd_ctl_get_power_state error: %s", snd_strerror(err));
- snd_ctl_close(handle);
- return err;
- }
- snd_ctl_close(handle);
- printf("Power state for card #%d is %s\n", cardno, get_str_state(power_state));
- return 0;
-}
-
-static int set_power(int cardno, unsigned int power_state)
-{
- snd_ctl_t *handle;
- char name[16];
- int err;
-
- sprintf(name, "hw:%d", cardno);
- err = snd_ctl_open(&handle, name, 0);
- if (err < 0) {
- error("snd_ctl_open error: %s", snd_strerror(err));
- return err;
- }
- err = snd_ctl_set_power_state(handle, power_state);
- if (err < 0) {
- error("snd_ctl_set_power_state error: %s", snd_strerror(err));
- snd_ctl_close(handle);
- return err;
- }
- err = snd_ctl_get_power_state(handle, &power_state);
- if (err < 0) {
- error("snd_ctl_get_power_state error: %s", snd_strerror(err));
- snd_ctl_close(handle);
- return err;
- }
- snd_ctl_close(handle);
- printf("Power state for card #%d is %s\n", cardno, get_str_state(power_state));
- return 0;
-}
-
-
-int power(const char *argv[], int argc)
-{
- int power_state, err;
-
- if (argc == 0) { /* show status only */
- int card, first = 1;
-
- card = -1;
- /* find each installed soundcards */
- while (1) {
- if (snd_card_next(&card) < 0)
- break;
- if (card < 0) {
- if (first) {
- error("No soundcards found...");
- return -ENODEV;
- }
- break;
- }
- first = 0;
- if ((err = show_power(card)) < 0)
- return err;
- }
- return 0;
- }
- power_state = get_int_state(argv[0]);
- if (power_state >= 0) {
- int card, first = 1;
-
- card = -1;
- /* find each installed soundcards */
- while (1) {
- if (snd_card_next(&card) < 0)
- break;
- if (card < 0) {
- if (first) {
- error("No soundcards found...");
- return -ENODEV;
- }
- break;
- }
- first = 0;
- if ((err = set_power(card, power_state)))
- return err;
- }
- } else {
- int cardno;
-
- cardno = snd_card_get_index(argv[0]);
- if (cardno < 0) {
- error("Cannot find soundcard '%s'...", argv[0]);
- return -ENODEV;
- }
- if (argc > 1) {
- power_state = get_int_state(argv[1]);
- if (power_state < 0) {
- error("Invalid power state '%s'...", argv[1]);
- return -EINVAL;
- }
- if ((err = set_power(cardno, power_state)) < 0)
- return err;
- } else {
- if ((err = show_power(cardno)) < 0)
- return err;
- }
- }
- return 0;
-}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/alsa-utils-1.0.11rc2/aplay/aplay.1 new/alsa-utils-1.0.11/aplay/aplay.1
--- old/alsa-utils-1.0.11rc2/aplay/aplay.1 2005-12-06 12:25:47.000000000 +0100
+++ new/alsa-utils-1.0.11/aplay/aplay.1 2006-03-13 20:38:36.000000000 +0100
@@ -80,7 +80,7 @@
If this option is not set, the read/write I/O mode will be used.
.TP
\fI\-N, \-\-nonblock\fP
-Open the audio device in non-blocking mode. If the device is busy the program will exit immediatly.
+Open the audio device in non-blocking mode. If the device is busy the program will exit immediately.
If this option is not set the program will block until the audio device is available again.
.TP
\fI\-F, \-\-period\-time=#\fP
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/alsa-utils-1.0.11rc2/aplay/aplay.c new/alsa-utils-1.0.11/aplay/aplay.c
--- old/alsa-utils-1.0.11rc2/aplay/aplay.c 2005-12-16 19:44:14.000000000 +0100
+++ new/alsa-utils-1.0.11/aplay/aplay.c 2006-04-18 15:32:49.000000000 +0200
@@ -916,8 +916,15 @@
assert(err >= 0);
if ((float)rate * 1.05 < hwparams.rate || (float)rate * 0.95 > hwparams.rate) {
if (!quiet_mode) {
+ char plugex[64];
fprintf(stderr, _("Warning: rate is not accurate (requested = %iHz, got = %iHz)\n"), rate, hwparams.rate);
- fprintf(stderr, _(" please, try the plug plugin (-Dplug:%s)\n"), snd_pcm_name(handle));
+ if (strchr(snd_pcm_name(handle), ':'))
+ *plugex = 0;
+ else
+ snprintf(plugex, sizeof(plugex), "(-Dplug:%s)",
+ snd_pcm_name(handle));
+ fprintf(stderr, _(" please, try the plug plugin %s\n"),
+ plugex);
}
}
rate = hwparams.rate;
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/alsa-utils-1.0.11rc2/aplay/arecord.1 new/alsa-utils-1.0.11/aplay/arecord.1
--- old/alsa-utils-1.0.11rc2/aplay/arecord.1 2005-12-06 12:25:47.000000000 +0100
+++ new/alsa-utils-1.0.11/aplay/arecord.1 2006-03-13 20:38:36.000000000 +0100
@@ -80,7 +80,7 @@
If this option is not set, the read/write I/O mode will be used.
.TP
\fI\-N, \-\-nonblock\fP
-Open the audio device in non-blocking mode. If the device is busy the program will exit immediatly.
+Open the audio device in non-blocking mode. If the device is busy the program will exit immediately.
If this option is not set the program will block until the audio device is available again.
.TP
\fI\-F, \-\-period\-time=#\fP
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/alsa-utils-1.0.11rc2/configure.in new/alsa-utils-1.0.11/configure.in
--- old/alsa-utils-1.0.11rc2/configure.in 2006-01-02 09:22:15.000000000 +0100
+++ new/alsa-utils-1.0.11/configure.in 2006-04-19 10:00:51.000000000 +0200
@@ -1,8 +1,8 @@
dnl Process this file with autoconf to produce a configure script.
-AC_PREREQ(2.53)
+AC_PREREQ(2.59)
AC_INIT(alsamixer/alsamixer.c)
AC_PREFIX_DEFAULT(/usr)
-AM_INIT_AUTOMAKE(alsa-utils, 1.0.11rc2)
+AM_INIT_AUTOMAKE(alsa-utils, 1.0.11)

AM_GNU_GETTEXT([external])
AM_GNU_GETTEXT_VERSION([0.14])
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/alsa-utils-1.0.11rc2/include/version.h new/alsa-utils-1.0.11/include/version.h
--- old/alsa-utils-1.0.11rc2/include/version.h 2006-01-02 09:23:59.000000000 +0100
+++ new/alsa-utils-1.0.11/include/version.h 2006-04-19 10:02:37.000000000 +0200
@@ -4,9 +4,9 @@

#define SND_UTIL_MAJOR 1
#define SND_UTIL_MINOR 0
-#define SND_UTIL_SUBMINOR 11rc2
+#define SND_UTIL_SUBMINOR 11
#define SND_UTIL_VERSION ((SND_UTIL_MAJOR<<16)|\
(SND_UTIL_MINOR<<8)|\
SND_UTIL_SUBMINOR)
-#define SND_UTIL_VERSION_STR "1.0.11rc2"
+#define SND_UTIL_VERSION_STR "1.0.11"

Binary files old/alsa-utils-1.0.11rc2/po/ja.gmo and new/alsa-utils-1.0.11/po/ja.gmo differ
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/alsa-utils-1.0.11rc2/po/ja.po new/alsa-utils-1.0.11/po/ja.po
--- old/alsa-utils-1.0.11rc2/po/ja.po 2006-01-02 09:24:55.000000000 +0100
+++ new/alsa-utils-1.0.11/po/ja.po 2006-04-19 10:03:40.000000000 +0200
@@ -8,8 +8,8 @@
msgstr ""
"Project-Id-Version: alsa-utils 1.0.9a\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-01-02 09:24+0100\n"
-"PO-Revision-Date: 2005-12-01 01:00+0100\n"
+"POT-Creation-Date: 2006-04-19 10:03+0200\n"
+"PO-Revision-Date: 2006-04-18 15:51+0200\n"
"Last-Translator: Takashi Iwai <tiwai@xxxxxxx>\n"
"Language-Team: Japanese\n"
"MIME-Version: 1.0\n"
@@ -91,7 +91,7 @@
"-v, --verbose PCM の設定を表示 (複数指定可能)\n"
"-I, --separate-channels 各チャネルに一つのファイルを用いる\n"

-#: aplay/aplay.c:180 speaker-test/speaker-test.c:714
+#: aplay/aplay.c:180 speaker-test/speaker-test.c:723
msgid "Recognized sample formats are:"
msgstr "認識されるサンプルフォーマット:"

@@ -201,7 +201,7 @@
msgid "nonblock setting error: %s"
msgstr ""

-#: aplay/aplay.c:569 aplay/aplay.c:675 aplay/aplay.c:1018
+#: aplay/aplay.c:569 aplay/aplay.c:675 aplay/aplay.c:1025
msgid "not enough memory"
msgstr "メモリが足りません"

@@ -261,8 +261,8 @@
msgid "Warning: format is changed to S16_BE\n"
msgstr "警告: フォーマットは S16_BE に変更されます\n"

-#: aplay/aplay.c:859 aplay/aplay.c:1487 aplay/aplay.c:1494 aplay/aplay.c:2014
-#: aplay/aplay.c:2026
+#: aplay/aplay.c:859 aplay/aplay.c:1494 aplay/aplay.c:1501 aplay/aplay.c:2021
+#: aplay/aplay.c:2033
msgid "read error"
msgstr "リードエラー"

@@ -282,211 +282,211 @@
msgid "Channels count non available"
msgstr "チャネル数が使用不可能"

-#: aplay/aplay.c:919
+#: aplay/aplay.c:920
#, c-format
msgid "Warning: rate is not accurate (requested = %iHz, got = %iHz)\n"
msgstr "警告: レートが不正確です (要求値 = %iHz, 使用値 = %iHz)\n"

-#: aplay/aplay.c:920
+#: aplay/aplay.c:926
#, c-format
-msgid " please, try the plug plugin (-Dplug:%s)\n"
-msgstr " plug プラグイン (-Dplug:%s) を使用してください\n"
+msgid " please, try the plug plugin %s\n"
+msgstr " plug プラグイン%s を使用してください\n"

-#: aplay/aplay.c:954
+#: aplay/aplay.c:961
msgid "Unable to install hw params:"
msgstr "hw params のインストールに失敗しました:"

-#: aplay/aplay.c:961
+#: aplay/aplay.c:968
#, c-format
msgid "Can't use period equal to buffer size (%lu == %lu)"
msgstr "period と buffer サイズには同じ値を使用できません (%lu == %lu)"

-#: aplay/aplay.c:968
+#: aplay/aplay.c:975
msgid "Unable to obtain xfer align\n"
msgstr "xfer align 値を得ることができません\n"

-#: aplay/aplay.c:1005
+#: aplay/aplay.c:1012
msgid "unable to install sw params:"
msgstr "sw params のインストールに失敗しました:"

-#: aplay/aplay.c:1044
+#: aplay/aplay.c:1051
#, c-format
msgid "status error: %s"
msgstr "ステータスエラー: %s"

-#: aplay/aplay.c:1052
+#: aplay/aplay.c:1059
#, c-format
msgid "%s!!! (at least %.3f ms long)\n"
msgstr "%s!!! (少なくとも %.3f ms)\n"

-#: aplay/aplay.c:1053
+#: aplay/aplay.c:1060
msgid "underrun"
msgstr "アンダーラン"

-#: aplay/aplay.c:1053
+#: aplay/aplay.c:1060
msgid "overrun"
msgstr "オーバーラン"

-#: aplay/aplay.c:1056
+#: aplay/aplay.c:1063
msgid "Status:\n"
msgstr "ステータス:\n"

-#: aplay/aplay.c:1060
+#: aplay/aplay.c:1067
#, c-format
msgid "xrun: prepare error: %s"
msgstr ""

-#: aplay/aplay.c:1066
+#: aplay/aplay.c:1073
msgid "Status(DRAINING):\n"
msgstr "ステータス(DRAINING):\n"

-#: aplay/aplay.c:1070
+#: aplay/aplay.c:1077
msgid "capture stream format change? attempting recover...\n"
msgstr "録音ストリームのフォーマットが変更? 修復を試みます...\n"

-#: aplay/aplay.c:1072
+#: aplay/aplay.c:1079
#, c-format
msgid "xrun(DRAINING): prepare error: %s"
msgstr ""

-#: aplay/aplay.c:1079
+#: aplay/aplay.c:1086
msgid "Status(R/W):\n"
msgstr "ステータス(R/W):\n"

-#: aplay/aplay.c:1082
+#: aplay/aplay.c:1089
#, c-format
msgid "read/write error, state = %s"
msgstr "読み書きエラー, ステータス = %s"

-#: aplay/aplay.c:1092
+#: aplay/aplay.c:1099
msgid "Suspended. Trying resume. "
msgstr "サスペンド中です。レジュームします。"

-#: aplay/aplay.c:1097
+#: aplay/aplay.c:1104
msgid "Failed. Restarting stream. "
msgstr "失敗しました。ストリームを再スタートします。"

-#: aplay/aplay.c:1099
+#: aplay/aplay.c:1106
#, c-format
msgid "suspend: prepare error: %s"
msgstr "サスペンド: prepare エラー: %s"

-#: aplay/aplay.c:1104
+#: aplay/aplay.c:1111
msgid "Done.\n"
msgstr "終了\n"

-#: aplay/aplay.c:1183
+#: aplay/aplay.c:1190
#, c-format
msgid "Unsupported bit size %d.\n"
msgstr ""

-#: aplay/aplay.c:1219
+#: aplay/aplay.c:1226
msgid " !clip "
msgstr ""

-#: aplay/aplay.c:1224
+#: aplay/aplay.c:1231
#, c-format
msgid "Max peak (%li samples): 0x%08x "
msgstr "最大ピーク (%li サンプル): 0x%08x "

-#: aplay/aplay.c:1257
+#: aplay/aplay.c:1264
#, c-format
msgid "write error: %s"
msgstr "書込エラー: %s"

-#: aplay/aplay.c:1299
+#: aplay/aplay.c:1306
#, c-format
msgid "writev error: %s"
msgstr "書込(writev)エラー: %s"

-#: aplay/aplay.c:1338
+#: aplay/aplay.c:1345
#, c-format
msgid "read error: %s"
msgstr "読込エラー: %s"

-#: aplay/aplay.c:1377
+#: aplay/aplay.c:1384
#, c-format
msgid "readv error: %s"
msgstr "読込(readv)エラー: %s"

-#: aplay/aplay.c:1425
+#: aplay/aplay.c:1432
msgid "can't allocate buffer for silence"
msgstr "サイレンス用のバッファの取得に失敗しました"

-#: aplay/aplay.c:1434 aplay/aplay.c:1662 aplay/aplay.c:1667 aplay/aplay.c:1714
-#: aplay/aplay.c:1723 aplay/aplay.c:1730 aplay/aplay.c:1740 aplay/aplay.c:1746
-#: aplay/aplay.c:1814 aplay/aplay.c:1844 aplay/aplay.c:1858
+#: aplay/aplay.c:1441 aplay/aplay.c:1669 aplay/aplay.c:1674 aplay/aplay.c:1721
+#: aplay/aplay.c:1730 aplay/aplay.c:1737 aplay/aplay.c:1747 aplay/aplay.c:1753
+#: aplay/aplay.c:1821 aplay/aplay.c:1851 aplay/aplay.c:1865
msgid "write error"
msgstr "書込エラー"

-#: aplay/aplay.c:1448
+#: aplay/aplay.c:1455
msgid "voc_pcm_flush - silence error"
msgstr ""

-#: aplay/aplay.c:1454
+#: aplay/aplay.c:1461
msgid "voc_pcm_flush error"
msgstr ""

-#: aplay/aplay.c:1478
+#: aplay/aplay.c:1485
msgid "malloc error"
msgstr "malloc エラー"

-#: aplay/aplay.c:1482
+#: aplay/aplay.c:1489
#, c-format
msgid "Playing Creative Labs Channel file '%s'...\n"
msgstr "Creative Labs Channel ファイル '%s' を演奏中...\n"

-#: aplay/aplay.c:1550 aplay/aplay.c:1642
+#: aplay/aplay.c:1557 aplay/aplay.c:1649
msgid "can't play packed .voc files"
msgstr "packed .voc ファイルは演奏できません"

-#: aplay/aplay.c:1602
+#: aplay/aplay.c:1609
#, c-format
msgid "can't play loops; %s isn't seekable\n"
msgstr "ループ演奏できません。%s はシーク不可能です\n"

-#: aplay/aplay.c:1651
+#: aplay/aplay.c:1658
#, c-format
msgid "unknown blocktype %d. terminate."
msgstr "未知のブロックタイプ %d: 終了します。"

-#: aplay/aplay.c:1781
+#: aplay/aplay.c:1788
#, c-format
msgid "Wave doesn't support %s format..."
msgstr "WAVE は %s フォーマットをサポートしません..."

-#: aplay/aplay.c:1838
+#: aplay/aplay.c:1845
#, c-format
msgid "Sparc Audio doesn't support %s format..."
msgstr "Sparc オーディオは %s フォーマットをサポートしません..."

-#: aplay/aplay.c:1923
+#: aplay/aplay.c:1930
msgid "Playing"
msgstr "再生中"

-#: aplay/aplay.c:1923
+#: aplay/aplay.c:1930
msgid "Recording"
msgstr "録音中"

-#: aplay/aplay.c:1927
+#: aplay/aplay.c:1934
#, c-format
msgid "Rate %d Hz, "
msgstr "レート %d Hz, "

-#: aplay/aplay.c:1929
+#: aplay/aplay.c:1936
msgid "Mono"
msgstr "モノラル"

-#: aplay/aplay.c:1931
+#: aplay/aplay.c:1938
msgid "Stereo"
msgstr "ステレオ"

-#: aplay/aplay.c:1933
+#: aplay/aplay.c:1940
#, c-format
msgid "Channels %i"
msgstr "チャネル数 %i"

-#: aplay/aplay.c:2280 aplay/aplay.c:2333
+#: aplay/aplay.c:2287 aplay/aplay.c:2340
#, c-format
msgid "You need to specify %d files"
msgstr "%d 個のファイルを指定してください"
@@ -729,149 +729,154 @@
msgid "disconnected\n"
msgstr "切り離し\n"

-#: speaker-test/speaker-test.c:88
+#: speaker-test/speaker-test.c:87
msgid "Front Left"
msgstr ""

-#: speaker-test/speaker-test.c:89
+#: speaker-test/speaker-test.c:88
msgid "Front Right"
msgstr ""

-#: speaker-test/speaker-test.c:90
+#: speaker-test/speaker-test.c:89
msgid "Rear Left"
msgstr ""

-#: speaker-test/speaker-test.c:91
+#: speaker-test/speaker-test.c:90
msgid "Rear Right"
msgstr ""

-#: speaker-test/speaker-test.c:92
+#: speaker-test/speaker-test.c:91
msgid "Center"
msgstr ""

-#: speaker-test/speaker-test.c:93
+#: speaker-test/speaker-test.c:92
msgid "LFE"
msgstr ""

-#: speaker-test/speaker-test.c:94
+#: speaker-test/speaker-test.c:93
msgid "Side Left"
msgstr ""

-#: speaker-test/speaker-test.c:95
+#: speaker-test/speaker-test.c:94
msgid "Side Right"
msgstr ""

-#: speaker-test/speaker-test.c:96
+#: speaker-test/speaker-test.c:95
msgid "Channel 9"
msgstr ""

-#: speaker-test/speaker-test.c:97
+#: speaker-test/speaker-test.c:96
msgid "Channel 10"
msgstr ""

-#: speaker-test/speaker-test.c:98
+#: speaker-test/speaker-test.c:97
msgid "Channel 11"
msgstr ""

-#: speaker-test/speaker-test.c:99
+#: speaker-test/speaker-test.c:98
msgid "Channel 12"
msgstr ""

-#: speaker-test/speaker-test.c:100
+#: speaker-test/speaker-test.c:99
msgid "Channel 13"
msgstr ""

-#: speaker-test/speaker-test.c:101
+#: speaker-test/speaker-test.c:100
msgid "Channel 14"
msgstr ""

-#: speaker-test/speaker-test.c:102
+#: speaker-test/speaker-test.c:101
msgid "Channel 15"
msgstr ""

-#: speaker-test/speaker-test.c:103
+#: speaker-test/speaker-test.c:102
msgid "Channel 16"
msgstr ""

-#: speaker-test/speaker-test.c:283
+#: speaker-test/speaker-test.c:279
#, c-format
msgid "Broken configuration for playback: no configurations available: %s\n"
msgstr "再生用に設定できません: 設定がみつかりません: %s\n"

-#: speaker-test/speaker-test.c:290
+#: speaker-test/speaker-test.c:286
#, c-format
msgid "Access type not available for playback: %s\n"
msgstr "アクセスタイプが不正です: %s\n"

-#: speaker-test/speaker-test.c:297
+#: speaker-test/speaker-test.c:293
#, c-format
msgid "Sample format not available for playback: %s\n"
msgstr "指定のサンプルフォーマットを使用できません: %s\n"

-#: speaker-test/speaker-test.c:304
+#: speaker-test/speaker-test.c:300
#, c-format
msgid "Channels count (%i) not available for playbacks: %s\n"
msgstr "チャネル数 (%i) を使用できません: %s\n"

-#: speaker-test/speaker-test.c:312
+#: speaker-test/speaker-test.c:308
#, c-format
msgid "Rate %iHz not available for playback: %s\n"
msgstr "レート %iHz を使用できません: %s\n"

-#: speaker-test/speaker-test.c:317
+#: speaker-test/speaker-test.c:313
#, c-format
msgid "Rate doesn't match (requested %iHz, get %iHz, err %d)\n"
msgstr "設定レートが一致しません< (要求値 %iHz, 取得値 %iHz, エラー %d)\n"

-#: speaker-test/speaker-test.c:321
+#: speaker-test/speaker-test.c:317
#, c-format
msgid "Rate set to %iHz (requested %iHz)\n"
msgstr "レート %iHz (要求値 %iHz)\n"

-#: speaker-test/speaker-test.c:330
+#: speaker-test/speaker-test.c:323
#, c-format
msgid "Buffer size range from %lu to %lu\n"
msgstr "バッファサイズ範囲 %lu 〜 %lu\n"

-#: speaker-test/speaker-test.c:331
+#: speaker-test/speaker-test.c:324
#, c-format
msgid "Period size range from %lu to %lu\n"
msgstr "ピリオドサイズ範囲 %lu 〜 %lu\n"

-#: speaker-test/speaker-test.c:332
+#: speaker-test/speaker-test.c:326
#, c-format
-msgid "Periods = %d\n"
-msgstr "ピリオド数 = %d\n"
+msgid "Requested period time %u us\n"
+msgstr "要求されたピリオド長 %u us\n"

-#: speaker-test/speaker-test.c:333
+#: speaker-test/speaker-test.c:329
#, c-format
-msgid "Buffer time size %lu\n"
-msgstr "バッファタイムサイズ %lu\n"
+msgid "Unable to set period time %u us for playback: %s\n"
+msgstr "ピリオド長 %u us を設定できません: %s\n"

-#: speaker-test/speaker-test.c:345
+#: speaker-test/speaker-test.c:335
#, c-format
-msgid "To choose buffer_size = %lu\n"
-msgstr "buffer_size = %lu を選択\n"
+msgid "Requested buffer time %u us\n"
+msgstr "要求されたバッファ長 %u us\n"

-#: speaker-test/speaker-test.c:346
+#: speaker-test/speaker-test.c:338
#, c-format
-msgid "To choose period_size = %lu\n"
-msgstr "period_size = %lu を選択\n"
+msgid "Unable to set buffer time %u us for playback: %s\n"
+msgstr "バッファ長 %u us を設定できません: %s\n"

-#: speaker-test/speaker-test.c:350
+#: speaker-test/speaker-test.c:345
#, c-format
-msgid "Unable to set period size %lu for playback: %s\n"
-msgstr "period_size %lu を設定できません: %s\n"
+msgid "Using max buffer size %lu\n"
+msgstr "最大バッファサイズ %lu を使用\n"

-#: speaker-test/speaker-test.c:355
+#: speaker-test/speaker-test.c:348
#, c-format
-msgid "Unable to get period size for playback: %s\n"
-msgstr "period_size を取得できません: %s\n"
+msgid "Unable to set buffer size %lu for playback: %s\n"
+msgstr "バッファサイズ %lu を設定できません: %s\n"

-#: speaker-test/speaker-test.c:360
+#: speaker-test/speaker-test.c:354
#, c-format
-msgid "Unable to set buffer size %lu for playback: %s\n"
-msgstr "buffer_size %lu を設定できません: %s\n"
+msgid "Periods = %u\n"
+msgstr "ピリオド数 = %u\n"
+
+#: speaker-test/speaker-test.c:357
+#, c-format
+msgid "Unable to set nperiods %u for playback: %s\n"
+msgstr "ピリオド数 %u を設定できません: %s\n"

#: speaker-test/speaker-test.c:364
#, c-format
@@ -887,101 +892,101 @@
msgid "buffer to small, could not use\n"
msgstr "バッファが小さすぎます\n"

-#: speaker-test/speaker-test.c:375
+#: speaker-test/speaker-test.c:374
#, c-format
msgid "Unable to set hw params for playback: %s\n"
msgstr "hw params を設定できません: %s\n"

-#: speaker-test/speaker-test.c:388
+#: speaker-test/speaker-test.c:387
#, c-format
msgid "Unable to determine current swparams for playback: %s\n"
msgstr "現在の swparams を取得できません: %s\n"

-#: speaker-test/speaker-test.c:395
+#: speaker-test/speaker-test.c:394
#, c-format
msgid "Unable to set start threshold mode for playback: %s\n"
msgstr "start_threshold モードを設定できません: %s\n"

-#: speaker-test/speaker-test.c:402
+#: speaker-test/speaker-test.c:401
#, c-format
msgid "Unable to set avail min for playback: %s\n"
msgstr "avail_min を設定できません: %s\n"

-#: speaker-test/speaker-test.c:409
+#: speaker-test/speaker-test.c:408
#, c-format
msgid "Unable to set transfer align for playback: %s\n"
msgstr "転送 align を設定できません: %s\n"

-#: speaker-test/speaker-test.c:416
+#: speaker-test/speaker-test.c:415
#, c-format
msgid "Unable to set sw params for playback: %s\n"
msgstr "再生用の sw params を設定できません: %s\n"

-#: speaker-test/speaker-test.c:431
+#: speaker-test/speaker-test.c:430
#, c-format
msgid "Can't recovery from underrun, prepare failed: %s\n"
msgstr "アンダーランから復帰失敗: %s\n"

-#: speaker-test/speaker-test.c:442
+#: speaker-test/speaker-test.c:441
#, c-format
msgid "Can't recovery from suspend, prepare failed: %s\n"
msgstr "サスペンドから復帰失敗: %s\n"

-#: speaker-test/speaker-test.c:516 speaker-test/speaker-test.c:897
+#: speaker-test/speaker-test.c:515 speaker-test/speaker-test.c:909
msgid "No enough memory\n"
msgstr "メモリが足りません\n"

-#: speaker-test/speaker-test.c:521
+#: speaker-test/speaker-test.c:520
#, c-format
msgid "Cannot open WAV file %s\n"
msgstr "WAVファイルがオープンできません: %s\n"

-#: speaker-test/speaker-test.c:525 speaker-test/speaker-test.c:554
+#: speaker-test/speaker-test.c:524 speaker-test/speaker-test.c:553
#, c-format
msgid "Invalid WAV file %s\n"
msgstr "不正なWAVファイルです: %s\n"

-#: speaker-test/speaker-test.c:530
+#: speaker-test/speaker-test.c:529
#, c-format
msgid "Not a WAV file: %s\n"
msgstr "WAVファイルではありません: %s\n"

-#: speaker-test/speaker-test.c:534
+#: speaker-test/speaker-test.c:533
#, c-format
msgid "Unsupported WAV format %d for %s\n"
msgstr "未サポートのWAVフォーマット %d: %s\n"

-#: speaker-test/speaker-test.c:539
+#: speaker-test/speaker-test.c:538
#, c-format
msgid "%s is not a mono stream (%d channels)\n"
msgstr "%s はモノストリームではありません (%d チャネル)\n"

-#: speaker-test/speaker-test.c:544
+#: speaker-test/speaker-test.c:543
#, c-format
msgid "Sample rate doesn't match (%d) for %s\n"
msgstr "サンプルレートが不一致です(%d): %s\n"

-#: speaker-test/speaker-test.c:549
+#: speaker-test/speaker-test.c:548
#, c-format
msgid "Unsupported sample format bits %d for %s\n"
msgstr "未サポートのサンプルフォーマットビット %d: %s\n"

-#: speaker-test/speaker-test.c:599
+#: speaker-test/speaker-test.c:598
#, c-format
msgid "Undefined channel %d\n"
msgstr "未定義のチャネル %d\n"

-#: speaker-test/speaker-test.c:650
+#: speaker-test/speaker-test.c:649
#, c-format
msgid "Write error: %d,%s\n"
msgstr "書込エラー: %d,%s\n"

-#: speaker-test/speaker-test.c:652
+#: speaker-test/speaker-test.c:651
#, c-format
msgid "xrun_recovery failed: %d,%s\n"
msgstr "xrun_recovery 失敗: %d,%s\n"

-#: speaker-test/speaker-test.c:699
+#: speaker-test/speaker-test.c:706
msgid ""
"Usage: speaker-test [OPTION]... \n"
"-h,--help\thelp\n"
@@ -992,8 +997,10 @@
"-F,--format\tsample format\n"
"-b,--buffer\tring buffer size in us\n"
"-p,--period\tperiod size in us\n"
+"-P,--nperiods\tnumber of periods\n"
"-t,--test\tpink=use pink noise, sine=use sine wave, wav=WAV file\n"
-"-s,--speaker\tsingle speaker test. Values 1=Left or 2=right\n"
+"-l,--nloops\tspecify number of loops to test, 0 = infinite\n"
+"-s,--speaker\tsingle speaker test. Values 1=Left, 2=right, etc\n"
"-w,--wavfile\tUse the given WAV file as a test sound\n"
"-W,--wavdir\tSpecify the directory containing WAV files\n"
"\n"
@@ -1005,77 +1012,86 @@
"-c,--channels チャネル数\n"
"-f,--frequency 正弦波周波数 (hz)\n"
"-F,--format サンプルフォーマット\n"
-"-b,--buffer リングバッファーサイズ (μs)\n"
+"-b,--buffer リングバッファサイズ (μs)\n"
"-p,--period ピリオドサイズ (μs)\n"
+"-P,--nperiods ピリオド数\n"
"-t,--test pink=ピンクノイズを使用, sine=正弦波を使用, wav=WAVファ"
"イル再生\n"
+"-l,--nloops 繰り返しテスト数, 0 = 無制限\n"
"-s,--speaker 単一スピーカーテスト 1=左 または 2=右\n"
"-w,--wavfile 指定のWAVファイルをテスト音源として使用\n"
"-W,--wavdir WAVファイルのあるディレクトリを指定\n"
"\n"

-#: speaker-test/speaker-test.c:827
+#: speaker-test/speaker-test.c:818
+#, c-format
+msgid "Invalid number of periods %d\n"
+msgstr "不正なピリオド数 %d\n"
+
+#: speaker-test/speaker-test.c:832 speaker-test/speaker-test.c:836
+#, c-format
+msgid "Invalid test type %s\n"
+msgstr "不正なテストタイプ %s\n"
+
+#: speaker-test/speaker-test.c:848
msgid "Invalid parameter for -s option.\n"
msgstr "-s オプションの値が不正です\n"

-#: speaker-test/speaker-test.c:838
+#: speaker-test/speaker-test.c:859
#, c-format
msgid "Unknown option '%c'\n"
msgstr "未知のオプション '%c'\n"

-#: speaker-test/speaker-test.c:854
-#, c-format
-msgid "Output failed: %s\n"
-msgstr "出力失敗: %s\n"
-
-#: speaker-test/speaker-test.c:858
+#: speaker-test/speaker-test.c:873
#, c-format
msgid "Playback device is %s\n"
msgstr "再生デバイス: %s\n"

-#: speaker-test/speaker-test.c:859
+#: speaker-test/speaker-test.c:874
#, c-format
msgid "Stream parameters are %iHz, %s, %i channels\n"
msgstr "ストリームパラメータ: %iHz, %s, %i チャネル\n"

-#: speaker-test/speaker-test.c:862
+#: speaker-test/speaker-test.c:877
msgid "Using 16 octaves of pink noise\n"
msgstr "16 オクターブのピンクノイズを使用\n"

-#: speaker-test/speaker-test.c:865
+#: speaker-test/speaker-test.c:880
#, c-format
msgid "Sine wave rate is %.4fHz\n"
msgstr "正弦波レート: %.4fHz\n"

-#: speaker-test/speaker-test.c:868
+#: speaker-test/speaker-test.c:883
msgid "WAV file(s)\n"
msgstr "WAV ファイル\n"

-#: speaker-test/speaker-test.c:874
+#: speaker-test/speaker-test.c:889
#, c-format
msgid "Playback open error: %d,%s\n"
msgstr "再生オープンエラー: %d,%s\n"

-#: speaker-test/speaker-test.c:879
+#: speaker-test/speaker-test.c:894
#, c-format
msgid "Setting of hwparams failed: %s\n"
msgstr "hwparams の設定に失敗: %s\n"

-#: speaker-test/speaker-test.c:886
+#: speaker-test/speaker-test.c:899
#, c-format
msgid "Setting of swparams failed: %s\n"
msgstr "swparams の設定に失敗: %s\n"

-#: speaker-test/speaker-test.c:928 speaker-test/speaker-test.c:955
+#: speaker-test/speaker-test.c:940 speaker-test/speaker-test.c:962
#, c-format
msgid "Transfer failed: %s\n"
msgstr "転送に失敗しました: %s\n"

-#: speaker-test/speaker-test.c:931
-msgid "Pausing\n"
-msgstr "停止中\n"
-
-#: speaker-test/speaker-test.c:943
+#: speaker-test/speaker-test.c:950
#, c-format
msgid "Time per period = %lf\n"
msgstr "ピリオド時間 = %lf\n"
+
+#~ msgid "Output failed: %s\n"
+#~ msgstr "出力失敗: %s\n"
+
+#~ msgid "Pausing\n"
+#~ msgstr "停止中\n"
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/alsa-utils-1.0.11rc2/speaker-test/speaker-test.1 new/alsa-utils-1.0.11/speaker-test/speaker-test.1
--- old/alsa-utils-1.0.11rc2/speaker-test/speaker-test.1 2005-11-30 18:09:17.000000000 +0100
+++ new/alsa-utils-1.0.11/speaker-test/speaker-test.1 2006-03-24 15:46:52.000000000 +0100
@@ -15,28 +15,7 @@
.SH NAME
speaker\-test \- command-line speaker test tone generator for ALSA
.SH SYNOPSIS
-.B speaker\-test
-.BR "" [ \-D | \-\-device
-.IR NAME ]
-.BR "" [ \-r | \-\-rate
-.IR RATE ]
-.BR "" [ \-c | \-\-channels
-.IR NUM ]
-.BR "" [ \-f | \-\-frequency
-.IR FREQ ]
-.BR "" [ \-p | \-\-period
-.IR TIME ]
-.BR "" [ \-n | \-\-noise
-.IR TIME ]
-.BR "" [ \-s | \-\-speaker
-.IR TYPE ]
-.BR "" [ \-w | \-\-wavfile
-.IR FILE ]
-.BR "" [ \-W | \-\-wavdir
-.IR DIR ]
-.P
-.B speaker\-test
-.B \-\-help
+.B speaker\-test [\-options]

.SH DESCRIPTION
\fBspeaker\-test\fP generates a tone that can be used to test the speakers of a computer.
@@ -60,28 +39,53 @@
Print usage help

.TP
+\fB\-b\fP | \fB\-\-buffer\fP \fITIME\fP
+Use buffer size of \fITIME\fP microseconds.
+When 0 is given, use the maximal buffer size.
+The default value is 0.
+
+.TP
\fB\-p\fP | \fB\-\-period\fP \fITIME\fP
-period size of \fITIME\fP microseconds
+Use period size of \fITIME\fP microseconds.
+When 0 is given, the periods given by \fB\-P\fP option is used.
+The default value is 0.
+
+.TP
+\fB\-P\fP | \fB\-\-nperiods\fP \fPERIODS\fP
+Use number of periods. The default value is 4.

.TP
\fB\-r\fP | \fB\-\-rate\fP \fIRATE\fP
stream of \fIRATE\fP Hz

.TP
-\fB\-s\fP | \fB\-\-speaker\fP \fBpink\fP|\fBsine\fP|\fBwav\fP
--tpink means use pink noise (default).
+\fB\-t\fP | \fB\-\-test\fP \fBpink\fP|\fBsine\fP|\fBwav\fP
+\fB\-t pink\fP means use pink noise (default).

-Pink noise is perceptually uniform noise - that is, it sounds like every frequency at once. If you can hear any tone it may indicate resonances in your speaker system or room.
+Pink noise is perceptually uniform noise -- that is, it sounds like every frequency at once. If you can hear any tone it may indicate resonances in your speaker system or room.

--tsine means use sine wave.
+\fB\-t sine\fP means to use sine wave.

--twav means to play WAV files, either pre-defined files or given via -w option.
+\fB\-t wav\fP means to play WAV files, either pre-defined files or given via \fB\-w\fP option.

You can pass the number from 1 to 3 as a backward compatibility.

.TP
-\fB\-s\fP | \fB\-\-speaker\fP \fBpink\fP|\fBsine\fP|\fBwav\fP
-Test speaker 1 or speaker 2 only, rather than both
+\fB\-l\fP | \fB\-\-nloops\fP \fBCOUNT\fP
+
+Specifies the number of loops. Zero means to run inifintely.
+
+When \fB\-s\fP option below with a valid channel is given, \fBspeaker\-test\fP will perform
+always a single-shot without looping.
+
+.TP
+\fB\-s\fP | \fB\-\-speaker\fP \fBCHANNEL\fP
+Do a single-shot speaker test for the given channel. The channel number starts from 1.
+The channel number orresponds to left, right, rear-left, rear-right, center, LFE,
+side-left, side-right, and so on.
+
+For example, when 1 is passed, it tests the left channel only once rather than both channels
+with looping.

.TP
\fB\-w\fP | \fB\-\-wavfile\fP
@@ -90,6 +94,7 @@
.TP
\fB\-W\fP | \fB\-\-wavdir\fP
Specify the directory containing WAV files for playback.
+The default path is \fI/usr/share/sounds/alsa\fP.


.SH USAGE EXAMPLES
@@ -117,3 +122,4 @@
.SH AUTHOR
The speaker-test program was written by James Courtier-Dutton.
Pink noise support was added by Nathan Hurst.
+Further extensions by Takashi Iwai.
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/alsa-utils-1.0.11rc2/speaker-test/speaker-test.c new/alsa-utils-1.0.11/speaker-test/speaker-test.c
--- old/alsa-utils-1.0.11rc2/speaker-test/speaker-test.c 2005-12-22 14:35:42.000000000 +0100
+++ new/alsa-utils-1.0.11/speaker-test/speaker-test.c 2006-04-06 19:24:12.000000000 +0200
@@ -33,7 +33,7 @@
* Changelog:
* 0.0.6 Added support for different sample formats.
*
- * speaker-test.c,v 1.18 2005/12/22 13:35:42 jcdutton Exp
+ * speaker-test.c,v 1.26 2006/04/06 17:24:12 tiwai Exp
*/

#include <stdio.h>
@@ -72,13 +72,12 @@
static unsigned int rate = 48000; /* stream rate */
static unsigned int channels = 1; /* count of channels */
static unsigned int speaker = 0; /* count of channels */
-static unsigned int buffer_time = 500000; /* ring buffer length in us */
-static unsigned int period_time = 100000; /* period time in us */
-#define PERIODS 4
+static unsigned int buffer_time = 0; /* ring buffer length in us */
+static unsigned int period_time = 0; /* period time in us */
+static unsigned int nperiods = 4; /* number of periods */
static double freq = 440; /* sinusoidal wave frequency in Hz */
static int test_type = TEST_PINK_NOISE; /* Test type. 1 = noise, 2 = sine wave */
static pink_noise_t pink;
-static snd_output_t *output = NULL;
static snd_pcm_uframes_t buffer_size;
static snd_pcm_uframes_t period_size;
static const char *given_test_wav_file = NULL;
@@ -268,14 +267,11 @@

static int set_hwparams(snd_pcm_t *handle, snd_pcm_hw_params_t *params, snd_pcm_access_t access) {
unsigned int rrate;
- int err, dir;
+ int err;
snd_pcm_uframes_t period_size_min;
snd_pcm_uframes_t period_size_max;
snd_pcm_uframes_t buffer_size_min;
snd_pcm_uframes_t buffer_size_max;
- snd_pcm_uframes_t buffer_time_to_size;
-
-

/* choose all parameters */
err = snd_pcm_hw_params_any(handle, params);
@@ -320,47 +316,51 @@

printf(_("Rate set to %iHz (requested %iHz)\n"), rrate, rate);
/* set the buffer time */
- buffer_time_to_size = ( (snd_pcm_uframes_t)buffer_time * rate) / 1000000;
err = snd_pcm_hw_params_get_buffer_size_min(params, &buffer_size_min);
err = snd_pcm_hw_params_get_buffer_size_max(params, &buffer_size_max);
- dir=0;
- err = snd_pcm_hw_params_get_period_size_min(params, &period_size_min,&dir);
- dir=0;
- err = snd_pcm_hw_params_get_period_size_max(params, &period_size_max,&dir);
+ err = snd_pcm_hw_params_get_period_size_min(params, &period_size_min, NULL);
+ err = snd_pcm_hw_params_get_period_size_max(params, &period_size_max, NULL);
printf(_("Buffer size range from %lu to %lu\n"),buffer_size_min, buffer_size_max);
printf(_("Period size range from %lu to %lu\n"),period_size_min, period_size_max);
- printf(_("Periods = %d\n"), PERIODS);
- printf(_("Buffer time size %lu\n"),buffer_time_to_size);
-
- buffer_size = buffer_time_to_size;
- //buffer_size=8096;
- //buffer_size=15052;
- buffer_size=buffer_size_max;
- if (buffer_size_max < buffer_size) buffer_size = buffer_size_max;
- if (buffer_size_min > buffer_size) buffer_size = buffer_size_min;
- //buffer_size=0x800;
- period_size = buffer_size/PERIODS;
- buffer_size = period_size*PERIODS;
- //period_size = 510;
- printf(_("To choose buffer_size = %lu\n"),buffer_size);
- printf(_("To choose period_size = %lu\n"),period_size);
- dir=0;
- err = snd_pcm_hw_params_set_period_size_near(handle, params, &period_size, &dir);
- if (err < 0) {
- printf(_("Unable to set period size %lu for playback: %s\n"), period_size, snd_strerror(err));
- return err;
- }
- dir=0;
- err = snd_pcm_hw_params_get_period_size(params, &period_size, &dir);
- if (err < 0) printf(_("Unable to get period size for playback: %s\n"), snd_strerror(err));
-
- dir=0;
- err = snd_pcm_hw_params_set_buffer_size_near(handle, params, &buffer_size);
- if (err < 0) {
- printf(_("Unable to set buffer size %lu for playback: %s\n"), buffer_size, snd_strerror(err));
- return err;
+ if (period_time > 0) {
+ printf(_("Requested period time %u us\n"), period_time);
+ err = snd_pcm_hw_params_set_period_time_near(handle, params, &period_time, NULL);
+ if (err < 0) {
+ printf(_("Unable to set period time %u us for playback: %s\n"),
+ period_time, snd_strerror(err));
+ return err;
+ }
+ }
+ if (buffer_time > 0) {
+ printf(_("Requested buffer time %u us\n"), buffer_time);
+ err = snd_pcm_hw_params_set_buffer_time_near(handle, params, &buffer_time, NULL);
+ if (err < 0) {
+ printf(_("Unable to set buffer time %u us for playback: %s\n"),
+ buffer_time, snd_strerror(err));
+ return err;
+ }
+ }
+ if (! buffer_time && ! period_time) {
+ buffer_size = buffer_size_max;
+ printf(_("Using max buffer size %lu\n"), buffer_size);
+ err = snd_pcm_hw_params_set_buffer_size_near(handle, params, &buffer_size);
+ if (err < 0) {
+ printf(_("Unable to set buffer size %lu for playback: %s\n"),
+ buffer_size, snd_strerror(err));
+ return err;
+ }
+ }
+ if (! buffer_time || ! period_time) {
+ printf(_("Periods = %u\n"), nperiods);
+ err = snd_pcm_hw_params_set_periods_near(handle, params, &nperiods, NULL);
+ if (err < 0) {
+ printf(_("Unable to set nperiods %u for playback: %s\n"),
+ nperiods, snd_strerror(err));
+ return err;
+ }
}
- err = snd_pcm_hw_params_get_buffer_size(params, &buffer_size);
+ snd_pcm_hw_params_get_buffer_size(params, &buffer_size);
+ snd_pcm_hw_params_get_period_size(params, &period_size, NULL);
printf(_("was set period_size = %lu\n"),period_size);
printf(_("was set buffer_size = %lu\n"),buffer_size);
if (2*period_size > buffer_size) {
@@ -368,7 +368,6 @@
return err;
}

-
/* write the parameters to device */
err = snd_pcm_hw_params(handle, params);
if (err < 0) {
@@ -570,17 +569,17 @@
"Front_Right.wav",
"Rear_Left.wav",
"Rear_Right.wav",
- "Center.wav"
- "LFE.wav",
- "Side_Left.wav"
- "Side_Right.wav"
+ "Front_Center.wav",
+ "Rear_Center.wav", /* FIXME: should be "Bass" or so */
+ "Side_Left.wav",
+ "Side_Right.wav",
"Channel_9.wav",
- "Channel_10.wav"
- "Channel_11.wav"
- "Channel_12.wav"
- "Channel_13.wav"
- "Channel_14.wav"
- "Channel_15.wav"
+ "Channel_10.wav",
+ "Channel_11.wav",
+ "Channel_12.wav",
+ "Channel_13.wav",
+ "Channel_14.wav",
+ "Channel_15.wav",
"Channel_16.wav"
};

@@ -661,7 +660,8 @@
return 0;
}

-static int write_loop(snd_pcm_t *handle, int channel, int periods, uint8_t *frames) {
+static int write_loop(snd_pcm_t *handle, int channel, int periods, uint8_t *frames)
+{
double phase = 0;
int err, n;

@@ -674,6 +674,10 @@
snd_pcm_bytes_to_frames(handle, err * channels))) < 0)
break;
}
+ if (buffer_size > n) {
+ snd_pcm_drain(handle);
+ snd_pcm_prepare(handle);
+ }
return err;
}

@@ -687,7 +691,10 @@
if ((err = write_buffer(handle, frames, period_size)) < 0)
return err;
}
-
+ if (buffer_size > n * period_size) {
+ snd_pcm_drain(handle);
+ snd_pcm_prepare(handle);
+ }
return 0;
}

@@ -705,8 +712,10 @@
"-F,--format sample format\n"
"-b,--buffer ring buffer size in us\n"
"-p,--period period size in us\n"
+ "-P,--nperiods number of periods\n"
"-t,--test pink=use pink noise, sine=use sine wave, wav=WAV file\n"
- "-s,--speaker single speaker test. Values 1=Left or 2=right\n"
+ "-l,--nloops specify number of loops to test, 0 = infinite\n"
+ "-s,--speaker single speaker test. Values 1=Left, 2=right, etc\n"
"-w,--wavfile Use the given WAV file as a test sound\n"
"-W,--wavdir Specify the directory containing WAV files\n"
"\n"));
@@ -731,6 +740,7 @@
uint8_t *frames;
int chn;
double time1,time2,time3;
+ unsigned int n, nloops;
struct timeval tv1,tv2;

struct option long_option[] = {
@@ -742,7 +752,9 @@
{"format", 1, NULL, 'F'},
{"buffer", 1, NULL, 'b'},
{"period", 1, NULL, 'p'},
+ {"nperiods", 1, NULL, 'P'},
{"test", 1, NULL, 't'},
+ {"nloops", 1, NULL, 'l'},
{"speaker", 1, NULL, 's'},
{"wavfile", 1, NULL, 'w'},
{"wavdir", 1, NULL, 'W'},
@@ -757,13 +769,14 @@
snd_pcm_hw_params_alloca(&hwparams);
snd_pcm_sw_params_alloca(&swparams);

+ nloops = 0;
morehelp = 0;

printf("\nspeaker-test %s\n\n", SND_UTIL_VERSION_STR);
while (1) {
int c;

- if ((c = getopt_long(argc, argv, "hD:r:c:f:F:b:p:t:s:w:W:", long_option, NULL)) < 0)
+ if ((c = getopt_long(argc, argv, "hD:r:c:f:F:b:p:P:t:l:s:w:W:", long_option, NULL)) < 0)
break;

switch (c) {
@@ -793,14 +806,19 @@
break;
case 'b':
buffer_time = atoi(optarg);
- buffer_time = buffer_time < 1000 ? 1000 : buffer_time;
buffer_time = buffer_time > 1000000 ? 1000000 : buffer_time;
break;
case 'p':
period_time = atoi(optarg);
- period_time = period_time < 1000 ? 1000 : period_time;
period_time = period_time > 1000000 ? 1000000 : period_time;
break;
+ case 'P':
+ nperiods = atoi(optarg);
+ if (nperiods < 2 || nperiods > 1024) {
+ fprintf(stderr, _("Invalid number of periods %d\n"), nperiods);
+ exit(1);
+ }
+ break;
case 't':
if (*optarg == 'p')
test_type = TEST_PINK_NOISE;
@@ -811,14 +829,17 @@
else if (isdigit(*optarg)) {
test_type = atoi(optarg);
if (test_type < TEST_PINK_NOISE || test_type > TEST_WAV) {
- fprintf(stderr, "Invalid test type %s\n", optarg);
+ fprintf(stderr, _("Invalid test type %s\n"), optarg);
exit(1);
}
} else {
- fprintf(stderr, "Invalid test type %s\n", optarg);
+ fprintf(stderr, _("Invalid test type %s\n"), optarg);
exit(1);
}
break;
+ case 'l':
+ nloops = atoi(optarg);
+ break;
case 's':
speaker = atoi(optarg);
speaker = speaker < 1 ? 0 : speaker;
@@ -849,12 +870,6 @@
if (test_type == TEST_WAV)
format = SND_PCM_FORMAT_S16_LE; /* fixed format */

- err = snd_output_stdio_attach(&output, stdout, 0);
- if (err < 0) {
- printf(_("Output failed: %s\n"), snd_strerror(err));
- exit(EXIT_FAILURE);
- }
-
printf(_("Playback device is %s\n"), device);
printf(_("Stream parameters are %iHz, %s, %i channels\n"), rate, snd_pcm_format_name(format), channels);
switch (test_type) {
@@ -869,7 +884,7 @@
break;

}
-loop:
+
while ((err = snd_pcm_open(&handle, device, SND_PCM_STREAM_PLAYBACK, 0)) < 0) {
printf(_("Playback open error: %d,%s\n"), err,snd_strerror(err));
sleep(1);
@@ -878,14 +893,11 @@
if ((err = set_hwparams(handle, hwparams, SND_PCM_ACCESS_RW_INTERLEAVED)) < 0) {
printf(_("Setting of hwparams failed: %s\n"), snd_strerror(err));
snd_pcm_close(handle);
- goto loop;
exit(EXIT_FAILURE);
}
- //getchar();
if ((err = set_swparams(handle, swparams)) < 0) {
printf(_("Setting of swparams failed: %s\n"), snd_strerror(err));
snd_pcm_close(handle);
- goto loop;
exit(EXIT_FAILURE);
}

@@ -898,14 +910,15 @@
exit(EXIT_FAILURE);
}
if (speaker==0) {
- while (1) {

- if (test_type == TEST_WAV) {
- for (chn = 0; chn < channels; chn++) {
- if (setup_wav_file(chn) < 0)
- exit(EXIT_FAILURE);
- }
+ if (test_type == TEST_WAV) {
+ for (chn = 0; chn < channels; chn++) {
+ if (setup_wav_file(chn) < 0)
+ exit(EXIT_FAILURE);
}
+ }
+
+ for (n = 0; ! nloops || n < nloops; n++) {

gettimeofday(&tv1, NULL);
for(chn = 0; chn < channels; chn++) {
@@ -922,18 +935,12 @@
printf(" %d - %s\n", channel, gettext(channel_name[channel]));

err = write_loop(handle, channel, ((rate*3)/period_size), frames);
- //err = write_loop(handle, 255, ((rate*3)/period_size), frames);

if (err < 0) {
printf(_("Transfer failed: %s\n"), snd_strerror(err));
free(frames);
snd_pcm_close(handle);
- printf(_("Pausing\n"));
- goto loop ;
- //pause();
- //printf("Done Pausing\n");
exit(EXIT_SUCCESS);
- goto loop ;
}
}
gettimeofday(&tv2, NULL);

++++++ alsa-utils-hg-fixes.diff ++++++
diff -r 420590283171 INSTALL
--- a/INSTALL Wed Apr 19 12:29:49 2006 +0200
+++ b/INSTALL Mon May 15 12:46:04 2006 +0200
@@ -24,11 +24,11 @@ header file asoundlib.h in $prefix/inclu
header file asoundlib.h in $prefix/include/alsa directory (usually in
/usr/include/alsa directory).

-Compilation from CVS sources
-----------------------------
+Compilation from HG sources
+---------------------------

You need also GNU packages autoconf and automake installed in your system
-to compile CVS sources of alsa-utils package.
+to compile HG (Mercurial) sources of alsa-utils package.

For compilation you can use these commands:

@@ -40,7 +40,7 @@ For compilation you can use these comman
./configure
make

-The included cvscompile script does this job for you.
+The included hgcompile script does this job for you.

Note: Some automake packages have missing aclocal program. Use newer version
in the case.
diff -r 420590283171 aplay/aplay.c
--- a/aplay/aplay.c Wed Apr 19 12:29:49 2006 +0200
+++ b/aplay/aplay.c Mon May 15 12:46:04 2006 +0200
@@ -127,8 +127,9 @@ struct fmt_capture {
long long max_filesize;
} fmt_rec_table[] = {
{ NULL, end_raw, N_("raw data"), LLONG_MAX },
- { begin_voc, end_voc, N_("VOC"), 16000000 },
- { begin_wave, end_wave, N_("WAVE"), 2000000000 },
+ { begin_voc, end_voc, N_("VOC"), 16000000LL },
+ /* FIXME: can WAV handle exactly 2GB or less than it? */
+ { begin_wave, end_wave, N_("WAVE"), 2147483648LL },
{ begin_au, end_au, N_("Sparc Audio"), LLONG_MAX }
};

@@ -2165,13 +2166,15 @@ static void capture(char *name_)
2) all requested samples/bytes have been captured (cur>0)
3) filesize threshold was reached (fdcount<wrthreshold)
*/
- } while (file_type == FORMAT_RAW && !timelimit && cur>0 && fdcount<fmt_rec_table[file_type].max_filesize);
+ } while (file_type == FORMAT_RAW && !timelimit && cur>0 &&
+ fdcount<fmt_rec_table[file_type].max_filesize);

/* finish sample container */
fmt_rec_table[file_type].end(fd);

/* repeat the loop when format is raw without timelimit or filesize threshold was reached */
- } while((file_type == FORMAT_RAW && !timelimit) || fdcount>=fmt_rec_table[file_type].max_filesize);
+ } while((file_type == FORMAT_RAW && !timelimit) ||
+ fdcount < fmt_rec_table[file_type].max_filesize);
}

void playbackv_go(int* fds, unsigned int channels, size_t loaded, off64_t count, int rtype, char **names)
diff -r 420590283171 seq/aplaymidi/aplaymidi.c
--- a/seq/aplaymidi/aplaymidi.c Wed Apr 19 12:29:49 2006 +0200
+++ b/seq/aplaymidi/aplaymidi.c Mon May 15 12:46:04 2006 +0200
@@ -786,6 +786,10 @@ static void list_ports(void)
snd_seq_port_info_set_client(pinfo, client);
snd_seq_port_info_set_port(pinfo, -1);
while (snd_seq_query_next_port(seq, pinfo) >= 0) {
+ /* port must understand MIDI messages */
+ if (!(snd_seq_port_info_get_type(pinfo)
+ & SND_SEQ_PORT_TYPE_MIDI_GENERIC))
+ continue;
/* we need both WRITE and SUBS_WRITE */
if ((snd_seq_port_info_get_capability(pinfo)
& (SND_SEQ_PORT_CAP_WRITE | SND_SEQ_PORT_CAP_SUBS_WRITE))
diff -r 420590283171 seq/aplaymidi/arecordmidi.c
--- a/seq/aplaymidi/arecordmidi.c Wed Apr 19 12:29:49 2006 +0200
+++ b/seq/aplaymidi/arecordmidi.c Mon May 15 12:46:04 2006 +0200
@@ -659,6 +659,10 @@ static void list_ports(void)
snd_seq_port_info_set_client(pinfo, client);
snd_seq_port_info_set_port(pinfo, -1);
while (snd_seq_query_next_port(seq, pinfo) >= 0) {
+ /* port must understand MIDI messages */
+ if (!(snd_seq_port_info_get_type(pinfo)
+ & SND_SEQ_PORT_TYPE_MIDI_GENERIC))
+ continue;
/* we need both READ and SUBS_READ */
if ((snd_seq_port_info_get_capability(pinfo)
& (SND_SEQ_PORT_CAP_READ | SND_SEQ_PORT_CAP_SUBS_READ))
diff -r 420590283171 speaker-test/speaker-test.c
--- a/speaker-test/speaker-test.c Wed Apr 19 12:29:49 2006 +0200
+++ b/speaker-test/speaker-test.c Mon May 15 12:46:04 2006 +0200
@@ -342,6 +342,8 @@ static int set_hwparams(snd_pcm_t *handl
}
if (! buffer_time && ! period_time) {
buffer_size = buffer_size_max;
+ if (! period_time)
+ buffer_size = (buffer_size / nperiods) * nperiods;
printf(_("Using max buffer size %lu\n"), buffer_size);
err = snd_pcm_hw_params_set_buffer_size_near(handle, params, &buffer_size);
if (err < 0) {











++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++



Remember to have fun...


< Previous Next >
This Thread