.TH iecset 1 "23 Oct 2003"
.SH NAME
iecset \- Set or dump IEC958 status bits

.SH SYNOPSIS
\fBiecset\fP [\fIoptions\fP] [\fIcmd\fP \fIarg\fP...]

.SH DESCRIPTION
\fBiecset\fP is a small utility to set or dump the IEC958 (or so-called
"S/PDIF") status bits of the specified sound card via ALSA control API.

When \fBiecset\fP is started without arguments except for options,
it will show the current IEC958 status in a human-readable form.
When the commands are given in the arguments, they are parsed
and the IEC958 status bits are updated.  The resultant status is
shown as well.

The commands consist of the command directive and the argument.
As the boolean argument, \fIyes\fP, \fIno\fP, \fItrue\fP, \fIfalse\fP,
or a digit number is allowed.

.SH EXAMPLES
.TP
.BI iecset\ \-Dhw:1
Displays the current IEC958 status bits on the second card.
This is equivalent with \fI\-c 1\fP.
.TP
.BI iecset\ \-x
Displays the current IEC958 status bits in a style of the arguments
for the PCM stream.  The output string can be passed to the \fIiec958\fP
(or \fIspdif\fP) PCM type as the optional argument.
.TP
.BI iecset\ pro\ off\ audio\ off
Sets the current status to the consumer-mode and turns on the
non-audio bit.  The modified status will be shown, too.

.SH OPTIONS
.TP
\fI\-D\fP device
Specifies the device name of the control to open
.TP
\fI\-c\fP card
Specifies the card index to open.  Equivalent with \fI\-Dhw:x\fP.
.TP
\fI\-n\fP index
Specifies the IEC958 control element index, in case you have multiple
IEC958 devices and need to choose one of them.
.TP
\fI\-x\fP
Dumps the status in the form of AESx bytes.
.TP
\fI\-i\fP
Reads the command sequences from stdin.
Each line has single command.

.SH COMMANDS
.TP
\fIprofessional\fP <bool>
The professional mode (true) or consumer mode (false).

.TP
\fIaudio\fP <bool>
The audio mode (true) or non-audio mode (false).

.TP
\fIrate\fP <int>
The sample rate in Hz.

.TP
\fIemphasis\fP <int>
The emphasis: 0 = none, 1 = 50/15us, 2 = CCITT.

.TP
\fIlock\fP <bool>
Rate lock: locked (true), unlocked (false).
This command is for the professional mode only.

.TP
\fIsbits\fP <int>
Sample bits:  2 = 20bit, 4 = 24bit, 6 = undefined.
This command is for the professional mode only.

.TP
\fIwordlength\fP <int>
Wordlength: 0 = No, 2 = 22-18 bit, 4 = 23-19 bit, 5 = 24-20 bit, 6 = 20-16 bit.
This command is for the professional mode only.

.TP
\fIcategory\fP <int>
Category: the value is from 0 to 0x7f.
This command is for the consumer mode only.

.TP
\fIcopyright\fP <bool>
Copyright: copyrighted (true), non-copyrighted (false).
This command is for the consumer mode only.

.TP
\fIoriginal\fP <boo>
Original flag: original (true), 1st generation (false).
This command is for the consumer mode only.

.SH AUTHOR
Takashi Iwai <tiwai@suse.de>
