|
NAMEsndio —
audio and MIDI device descriptors
DESCRIPTIONPrograms access audio and MIDI hardware using thesndio
library. It allows both access through the
sndiod(8)
server and raw access to the hardware. The audio device or MIDI port, as well
as the access method, are designated by the sndio descriptor. It is provided
by the user with the program device selection method, or with the
AUDIODEVICE and MIDIDEVICE
environment variables if there's no device selection method.
Usually, programs access the hardware via the sndiod(8) server, because raw access to the hardware is exclusive and requires additional privileges. The sndiod(8) server supports multiple connections at a time, allowing multiple programs to use the hardware concurrently. It performs the necessary audio processing on the fly to overcome any incompatibility between software and hardware. Connections to sndiod(8) may also be established through the network, including from virtual machines. The sndiod(8) server exposes MIDI thru ports, allowing one program to send MIDI data to other programs, for instance to allow a sequencer to send events to a synthesizer. Additionally, sndiod(8) exposes a MIDI port used to control audio programs using standard MIDI Machine Control (MMC), MIDI Time Code (MTC), and master volume messages. Server device descriptorsFrom the user's perspective, every audio device or MIDI port exposed by sndiod(8) has a descriptor of the form:type[@hostname][,servnum]/devnum[.option] This information is used by programs to determine how to access the audio device or MIDI port.
Raw device descriptorsEvery raw audio device or MIDI port has a descriptor of the form:type/devnum
The type can be either
Default Audio and MIDI devicesWhen no audio device descriptor is provided to a program or when the reserved worddefault is used as the audio device, the program
will use the one specified in the AUDIODEVICE ,
AUDIOPLAYDEVICE and/or
AUDIORECDEVICE environment variables. If they are not
set, the program first tries to connect to snd/0 . If
that fails, it then tries to use rsnd/0 .
Similarly, if no MIDI descriptor is provided to a program or when
the reserved word AuthenticationFor privacy reasons only one user may have connections to sndiod(8) at a given time. Users are identified by their session cookie, which is automatically generated by audio or MIDI programs upon the first connection to the server. The cookie is stored in $HOME/.sndio/cookie and contains 128 bits of raw random data.If a session needs to be shared between multiple users, they can connect to the server using the same cookie. ENVIRONMENT
These environment variables are ignored by
FILES
EXAMPLES
SEE ALSOaucat(1), midicat(1), sndioctl(1), mio_open(3), sio_open(3), sioctl_open(3), audio(4), midi(4), sndiod(8)
Visit the GSP FreeBSD Man Page Interface. |