|AUCAT(1)||General Commands Manual||AUCAT(1)|
aucatutility can play, record, mix, and process audio files on the fly. During playback,
aucatreads audio data concurrently from all played files, mixes it and plays the result on the device. Similarly, it stores audio data recorded from the device into corresponding files. An off-line mode could be used to process audio files without involving audio hardware. Processing includes:
aucat can accept MIDI messages
The options are as follows:
0:1, i.e. stereo.
off, then each source channel is routed to a single destination channel, possibly discarding channels. If the flag is
on, then a single source may be sent to multiple destinations and multiple sources may be mixed into a single destination. For instance, this feature could be used to convert a stereo file into a mono file mixing left and right channels together. The default is
-i) and one output (
On the command line, per-file parameters
-cehjrv) must precede the file definition
aucat is sent
SIGTERM, it terminates recording to files.
aucatcan be controlled through MIDI (
-q) as follows: a MIDI channel is assigned to each stream, and the volume is changed using the standard volume controller (number 7).
The master volume can be changed using the standard master volume system exclusive message.
All audio files are controlled by the following MMC messages:
MIDI control is intended to be used together with sndiod(8). For instance, the following command will create two devices: the default snd/0 and a MMC-controlled one snd/0.mmc:
$ sndiod -r 48000 -z 480 -s default -t slave -s mmc
Programs using snd/0 behave normally, while programs using snd/0.mmc wait for the MMC start signal and start synchronously. Then, the following command will play a file on the snd/0.mmc audio device, giving full control to MIDI software or hardware connected to the midithru/0 MIDI port:
$ aucat -f snd/0.mmc -q midithru/0 -i file.wav
At this stage,
aucat will start, stop and
relocate automatically following all user actions in the MIDI sequencer,
assuming it's configured to transmit MMC on
midithru/0. Furthermore, the MIDI sequencer could be
configured to use the snd/0 port as MTC clock source,
assured to be synchronous to playback of
$ aucat -i file1.wav -i file2.wav -o file3.wav
Record channels 2 and 3 into one stereo file and channels 6 and 7 into another stereo file using a 44.1kHz sampling rate for both:
$ aucat -r 44100 -c 2:3 -o file1.wav -c 6:7 -o file2.wav
Split a stereo file into two mono files:
$ aucat -n -i stereo.wav -c 0:0 -o left.wav \ -c 1:1 -o right.wav
There are limitations inherent to the wav, aiff, and au file formats: not all encodings are supported, file sizes are limited to 2GB, and the files must support the lseek(2) operation (e.g. pipes do not support it).
|April 24, 2017||OpenBSD-current|