OSDN Git Service

android-x86/external-alsa-utils.git
10 years agospeaker-test: Show out-of-chmap channels as Unknown
Anssi Hannula [Sun, 10 Nov 2013 18:29:19 +0000 (20:29 +0200)]
speaker-test: Show out-of-chmap channels as Unknown

Currently speaker-test falls back to ALSA default channel names for
channels out-of-chmap.

This causes e.g. the 4th channel of
$ speaker-test -c4 -Dhdmi -m "FR,FL,FC"
to be shown as "Rear Right".

Change the code to show such channels as Unknown instead, similar to
when snd_pcm_chmap_long_name() does not know the name.

Signed-off-by: Anssi Hannula <anssi.hannula@iki.fi>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
10 years agospeaker-test: Always show chmap channel names if available
Anssi Hannula [Sun, 10 Nov 2013 18:29:18 +0000 (20:29 +0200)]
speaker-test: Always show chmap channel names if available

Currently speaker-test only uses channel names retrieved by
snd_pcm_chmap_long_name() when a channel map has been manually set.

However, the device may provide a default (or fixed) channel map that
differs from the traditional ALSA map, in which case wrong channel names
are shown.

Fix that by always using the name from the channel map when a channel
map is present.

Note that the names retrieved by snd_pcm_chmap_long_name() are not
currently localized via gettext.

Also note that Linux kernel HDMI driver reported wrong default channel
maps before 56cac413dd6d43af8355f5d1f90a199b540f73fc ("ALSA: hda - hdmi:
Fix reported channel map on common default layouts").

Signed-off-by: Anssi Hannula <anssi.hannula@iki.fi>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
10 years agospeaker-test: Fix chmapped channel selection without specified chmap
Anssi Hannula [Mon, 11 Nov 2013 22:04:02 +0000 (00:04 +0200)]
speaker-test: Fix chmapped channel selection without specified chmap

The channel selection currently does not work properly when there is a
driver-provided non-ALSA-traditional channel map but no manual channel
map was explicitely requested with "-m".

For example, the CEA/HDMI 8ch map is FL,FR,RLC,RRC,FC,LFE,RL,RR. Note
that it is otherwise the same as the traditional ALSA channel map,
except that the traditional rear speakers are considered
rear-center speakers and the traditional side speakers are considered
rear speakers.

Speaker-test tries to play back channels in this following order:
  0, /* Front Left  */
  4, /* Center      */
  1, /* Front Right */
  7, /* Side Right  */
  3, /* Rear Right  */
  2, /* Rear Left   */
  6, /* Side Left   */
  5, /* LFE         */

When it is the time to play back Side Left/Right, speaker-test tries to
look for SL/SR in the chmap, but doesn't find it, so it just plays back
channels 6/7 (which indeed are the side speakers, or RL/RR in this
channel map - so the correct channels are selected).

When it becomes the time to playback Rear Left/Right, speaker-test again
tries to find RL/RR in the chmap, and this time it does find them in the
chmap positions 6/7.

So the channels 6/7 are tested twice and 2/3 are never tested.

To fix this, define a generic playback order channel_order[] to be used
when the channel map is present (but not user-defined) and generate a
(speaker/playback number => channel number) mapping with the channels
ordered in the following order:
1. regular channels found in channel_order[] in the defined order,
2. channels not found in channel_order[] ordered by channel number.
3. UNKNOWN channels ordered by channel number.
4. NA channels ordered by channel number.
For channels outside the channel map just use their channel numbers (so
they will be last after all of the above).

For example, if the playback device has a fictional default channel map
of FR,FL,UNKNOWN1,FOO,BAR,RR,RL,UNKNOWN2, the playback order will be
FL,FR,RR,RL,FOO,BAR,UNKNOWN1,UNKNOWN2(,any_extra_channels).

When the channel mapping is specified manually, the specified order is
used for playback as before.

Signed-off-by: Anssi Hannula <anssi.hannula@iki.fi>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
10 years agoalsaloop: pcmjob.c: use portable way to initialize recursive mutex
John Spencer [Fri, 8 Nov 2013 12:59:41 +0000 (13:59 +0100)]
alsaloop: pcmjob.c: use portable way to initialize recursive mutex

PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP is not in POSIX, as _NP
(non-portable) suggests.

exposing such a symbol in musl libc would lock in the ABI for all
times and makes it impossible to do future changes to the under-
lying struct without hideous symbol versioning hacks.

use the portable way instead: pthread_once was designed for such
cases.

Signed-off-by: John Spencer <maillist-alsa@barfooze.de>
Tested-by: John Spencer <maillist-alsa@barfooze.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
10 years agoamixer: fix indentation when printing container TLV contents
Anssi Hannula [Tue, 1 Oct 2013 20:46:53 +0000 (23:46 +0300)]
amixer: fix indentation when printing container TLV contents

decode_tlv() adds indentation in the beginning, with the expectation
that the TLV will be printed on the line afterwards in a switch-case.

However, in the case of a container TLV the switch-case simply adds
another level of indentation and calls decode_tlv() for the inner TLVs.
This causes the first inner TLV to be printed with too much indentation
and double '|'.

Fix that by printing "container" and a newline for container TLVs, so
that the result is as follows:
  : values=0,0,0,0,0,0,0,0
  | container
    | chmap-variable=FL,FR
    | chmap-variable=FL,FR,LFE
    | chmap-variable=FL,FR,FC

Signed-off-by: Anssi Hannula <anssi.hannula@iki.fi>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
10 years agoamixer: actually print all TLVs in a container TLV
Anssi Hannula [Mon, 30 Sep 2013 20:46:50 +0000 (23:46 +0300)]
amixer: actually print all TLVs in a container TLV

Due to a wrong indexing of tlv[] decode_tlv() always skips to the end of
the container TLV since the used tlv[1] contains the container TLV size
instead of the intended element size.

This causes, for example, only the first HDMI channel map TLV to be
shown.

Fix the indexing to actually use the element size.

Signed-off-by: Anssi Hannula <anssi.hannula@iki.fi>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
10 years agoalsaloop: add -z,--syslog option to use syslog for errors
Jaroslav Kysela [Fri, 26 Jul 2013 14:16:00 +0000 (16:16 +0200)]
alsaloop: add -z,--syslog option to use syslog for errors

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
10 years agoaplay: fix two off by one errors
Jurgen Kramer [Mon, 9 Sep 2013 10:02:29 +0000 (12:02 +0200)]
aplay: fix two off by one errors

Attached patch for aplay fixes two off-by-one errors preventing usage
of the last available sample format.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
10 years agoalsaloop: fix wrong alias for signal.h
Jaroslav Kysela [Tue, 23 Jul 2013 12:57:05 +0000 (14:57 +0200)]
alsaloop: fix wrong alias for signal.h

in POSIX, there is no <sys/signal.h>.

it's merely a legacy alias used by glibc, and the header does nothing
else than including <signal.h>.

so let's do the right thing and use the right name, which works everywhere.

Signed-off-by: John Spencer <maillist-alsa@barfooze.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
10 years agoalsactl: alsa-state.service - fix typo (rkill -> kill)
Jaroslav Kysela [Fri, 19 Jul 2013 12:36:52 +0000 (14:36 +0200)]
alsactl: alsa-state.service - fix typo (rkill -> kill)

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
10 years agoRelease v1.0.27.2
Jaroslav Kysela [Tue, 9 Jul 2013 15:28:37 +0000 (17:28 +0200)]
Release v1.0.27.2

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
11 years agospeaker-test: Fix wrong wave file played back in chmap setup
David Henningsson [Mon, 10 Jun 2013 14:42:48 +0000 (16:42 +0200)]
speaker-test: Fix wrong wave file played back in chmap setup

When explicitly specifying channel maps, we need to use that when
loading wave files so the correct file is played back.

Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
11 years agoamixer: Print TLV of channel map controls
David Henningsson [Fri, 14 Jun 2013 09:41:01 +0000 (11:41 +0200)]
amixer: Print TLV of channel map controls

Previously these were written as "unk-25..." which wasn't very user friendly.

Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
11 years agoamixer: fix print_dB for -0.99 .. -0.01 range
Jaroslav Kysela [Tue, 28 May 2013 06:43:30 +0000 (08:43 +0200)]
amixer: fix print_dB for -0.99 .. -0.01 range

The first number is 0 when input dB (hundreds) is in range -99 .. -1 .
The printed number was positive in this case. This patch fixes this issue.

Reported-by: Tom Becker <GTBecker@RighTime.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
11 years agoamixer: Fix the hctl elem search bug
Jaroslav Kysela [Mon, 27 May 2013 14:40:26 +0000 (16:40 +0200)]
amixer: Fix the hctl elem search bug

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
11 years agoalsactl: return back the udevrules_DATA rule for 90-alsa-restore.rules
Jaroslav Kysela [Mon, 27 May 2013 07:26:39 +0000 (09:26 +0200)]
alsactl: return back the udevrules_DATA rule for 90-alsa-restore.rules

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
11 years agoalsactl init: ca0106 file was omitted
Gabriel M. Beddingfield [Sun, 26 May 2013 22:54:44 +0000 (15:54 -0700)]
alsactl init: ca0106 file was omitted

The file alsactl/init/00main includes the line:

CARDINFO{driver}=="CA0106", INCLUDE="ca0106", GOTO="init_end"

However, the file alsactl/init/ca0106 is not making it into the
release tarballs (nor to user installations).

This patch adds the ca0106 file to the build.

Signed-off-by: Gabriel M. Beddingfield <gabrbedd@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
11 years agoRequire alsa-lib 1.0.27.
Jordi Mallach [Fri, 17 May 2013 12:30:46 +0000 (14:30 +0200)]
Require alsa-lib 1.0.27.

Both aplay and speaker-test use the new snd_pcm_abort() function, which was
introduced in alsa-lib 1.0.27.

Signed-off-by: Jordi Mallach <jordi@debian.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
11 years agoRelease v1.0.27.1
Jaroslav Kysela [Tue, 21 May 2013 08:48:28 +0000 (10:48 +0200)]
Release v1.0.27.1

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
11 years agoalsactl: remove 90-alsa-restore.rules from the tar ball
Jaroslav Kysela [Tue, 21 May 2013 08:27:25 +0000 (10:27 +0200)]
alsactl: remove 90-alsa-restore.rules from the tar ball

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
11 years agoAdd AM_MAINTAINER_MODE([enable]) to configure.in.
Jordi Mallach [Wed, 15 May 2013 17:12:57 +0000 (19:12 +0200)]
Add AM_MAINTAINER_MODE([enable]) to configure.in.

Signed-off-by: Jordi Mallach <jordi@debian.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
11 years agoFix a build failure due to a misused format string.
Jordi Mallach [Wed, 15 May 2013 17:12:56 +0000 (19:12 +0200)]
Fix a build failure due to a misused format string.

This fixes builds with -Werror=format-security.

Signed-off-by: Jordi Mallach <jordi@debian.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
11 years agoSeveral formatting fixes for manpages.
Jordi Mallach [Wed, 15 May 2013 17:12:55 +0000 (19:12 +0200)]
Several formatting fixes for manpages.

Fix many occurrences of unescaped “-”.
Fix minor English issue.

Signed-off-by: Jordi Mallach <jordi@debian.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
11 years agoFix several typos in manpage and help strings.
Elimar Riesebieter [Wed, 15 May 2013 17:12:54 +0000 (19:12 +0200)]
Fix several typos in manpage and help strings.

Signed-off-by: Jordi Mallach <jordi@debian.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
11 years agoalsactl: sprintf to snprintf prevent buffer overflow
Doug Goldstein [Wed, 1 May 2013 16:30:26 +0000 (11:30 -0500)]
alsactl: sprintf to snprintf prevent buffer overflow

sprintf() is a bit dangerous unless you explicitly know your type size
and want to keep it in sync always. Its safer to just use snprintf() and
ensure your string doesn't overflow and is NULL terminated.

Signed-off-by: Doug Goldstein <cardoe@cardoe.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
11 years agoarecord: add a missing break to the capture loop
Jaroslav Kysela [Wed, 17 Apr 2013 06:34:34 +0000 (08:34 +0200)]
arecord: add a missing break to the capture loop

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
11 years agoalsactl: Fix the string size for the lock file contents
Jaroslav Kysela [Mon, 15 Apr 2013 12:44:13 +0000 (14:44 +0200)]
alsactl: Fix the string size for the lock file contents

The string length is 10 characters + LF + '\0' = 12 characters.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
11 years agoalsactl: Fix a typo in systemd alsa-restore.service
Takashi Iwai [Mon, 15 Apr 2013 09:20:41 +0000 (11:20 +0200)]
alsactl: Fix a typo in systemd alsa-restore.service

Signed-off-by: Takashi Iwai <tiwai@suse.de>
11 years agoRelease v1.0.27
Jaroslav Kysela [Thu, 11 Apr 2013 11:43:06 +0000 (13:43 +0200)]
Release v1.0.27

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
11 years agoalsactl: add --with-alsactl-daemonswitch=FILE to the global configure.in
Jaroslav Kysela [Wed, 10 Apr 2013 09:08:47 +0000 (11:08 +0200)]
alsactl: add --with-alsactl-daemonswitch=FILE to the global configure.in

It may be useful to have the file location configurable.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
11 years agoalsactl: revert back old systemd static units with the /etc/alsa/state-daemon.conf...
Jaroslav Kysela [Wed, 10 Apr 2013 08:23:16 +0000 (10:23 +0200)]
alsactl: revert back old systemd static units with the /etc/alsa/state-daemon.conf switch

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
11 years agoalsactl: add --nice and --sched-idle options
Jaroslav Kysela [Wed, 10 Apr 2013 07:42:40 +0000 (09:42 +0200)]
alsactl: add --nice and --sched-idle options

The state management can run at low priority, add --nice and --sched-idle
options to set the scheduler.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
11 years agoamixer: Use the alsa-lib functions for id print and parse and value parse
Jaroslav Kysela [Tue, 9 Apr 2013 16:38:58 +0000 (18:38 +0200)]
amixer: Use the alsa-lib functions for id print and parse and value parse

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
11 years agoalsactl: daemon mode - remove disconnected cards
Jaroslav Kysela [Tue, 9 Apr 2013 16:10:22 +0000 (18:10 +0200)]
alsactl: daemon mode - remove disconnected cards

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
11 years agoalsactl: move systemd config to the daemon mode
Jaroslav Kysela [Mon, 8 Apr 2013 12:49:31 +0000 (14:49 +0200)]
alsactl: move systemd config to the daemon mode

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
11 years agospeaker-test: change the interrupt handling logic to follow aplay/arecord
Jaroslav Kysela [Mon, 8 Apr 2013 11:57:51 +0000 (13:57 +0200)]
speaker-test: change the interrupt handling logic to follow aplay/arecord

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
11 years agoaplay/arecord: change the interrupt handling using snd_pcm_abort()
Jaroslav Kysela [Mon, 8 Apr 2013 11:30:54 +0000 (13:30 +0200)]
aplay/arecord: change the interrupt handling using snd_pcm_abort()

It is required (exclude the fatal SIGABRT) to call snd_pcm_close() and
the end of work (outside of the interrupt handler). Use new snd_pcm_abort()
function to inform alsa-lib to not ignore EINTR and move the in_aborting
variable to the global scope to be checked in the i/o loops.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
11 years agoalsactl: add event filter and cache for the daemon mode
Jaroslav Kysela [Mon, 8 Apr 2013 09:31:45 +0000 (11:31 +0200)]
alsactl: add event filter and cache for the daemon mode

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
11 years agoalsactl: Improved command line argument handling...
Jaroslav Kysela [Fri, 5 Apr 2013 11:42:15 +0000 (13:42 +0200)]
alsactl: Improved command line argument handling...

Improve command line argument handling for future extensions.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
11 years agoalsactl: add the daemon mode
Jaroslav Kysela [Fri, 5 Apr 2013 09:51:51 +0000 (11:51 +0200)]
alsactl: add the daemon mode

For the plug-and-play hardware, like USB devices, it may be helpful
to manage the sound state periodically, before the devices are removed.

This change implements new commands 'daemon' and 'rdaemon' to save
the sound state in defined intervals when the sound controls are changed.

The udev rules can notify the daemon using the 'kill' or 'nrestore'
commands to rescan available cards in the system.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
11 years agoalsactl: small code reorder to avoid memory leaks
Jaroslav Kysela [Wed, 3 Apr 2013 09:57:52 +0000 (11:57 +0200)]
alsactl: small code reorder to avoid memory leaks

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
11 years agoalsactl: safe state store and memory allocation cleanups
Jaroslav Kysela [Wed, 3 Apr 2013 09:13:41 +0000 (11:13 +0200)]
alsactl: safe state store and memory allocation cleanups

- store new configuration to file + ".new" extension, rename later
- free the configuration tree on exit from load_state()/save_state()
- call snd_config_update_free_global() at the end of command blocks

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
11 years agoaplay/arecord: added isatty() check (interactive mode)
Jaroslav Kysela [Fri, 22 Mar 2013 12:21:25 +0000 (13:21 +0100)]
aplay/arecord: added isatty() check (interactive mode)

Turn off the interactive mode when stdin is not a tty.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
11 years agospeaker-test: try to call snd_pcm_close() when a signal is received
Jaroslav Kysela [Fri, 22 Mar 2013 12:59:31 +0000 (13:59 +0100)]
speaker-test: try to call snd_pcm_close() when a signal is received

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
11 years agoalsamixer: Use isatty() to check the terminal (interactive) availability
Jaroslav Kysela [Fri, 22 Mar 2013 12:27:26 +0000 (13:27 +0100)]
alsamixer: Use isatty() to check the terminal (interactive) availability

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
11 years agoamixer: Fix dB value outputs in amixer contents
Takashi Iwai [Thu, 31 Jan 2013 16:47:50 +0000 (17:47 +0100)]
amixer: Fix dB value outputs in amixer contents

Add missing cast to signed int for DB_MINMAX* types.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
11 years agospeaker-test: increase the maximum supported rate to 384000
Antonio Ospite [Wed, 16 Jan 2013 16:06:04 +0000 (17:06 +0100)]
speaker-test: increase the maximum supported rate to 384000

There are some devices around supporting this sample rate so let's make
speaker-test capable to deal with them.

Signed-off-by: Antonio Ospite <ao2@amarulasolutions.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
11 years agoconfigure: Fix obsolete AM_CONFIG_HEADER macro
Marko Lindqvist [Wed, 16 Jan 2013 14:25:38 +0000 (15:25 +0100)]
configure: Fix obsolete AM_CONFIG_HEADER macro

Automake-1.13 removed long obsolete AM_CONFIG_HEADER completely (
http://lists.gnu.org/archive/html/automake/2012-12/msg00038.html )
and errors out upon seeing it.

Attached patch replaces it with proper AC_CONFIG_HEADERS.

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
11 years agoaplay: Add the support for big-endian WAV format (RIFX)
Takashi Iwai [Thu, 13 Dec 2012 09:53:19 +0000 (10:53 +0100)]
aplay: Add the support for big-endian WAV format (RIFX)

Signed-off-by: Takashi Iwai <tiwai@suse.de>
11 years agoalsaloop: Fix missing #endif
Takashi Iwai [Fri, 30 Nov 2012 13:53:12 +0000 (14:53 +0100)]
alsaloop: Fix missing #endif

Sorry, forgotten.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
11 years agoalsaloop: Make alsaloop working without libsamplerate
Takashi Iwai [Fri, 30 Nov 2012 13:35:31 +0000 (14:35 +0100)]
alsaloop: Make alsaloop working without libsamplerate

When alsaloop is built with libsamplerate, it quits immediately with
  No libsamplerate suppor
message.  It's because the check of -A option and it's set as default
non-zero value.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
11 years agoamixer: Fix parsing container TLV entries
Takashi Iwai [Mon, 26 Nov 2012 15:13:57 +0000 (16:13 +0100)]
amixer: Fix parsing container TLV entries

Fix the wrong calculation of the size of a container TLV entry, which
resulted in "TLV size error" messages.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
11 years agoamixer: fix rounding of relative changes
Clemens Ladisch [Tue, 13 Nov 2012 20:54:20 +0000 (21:54 +0100)]
amixer: fix rounding of relative changes

When doing control changes by a relative amount, amixer used the wrong
rounding direction, which would make it possible to stay at the same raw
value if the step was not big enough to reach the next value.

Reported-by: Honza Javorek <jan.javorek@gmail.com>
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
11 years agoaplay: Show usage if no parameter is passed
Fabio Estevam [Tue, 13 Nov 2012 12:05:39 +0000 (10:05 -0200)]
aplay: Show usage if no parameter is passed

When aplay/arecord are called without any argument the application hangs forever.

Instead of hanging, print the usage and exit.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
11 years agoalsamixer: fix handling of removed controls
Clemens Ladisch [Fri, 19 Oct 2012 10:16:33 +0000 (12:16 +0200)]
alsamixer: fix handling of removed controls

When we get a notification that an element has been removed, we have to
recreate our internal control representation to avoid accessing freed
memory.  (And the checking for SND_CTL_EVENT_MASK_REMOVE should actually
be done correctly while we're at it.)

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
11 years agoaplay: fix typo & silence warning..
Jaroslav Kysela [Mon, 24 Sep 2012 14:18:54 +0000 (16:18 +0200)]
aplay: fix typo & silence warning..

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
11 years agospeaker-test: Update man page for chmap option
Takashi Iwai [Thu, 20 Sep 2012 12:00:02 +0000 (14:00 +0200)]
speaker-test: Update man page for chmap option

Signed-off-by: Takashi Iwai <tiwai@suse.de>
11 years agoaplay: More support for channel map option
Takashi Iwai [Thu, 20 Sep 2012 11:53:46 +0000 (13:53 +0200)]
aplay: More support for channel map option

Now aplay tries to follow the given channel map by rearranging the
channels even when the channel map override isn't allowed but if the
device is still capable to return a channel map.

Also update the man page appropriately.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
11 years agoaplay: Add support for channel mapping
Takashi Iwai [Tue, 11 Sep 2012 10:20:55 +0000 (12:20 +0200)]
aplay: Add support for channel mapping

With -m option, user can specify the order of channel map.
As of this commit, it just tries to override the channel map, thus it
works only on devices that support the channel map override like HDMI.
Adjusting the channel order in aplay itself will be added later.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
11 years agospeaker-test: Add support for channel mapping API
Takashi Iwai [Tue, 11 Sep 2012 09:36:45 +0000 (11:36 +0200)]
speaker-test: Add support for channel mapping API

The surround channel map follows the given channel map from the
driver if available.

Also, the channels can be specified manually via -m option.
Pass the channel map like "FL,FR,FC,LFE".

Signed-off-by: Takashi Iwai <tiwai@suse.de>
11 years agoRelease v1.0.26
Jaroslav Kysela [Thu, 6 Sep 2012 07:52:57 +0000 (09:52 +0200)]
Release v1.0.26

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
11 years agobuild: Don't call AC_CHECK_FUNC with --disable-alsatest
Arun Raghavan [Tue, 17 Jul 2012 10:15:35 +0000 (15:45 +0530)]
build: Don't call AC_CHECK_FUNC with --disable-alsatest

Signed-off-by: Takashi Iwai <tiwai@suse.de>
11 years agoaplay: Use open() instead of open64()
Arun Raghavan [Tue, 17 Jul 2012 10:15:34 +0000 (15:45 +0530)]
aplay: Use open() instead of open64()

AC_SYS_LARGEFILE in configure.in will automatically set up defines so
that open() will support large files if supported, and if not, this
allows us to fall back gracefully to non-LFS open().

Signed-off-by: Takashi Iwai <tiwai@suse.de>
11 years agoaplay: Fix signal.h include
Arun Raghavan [Tue, 17 Jul 2012 10:15:33 +0000 (15:45 +0530)]
aplay: Fix signal.h include

The correct header to include is <signal.h> not <sys/signal.h>.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
12 years agoaseqnet: Remove obsoleted .LO entry from man page
Takashi Iwai [Fri, 15 Jun 2012 14:34:55 +0000 (16:34 +0200)]
aseqnet: Remove obsoleted .LO entry from man page

Signed-off-by: Takashi Iwai <tiwai@suse.de>
12 years agoalsactl: Add reference to alsactl_init(7) in alsactl man page
Takashi Iwai [Thu, 14 Jun 2012 14:14:29 +0000 (16:14 +0200)]
alsactl: Add reference to alsactl_init(7) in alsactl man page

Signed-off-by: Takashi Iwai <tiwai@suse.de>
12 years agoalsactl: Read only *.conf files when a directory is passed via INCLUDE
Takashi Iwai [Thu, 14 Jun 2012 11:14:48 +0000 (13:14 +0200)]
alsactl: Read only *.conf files when a directory is passed via INCLUDE

When alsactl init is invoked and a directory path is passed to INCLUDE
command in the config file, read only *.conf files in that directory.
This will avoid reading backup files or invalid files that have been
created accidentally.

Also by using scandir() with alphasort(), alsactl reads the files in
alphabetical order.  Thus it's highly recommended to use some number
prefix to the file name for assuring the order.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
12 years agoalsaloop: fix the avail_min setup
Jaroslav Kysela [Sun, 13 May 2012 11:24:01 +0000 (13:24 +0200)]
alsaloop: fix the avail_min setup

The previous code does not work as expected for some period_size
configurations. We do not rely on the period size value, so do not
correlate the avail_min parameter with this value.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
12 years agoaplay: print vu-meter to stderr, not stdout
Jerome Carretero [Sun, 6 May 2012 03:10:01 +0000 (23:10 -0400)]
aplay: print vu-meter to stderr, not stdout

It allows showing the vu-meter while recording to stdout, eg:

   aplay -C -V stereo | oggenc - > out.ogg

Signed-off-by: Jerome Carretero <cJ@zougloub.eu>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
12 years agoalsactl: Do not access other cards than specified for init
Jaroslav Kysela [Wed, 9 May 2012 06:45:47 +0000 (08:45 +0200)]
alsactl: Do not access other cards than specified for init

When the global state does not exist, alsactl tries to
initialize all soundcards. It is not good when alsactl
is called multiple times from udev. Also, selinux can deny
access to non-existent devices.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
12 years agoconfigure.in: use AS_HELP_STRING everywhere
Mike Frysinger [Wed, 18 Apr 2012 14:29:18 +0000 (10:29 -0400)]
configure.in: use AS_HELP_STRING everywhere

This macro takes care of spacing for us.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
12 years agoconfigure.in: look for ncurses pkg-config first
Mike Frysinger [Wed, 18 Apr 2012 14:25:54 +0000 (10:25 -0400)]
configure.in: look for ncurses pkg-config first

Newer ncurses installs pkg-config files, and these are much easier
to manage when cross-compiling, so default to searching for those.
If they can't be found, we fall back to the existing xxx-config.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
12 years agoamixer, alsamixer: Add description of volume-mapping
Takashi Iwai [Mon, 19 Mar 2012 15:03:33 +0000 (16:03 +0100)]
amixer, alsamixer: Add description of volume-mapping

Signed-off-by: Takashi Iwai <tiwai@suse.de>
12 years agoaplay/arecord: option to treat any xrun as fatal
Ben Gardiner [Fri, 16 Mar 2012 03:51:02 +0000 (23:51 -0400)]
aplay/arecord: option to treat any xrun as fatal

Signed-off-by: Ben Gardiner <bengardiner@nanometrics.ca>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
12 years agoamixer: Add the support for mapped volumes like alsamixer
Takashi Iwai [Mon, 12 Mar 2012 09:56:22 +0000 (10:56 +0100)]
amixer: Add the support for mapped volumes like alsamixer

When -M option is given, amixer handles the volumes in percent unit
with the mapping more intuitive to human ears just like in alsamixer.

The -R option is to take the raw value as the volume percentage.
This mode is still used as default.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
12 years agoaplay - option to dump HW parameters
Pavel Hofman [Mon, 5 Mar 2012 21:27:00 +0000 (21:27 +0000)]
aplay - option to dump HW parameters

Dumping HW parameters of the current device with snd_pcm_hw_params_dump,
a new option --dump-hw-params added.

Signed-off-by: Pavel Hofman <pavel.hofman@ivitera.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
12 years agoalsaloop: Improve xrun_sync - fill missing playback samples
Jaroslav Kysela [Mon, 20 Feb 2012 15:41:19 +0000 (16:41 +0100)]
alsaloop: Improve xrun_sync - fill missing playback samples

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
12 years agoRemove the cvscompile file
Vikram Narayanan [Sat, 18 Feb 2012 15:23:56 +0000 (20:53 +0530)]
Remove the cvscompile file

package: alsa-utils

Removed the cvscompile file.

Signed-off-by: Vikram Narayanan <vikram186@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
12 years agoTrivial fixes in INSTALL file
Vikram Narayanan [Sat, 11 Feb 2012 08:17:48 +0000 (13:47 +0530)]
Trivial fixes in INSTALL file

Changed from HG->git in the INSTALL file

Signed-off-by: Vikram Narayanan <vikram186@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
12 years agoFix the examples in aplay.1
Jaroslav Kysela [Mon, 6 Feb 2012 13:58:03 +0000 (14:58 +0100)]
Fix the examples in aplay.1

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
12 years agoRelease v1.0.25
Jaroslav Kysela [Wed, 25 Jan 2012 09:43:38 +0000 (10:43 +0100)]
Release v1.0.25

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
12 years agoaplay: Add backward compatible endian macro definitions
Jaroslav Kysela [Wed, 25 Jan 2012 09:40:25 +0000 (10:40 +0100)]
aplay: Add backward compatible endian macro definitions

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
12 years agoAlsa-utils: Fix typo causing some volumes not to be initialized
David Henningsson [Wed, 11 Jan 2012 16:45:14 +0000 (17:45 +0100)]
Alsa-utils: Fix typo causing some volumes not to be initialized

When I was reading the source code, I stumbled over this typo causing
Center, LFE, and Surround speakers not to be initialized.

Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
12 years agoalsactl: Initialize Front Speaker, etc
Takashi Iwai [Fri, 4 Nov 2011 16:01:57 +0000 (17:01 +0100)]
alsactl: Initialize Front Speaker, etc

Add missing initialization of surround and CLFE playback volumes and
switches.  Ditto for "Front Speaker", etc.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
12 years agoaplaymidi: clarify multi-port documentation
Clemens Ladisch [Wed, 2 Nov 2011 18:44:12 +0000 (19:44 +0100)]
aplaymidi: clarify multi-port documentation

The man page did not document what happens when multiple ports are
specified; this could be misinterpreted as the events being duplicated
so that they are played on all ports simultaneously.  As suggested by
Peter Billam, clarify that these ports are only used for multi-port MIDI
files.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
12 years agoalsamixer: Fix X-win related crash for PulseAudio plugin (bad linking)
Jaroslav Kysela [Wed, 2 Nov 2011 16:27:47 +0000 (17:27 +0100)]
alsamixer: Fix X-win related crash for PulseAudio plugin (bad linking)

A lot of reports that alsamixer crashes in X terminal when the PulseAudio
CTL plugin is activated were entered to the tracking systems.

I figured that there is a linking clash for the shutdown() function.
The shutdown() function in glibc is socket related, but the alsamixer code
redefines this function and appearently that under some linking
circumstances - which PA client invokes during the runtime dynamic linking
- the wrong function is called.

This patch, for safety, renames the shutdown() function from alsamixer
to app_shutdown(), but it might make sense to figure the real linking
culprit to avoid future surprises.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
12 years agoaplay: Fix spelling error
David Henningsson [Wed, 12 Oct 2011 17:37:57 +0000 (19:37 +0200)]
aplay: Fix spelling error

BugLink: https://bugs.launchpad.net/bugs/816388
Reported-by: Chad Dunlap <cldunlap1@gmail.com>
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
12 years agoalsactl: add support for recreating enumerated user controls
Clemens Ladisch [Fri, 7 Oct 2011 21:16:35 +0000 (23:16 +0200)]
alsactl: add support for recreating enumerated user controls

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
12 years agofix use of $(SED)
Michał Górny [Wed, 31 Aug 2011 20:27:10 +0000 (22:27 +0200)]
fix use of $(SED)

The alsactl Makefile used 'sed $(SED)' which is going to failed when SED
is actually set. Replaced that with '$(SED)', and a few 'sed' calls in
alsaconf Makefile as well. Added AC_PROG_SED to configure to have it
set.

Fixes: https://bugtrack.alsa-project.org/alsa-bug/view.php?id=5363
Fixes: http://bugs.gentoo.org/show_bug.cgi?id=366587
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
12 years agoaplay: increase channel limit to 256
Tim Blechmann [Wed, 29 Jun 2011 07:44:06 +0000 (09:44 +0200)]
aplay: increase channel limit to 256

aplay is limited to 32 channels, which makes it impossible to use it for
testing devices with more channels. here we increase the limit to 256,
which should be sufficient for a virtual device made of 4 64-channel
soundcards.

Signed-off-by: Tim Blechmann <tim@klingt.org>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
13 years agoalsa-utils: amixer: Fix SND_CTL_TLVT_DB_RANGE handling
Lars-Peter Clausen [Thu, 16 Jun 2011 12:19:18 +0000 (14:19 +0200)]
alsa-utils: amixer: Fix SND_CTL_TLVT_DB_RANGE handling

Current support for handling SND_CTL_TLVT_DB_RANGE in amixer is completely
broken. This patch fixes it.

Reported-by: Daniel Mack <zonque@gmail.com>
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
13 years agospeaker-test.1: Clarify man page by giving examples
Daniel T Chen [Sat, 4 Jun 2011 21:44:43 +0000 (17:44 -0400)]
speaker-test.1: Clarify man page by giving examples

BugLink: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=620513
From the Debian bug report:
"The speaker-test manpage could be improved somewhat by helping a
little bit the user determine how to find out the devices he can test.

Based on http://alsa.opensrc.org/Speaker-test I have make some changes
to the manpage (diff attached) to describe a little bit more how
speaker-test can be used alongside 'aplay'.

Please consider the following patch for
alsa-utils-1.0.23/speaker-test/speaker-test.1"

Signed-off-by: Javier Fernández-Sanguino Peña <jfs@debian.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
13 years agoaplay: Use standard endian convesions
Takashi Iwai [Fri, 3 Jun 2011 12:35:44 +0000 (14:35 +0200)]
aplay: Use standard endian convesions

asm/*.h stuff shouldn't be used directly from the user-space apps.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
13 years agoaplay: Add include files for mkdir()
Takashi Iwai [Fri, 3 Jun 2011 12:30:55 +0000 (14:30 +0200)]
aplay: Add include files for mkdir()

Signed-off-by: Takashi Iwai <tiwai@suse.de>
13 years agoalsamixer: Fix 64bit issues
Takashi Iwai [Fri, 3 Jun 2011 12:28:28 +0000 (14:28 +0200)]
alsamixer: Fix 64bit issues

lrint() returns a long int.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
13 years agoUpdated COPYING with the recent FSF address
Takashi Iwai [Fri, 3 Jun 2011 12:24:30 +0000 (14:24 +0200)]
Updated COPYING with the recent FSF address

Signed-off-by: Takashi Iwai <tiwai@suse.de>
13 years agoalsaloop: Use AM_CFLAGS in Makefile.am
Takashi Iwai [Fri, 3 Jun 2011 12:21:53 +0000 (14:21 +0200)]
alsaloop: Use AM_CFLAGS in Makefile.am

Signed-off-by: Takashi Iwai <tiwai@suse.de>
13 years agoAdd alsaucm to .gitignore
Takashi Iwai [Fri, 3 Jun 2011 10:45:13 +0000 (12:45 +0200)]
Add alsaucm to .gitignore

Signed-off-by: Takashi Iwai <tiwai@suse.de>
13 years agoaplay: Avoid recursive signal handling
Takashi Iwai [Fri, 3 Jun 2011 10:44:17 +0000 (12:44 +0200)]
aplay: Avoid recursive signal handling

When abort() is issued in snd_pcm_close() path, it may loop recursively
and crash.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
13 years agoaplay: Add -i option for interactive mode
Takashi Iwai [Fri, 3 Jun 2011 10:41:26 +0000 (12:41 +0200)]
aplay: Add -i option for interactive mode

The recent addition of pause/resume control via keyboard brought
a problem when aplay/arecord is invoked in background.  For avoiding
regressions, it's safer to use non-interactive mode as default and
enable the new feature via an option.

Tested-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>