aconnect(1)

๐Ÿ“ฆ
version 1.2.16 ยท 2 versions
  • 1.2.16 ยท alpine 3.22, alpine 3.23, alpine 3.24, arch rolling, centos-stream 10, centos-stream 9, debian trixie, fedora 43, fedora 44, nixos 26.05, nixpkgs unstable, opensuse-leap 16.0, ubuntu questing, ubuntu resolute, ubuntu stonking (latest)
  • 1.2.9 ยท debian bookworm, ubuntu jammy, ubuntu noble
, in alpine 3.22, alpine 3.23, alpine 3.24, arch rolling, centos-stream 10, centos-stream 9, debian trixie, fedora 43, fedora 44, nixos 26.05, nixpkgs unstable, opensuse-leap 16.0, ubuntu questing, ubuntu resolute, ubuntu stonking

โœจ aconnect(1) โ€” General Commands Manual ๐ŸŽ€

Okay bestie, the manual name is aconnect(1) and it's giving ALSA sequencer connection manager ๐Ÿ’– Let me walk you through it, no cap ๐Ÿ’…

๐Ÿฆ‹ NAME

aconnect โ€” ALSA sequencer connection manager ๐Ÿงš

๐Ÿ’œ SYNOPSIS

aconnect [-d] [-options] sender receiver
aconnect -i|-o [-options]
aconnect -x

๐ŸŒธ DESCRIPTION

okay so aconnect is a utility for connecting and disconnecting two existing ports on the ALSA sequencer system ๐Ÿ”ฅ Ports with the arbitrary subscription permission, like the ones made by aseqview(1), can be hooked up to any (MIDI) device ports using aconnect ๐Ÿ’– For example, to connect from port 64:0 to 65:0, you run this:

% aconnect 64:0 65:0

The connection is one-way, so all the data going to the sender port (64:0) gets redirected to the receiver port (65:0) โœจ When another port (e.g. 65:1) is attached to the same sender port, the data goes to both receiver ports ๐Ÿ‘‘ To disconnect, use the -d option ๐Ÿ’…

% aconnect -d 64:0 65:0

You can also use the client's name instead of the address ๐Ÿซถ

% aconnect External:0 Emu8000:1

Then port 0 of the client matching the string "External" gets connected to port 1 of the client matching "Emu8000" ๐ŸŽ€

Another thing aconnect can do is list the ports that are around, based on the condition you give it ๐ŸŒˆ The input ports (the ones that may become sender ports) get listed with the -i option ๐Ÿฆ‹

% aconnect -i
client 0: 'System' [type=kernel]
    0 'Timer           '
    1 'Announce        '
client 64: 'External MIDI-0' [type=kernel]
    0 'MIDI 0-0        '

Similarly, to see the output ports, use the -o flag ๐Ÿ’œ

You can remove all existing exported connections with the -x option ๐Ÿงน This is super useful for shutting down the ALSA drivers, because modules with sequencer connections cannot be unloaded unless those connections are removed first ๐Ÿ˜ญ

โœจ OPTIONS โœจ

๐Ÿ’– CONNECTION MANAGEMENT

  • -d, --disconnect โ€” Disconnects the given subscription ๐Ÿ’”
  • -e, --exclusive โ€” Connects ports in exclusive mode. Both the sender and receiver ports can't be connected by any other ports anymore ๐Ÿ”’
  • -r, --real queue โ€” Converts the time-stamps of event packets to the current value of the given real-time queue. Lowkey not super useful, though, since the receiver port has to use (not necessarily own) the specified queue ๐Ÿ™ˆ
  • -t, --tick queue โ€” Like -r, but the time-stamps get converted to the current value of the given tick queue ๐Ÿฆ‹

๐ŸŒธ LIST PORTS

  • -i, --input โ€” Lists the existing input (readable) ports. This is exclusive to -o ๐Ÿงš
  • -o, --output โ€” Lists the existing output (writable) ports. This is exclusive to -i ๐Ÿงš
  • -a, --all โ€” Lists inactive ports too ๐Ÿ‘€
  • -l, --list โ€” Lists the current connection status. The connected and connecting ports from/to each port get listed together. The suffix flag [ex] means the connection is exclusive, and the suffix flags [real:#] and [tick:#] mean the connection includes real-time or tick conversion on the listed queue, respectively ๐Ÿ’…

๐Ÿงน REMOVE ALL CONNECTIONS

  • -x, --removeall โ€” Removes all exported connections ๐Ÿซง

๐Ÿฆ‹ SEE ALSO

aseqnet(1), aseqview(1) ๐Ÿ”—

๐Ÿ’œ AUTHOR

Takashi Iwai <tiwai@suse.de> ๐Ÿ‘‘


Bye bestie, this manual page was brought to you by aconnect(1) ๐ŸŒˆ Last updated August 31, 2000 ๐Ÿ“ Stay iconic, stay connected ๐Ÿ’–