Commit graph

144 commits

Author SHA1 Message Date
Anssi Hannula
f1e991e813 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>
2013-10-02 17:36:02 +02:00
Anssi Hannula
180283e230 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>
2013-10-01 12:23:45 +02:00
David Henningsson
9fe90a020c 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>
2013-06-14 13:38:23 +02:00
Jaroslav Kysela
c80a38dbf5 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>
2013-05-28 08:43:30 +02:00
Jaroslav Kysela
d61924fd24 amixer: Fix the hctl elem search bug
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2013-05-27 16:40:26 +02:00
Jordi Mallach
093a371a27 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>
2013-05-16 10:38:13 +02:00
Jaroslav Kysela
e2eab09c1d amixer: Use the alsa-lib functions for id print and parse and value parse
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2013-04-09 18:38:58 +02:00
Takashi Iwai
bfcb26f9f7 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>
2013-01-31 17:47:50 +01:00
Takashi Iwai
d6da86117b 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>
2012-11-26 16:16:16 +01:00
Clemens Ladisch
da1c24a24c 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>
2012-11-13 21:54:20 +01:00
Takashi Iwai
8824d0824d amixer, alsamixer: Add description of volume-mapping
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2012-03-19 16:05:06 +01:00
Takashi Iwai
a2b66855e6 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>
2012-03-12 10:56:22 +01:00
Lars-Peter Clausen
8709ffe841 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>
2011-06-16 14:57:27 +02:00
Jaroslav Kysela
87c58b59b5 amixer: fix parsing of control ID name
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2010-10-05 10:02:45 +02:00
Jaroslav Kysela
f45aa72cd6 amixer: add support for TLV dB minmax types
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2010-02-10 11:52:53 +01:00
Clemens Ladisch
cdc496addb amixer: fix display of unreadable control elements
When an element is marked as not readble, do not try to read it and then
complain about the error, but just ignore it.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
2010-02-01 13:22:39 +01:00
Diego E. 'Flameeyes' Pettenò
6232f1c96c Make some static tables and strings constants.
By doing this we move them from the .data section to .rodata setion,
or from .data.rel to .data.rel.ro.

The .rodata section is mapped directly from the on-disk file, which is
always a save, while .data.rel.ro is mapped directly when using
prelink, which is a save in a lot of cases.

Signed-off-by: Diego E. 'Flameeyes' Pettenò <flameeyes@gmail.com>
2008-11-21 13:10:02 +01:00
Diego E. 'Flameeyes' Pettenò
ca1ea1e904 Mark static the functions not used outside their unit.
This way the compiler can assume more information about their
interface for optimisation.

Signed-off-by: Diego E. 'Flameeyes' Pettenò <flameeyes@gmail.com>
2008-11-21 13:09:56 +01:00
Jaroslav Kysela
ec73719ec6 amixer - fixed TLV dBscale and added dBrange parsing
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2008-08-14 14:57:43 +02:00
Jaroslav Kysela
48de580a7b Changed Jaroslav Kysela's e-mail from perex@suse.cz to perex@perex.cz 2007-10-15 10:25:17 +02:00
Takashi Iwai
4b16370c01 amixer - Allow to pass enum item string for cset, too
cset accepts only integer values as indices, so far, but it's a bit
unfriendly.  Now it accepts the item name as a string argument, too.
The index can be given using numbers as fallback.
2007-07-31 17:29:45 +02:00
Takashi Iwai
fea8dbf020 Ignore errors with -s option
Ignore non-fatal errors when stdin is parsed with -s option.
2007-07-24 15:19:34 +02:00
Jaroslav Kysela
8d0fb15b2b amixer/alsamixer - updated go scripts for debugging 2007-07-11 10:12:24 +02:00
Takashi Iwai
50d240e688 amixer - Fix selection of enum items
The item names with channel specifier cannot be chosen correctly
via amixer sset.  For example, 'Front Mic' is handled as 'Mic' since
the channel specificier 'Front' is omitted.

The idea of channel specifier is basically non-sense for enum items,
and this also makes the code very messy.

The patch fixes the behavior of enum items and gives the code clean-up
for sset command.
2007-07-09 16:37:35 +02:00
Takashi Iwai
3f17db2ef5 amixer - show iec958 status bits in contents command
Show first 4 bytes of iec958 status bits for elements with
SND_CTL_ELEM_TYPE_IEC958 in contents command.
2007-04-05 17:23:42 +02:00
James Courtier-Dutton
fb219cacb6 Implement Playback/Capture enum. 2006-10-13 22:25:33 +01:00
Jaroslav Kysela
6d59cea271 amixer - remove beep on errors in arguments
See bug#1247
2006-10-04 10:21:29 +02:00
Jaroslav Kysela
a70208290b amixer: sset - check if command is valid
See bug#532
2006-10-04 09:47:41 +02:00
Takashi Iwai
b4897f7856 Add linear-volume handling in amixer
Added the handling of linear-volume in amixer TLV decoder.
2006-08-28 13:28:46 +02:00
Takashi Iwai
ae9ddeb634 Add handling of dB to amixer
Added the dB value handling to amixer sset command.
Also, simplify the parser code.

Updated man page for dB suffix and some examples.
2006-08-25 12:00:14 +02:00
Jaroslav Kysela
e45ba7e644 amixer - show dB values for simple mixer interface (which is default) 2006-07-27 11:02:00 +02:00
Takashi Iwai
dedc292efa Fix print_dB() with a minus value
Fix print_dB() with a minus dB value.
2006-07-06 19:26:31 +02:00
Jaroslav Kysela
33319eb4ed amixer - added basic TLV support (read only) for 'amixer controls' 2006-07-05 17:46:10 +02:00
Takashi Iwai
21b94bc276 amixer - Add -s option
- Add -s option to read from stdin the command sequentially.
- Suppress unneeded warnings in sset.
2005-12-01 11:32:28 +00:00
Jaroslav Kysela
414b308e8c Fix for more better error fault handling for sset toggle 2005-09-22 12:47:02 +00:00
Jaroslav Kysela
7876ddd70e Added more better error fault handling for sset toggle 2005-09-22 12:39:26 +00:00
Takashi Iwai
87ffccedfd Fix / clean up man pages
Fix / clean up man pages (bug#1386)
2005-09-02 17:36:40 +00:00
Takashi Iwai
210e946410 Add enum control support to sget/sset
Added the enum control support to amixer sget/sset.
2005-06-15 14:55:37 +00:00
Jaroslav Kysela
eb408a393d amixer - useful script for debugging 2005-06-07 11:41:48 +00:00
Jaroslav Kysela
734cb04e08 Set the device name for smixer_options 2005-06-06 14:02:10 +00:00
Takashi Iwai
259fb326fb Fix compile warnings
Fixed compile warnings with gcc4.
2005-05-13 17:30:00 +00:00
Jaroslav Kysela
a35432c43e Fixed basic astraction selection for simple mixer API 2005-03-29 14:06:29 +00:00
Jaroslav Kysela
1299087e6c Added -a,--abstract switch for upcoming abstract mixer API 2005-03-27 12:50:34 +00:00
Giuliano Pochini
943bf551e1 amixer no-range-checking option
This patch adds the --nocheck option that disables range checking. It helps
debugging drivers.

Signed-off-by: Giuliano Pochini <pochini@shiny.it>
2005-02-04 15:35:27 +00:00
Takashi Iwai
4cd2c00fb3 Fix exit status
Return the exit status 0 after -h option.
When invalid options are given, it should return exit code 1.
2005-01-31 13:52:09 +00:00
Takashi Iwai
b729f4fc30 exits with status 0 after -h option
amixer exits with status 0 after -h option (ALSA BTS #858).
2005-01-31 13:48:50 +00:00
Nicolas FRANCOIS
ca5f8cbcfe Fix hyphens in man pages
This patch converts hyphens to minus signs in the man pages (for options,
emails, or command line examples).

This patch also closes one font modifier in iecset.1.
(s/\fIfalse\fI,/\fIfalse\fP,/)

Signed-off-by: Nicolas FRANCOIS <nicolas.francois@centraliens.net>
2004-10-08 16:15:34 +00:00
Thomas Hood
3e6080525e fixes its use of formatting codes in amixer.1
Signed-off-by: Thomas Hood <jdthood@yahoo.co.uk>
2004-09-24 09:49:57 +00:00
Jaroslav Kysela
095e74167c Fixed typo 2004-08-10 09:46:19 +00:00
Takashi Iwai
59bf7f2c34 Fixed the wrong integer suffix. 2004-08-04 15:21:12 +00:00