mirror of
https://github.com/alsa-project/alsa-utils
synced 2024-12-22 22:06:31 +01:00
- removed obsolete group option.
- made error handling consistent.
This commit is contained in:
parent
d6b09c3371
commit
e52214d3e2
3 changed files with 21 additions and 34 deletions
|
@ -19,26 +19,22 @@ To see which port is available as input port, run the following
|
||||||
command:
|
command:
|
||||||
|
|
||||||
% aconnect -i
|
% aconnect -i
|
||||||
client 0: 'System' [group=system] [type=kernel]
|
client 0: 'System' [type=kernel]
|
||||||
0 'Timer ' [group=system]
|
0 'Timer '
|
||||||
1 'Announce ' [group=system]
|
1 'Announce '
|
||||||
client 64: '0: MIDI Synth' [group=] [type=kernel]
|
client 64: '0: MIDI Synth' [type=kernel]
|
||||||
0 'card 0: synth-midi: 0' [group=device]
|
0 'card 0: synth-midi: 0'
|
||||||
|
|
||||||
Similary, to see the output ports, use -o flag.
|
Similary, to see the output ports, use -o flag.
|
||||||
|
|
||||||
% aconnect -o
|
% aconnect -o
|
||||||
client 64: '0: MIDI Synth' [group=] [type=kernel]
|
client 64: '0: MIDI Synth' [type=kernel]
|
||||||
0 'card 0: synth-midi: 0' [group=device]
|
0 'card 0: synth-midi: 0'
|
||||||
client 65: 'AWE Wave Table Synth : 0' [group=device] [type=kernel]
|
client 65: 'AWE Wave Table Synth : 0' [type=kernel]
|
||||||
0 'Emu8000 port 0 ' [group=device]
|
0 'Emu8000 port 0 '
|
||||||
1 'Emu8000 port 1 ' [group=device]
|
1 'Emu8000 port 1 '
|
||||||
2 'Emu8000 port 2 ' [group=device]
|
2 'Emu8000 port 2 '
|
||||||
3 'Emu8000 port 3 ' [group=device]
|
3 'Emu8000 port 3 '
|
||||||
|
|
||||||
Some ports may have permission for its own group.
|
|
||||||
In such a case, change the group of aconnect to the appropriate one by
|
|
||||||
using -g option.
|
|
||||||
|
|
||||||
The option -l together with -i or -o shows subscribers for each port.
|
The option -l together with -i or -o shows subscribers for each port.
|
||||||
|
|
||||||
|
|
|
@ -55,15 +55,15 @@ option.
|
||||||
.IP "" 4
|
.IP "" 4
|
||||||
% aconnect -i
|
% aconnect -i
|
||||||
.br
|
.br
|
||||||
client 0: 'System' [group=system] [type=kernel]
|
client 0: 'System' [type=kernel]
|
||||||
.in +4
|
.in +4
|
||||||
0 'Timer ' [group=system]
|
0 'Timer '
|
||||||
.br
|
.br
|
||||||
1 'Announce ' [group=system]
|
1 'Announce '
|
||||||
.in -4
|
.in -4
|
||||||
client 64: 'External MIDI-0' [group=] [type=kernel]
|
client 64: 'External MIDI-0' [type=kernel]
|
||||||
.in +4
|
.in +4
|
||||||
0 'MIDI 0-0 ' [group=device]
|
0 'MIDI 0-0 '
|
||||||
.in -4
|
.in -4
|
||||||
.PP
|
.PP
|
||||||
Similary, to see the output ports, use
|
Similary, to see the output ports, use
|
||||||
|
@ -100,16 +100,6 @@ option, but
|
||||||
time-stamps are converted to the current value of the given
|
time-stamps are converted to the current value of the given
|
||||||
.I tick
|
.I tick
|
||||||
queue.
|
queue.
|
||||||
.TP
|
|
||||||
.B \-g, --group name
|
|
||||||
Specify the group name that
|
|
||||||
.B aconnect
|
|
||||||
uses.
|
|
||||||
Some ports may have special permissions, so that only the same group
|
|
||||||
may subscribe to them. In such a case,
|
|
||||||
.B aconnect
|
|
||||||
can fake the group name
|
|
||||||
with this option.
|
|
||||||
|
|
||||||
.SS LIST PORTS
|
.SS LIST PORTS
|
||||||
.TP
|
.TP
|
||||||
|
|
|
@ -255,7 +255,6 @@ static struct option long_option[] = {
|
||||||
{"disconnect", 0, NULL, 'd'},
|
{"disconnect", 0, NULL, 'd'},
|
||||||
{"input", 0, NULL, 'i'},
|
{"input", 0, NULL, 'i'},
|
||||||
{"output", 0, NULL, 'o'},
|
{"output", 0, NULL, 'o'},
|
||||||
{"group", 1, NULL, 'g'},
|
|
||||||
{"real", 1, NULL, 'r'},
|
{"real", 1, NULL, 'r'},
|
||||||
{"tick", 1, NULL, 't'},
|
{"tick", 1, NULL, 't'},
|
||||||
{"exclusive", 0, NULL, 'e'},
|
{"exclusive", 0, NULL, 'e'},
|
||||||
|
@ -276,7 +275,7 @@ int main(int argc, char **argv)
|
||||||
snd_seq_port_subscribe_t *subs;
|
snd_seq_port_subscribe_t *subs;
|
||||||
snd_seq_addr_t sender, dest;
|
snd_seq_addr_t sender, dest;
|
||||||
|
|
||||||
while ((c = getopt_long(argc, argv, "diog:r:t:elx", long_option, NULL)) != -1) {
|
while ((c = getopt_long(argc, argv, "dior:t:elx", long_option, NULL)) != -1) {
|
||||||
switch (c) {
|
switch (c) {
|
||||||
case 'd':
|
case 'd':
|
||||||
command = UNSUBSCRIBE;
|
command = UNSUBSCRIBE;
|
||||||
|
@ -351,15 +350,17 @@ int main(int argc, char **argv)
|
||||||
if (snd_seq_set_client_name(seq, "ALSA Connector") < 0) {
|
if (snd_seq_set_client_name(seq, "ALSA Connector") < 0) {
|
||||||
snd_seq_close(seq);
|
snd_seq_close(seq);
|
||||||
fprintf(stderr, "can't set client info\n");
|
fprintf(stderr, "can't set client info\n");
|
||||||
return 0;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* set subscription */
|
/* set subscription */
|
||||||
if (snd_seq_parse_address(seq, &sender, argv[optind]) < 0) {
|
if (snd_seq_parse_address(seq, &sender, argv[optind]) < 0) {
|
||||||
|
snd_seq_close(seq);
|
||||||
fprintf(stderr, "invalid sender address %s\n", argv[optind]);
|
fprintf(stderr, "invalid sender address %s\n", argv[optind]);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
if (snd_seq_parse_address(seq, &dest, argv[optind + 1]) < 0) {
|
if (snd_seq_parse_address(seq, &dest, argv[optind + 1]) < 0) {
|
||||||
|
snd_seq_close(seq);
|
||||||
fprintf(stderr, "invalid destination address %s\n", argv[optind + 1]);
|
fprintf(stderr, "invalid destination address %s\n", argv[optind + 1]);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue