arecord, aplay - command-line sound recorder and player for ALSA soundcard driver
arecord [flags] [filename] aplay [flags] [filename [filename]] ...
arecord is a command-line soundfile recorder for the ALSA soundcard driver. It supports several file formats and multiple soundcards with multiple devices. If recording with interleaved mode samples the file is automatically split before the 2GB filesize. aplay is much the same, only it plays instead of recording. For supported soundfile formats, the sampling rate, bit depth, and so forth can be automatically determined from the soundfile header. If filename is not specified, the standard output or input is used. The aplay utility accepts multiple filenames.
-h, --help
Help: show syntax.
--version
Print current version.
-l, --list-devices
List all soundcards and digital audio devices
-L, --list-pcms
List all PCMs defined
-D, --device=NAME
Select PCM by name
-q --quiet
Quiet mode. Suppress messages (not sound :))
-t, --file-type TYPE
File type (voc, wav, raw or au). If this parameter is omitted
the WAVE format is used.
-c, --channels=#
The number of channels. The default is one channel. Valid
values are 1 through 32.
-f --format=FORMAT
Sample format
Recognized sample formats are: S8 U8 S16_LE S16_BE U16_LE U16_BE
S24_LE S24_BE U24_LE U24_BE S32_LE S32_BE U32_LE U32_BE FLOAT_LE
FLOAT_BE FLOAT64_LE FLOAT64_BE IEC958_SUBFRAME_LE
IEC958_SUBFRAME_BE MU_LAW A_LAW IMA_ADPCM MPEG GSM SPECIAL
S24_3LE S24_3BE U24_3LE U24_3BE S20_3LE S20_3BE U20_3LE U20_3BE
S18_3LE S18_3BE U18_3LE
Some of these may not be available on selected hardware
The available format shortcuts are:
-f cd (16 bit little endian, 44100, stereo) [-f S16_LE -c2 -r44100]
-f cdr (16 bit big endian, 44100, stereo) [-f S16_BE -c2 -f44100]
-f dat (16 bit little endian, 48000, stereo) [-f S16_LE -c2 -r48000]
If no format is given U8 is used.
-r, --rate=#<Hz>
Sampling rate in Hertz. The default rate is 8000 Hertz. If the
value specified is less than 300, it is taken as the rate in
kilohertz. Valid values are 2000 through 192000 Hertz.
-d, --duration=#
Interrupt after # seconds. A value of zero means infinity. The
default is zero, so if this option is omitted then the arecord
process will run until it is killed.
-s, --sleep-min=#
Min ticks to sleep. The default is not to sleep.
-M, --mmap
Use memory-mapped (mmap) I/O mode for the audio stream. If this
option is not set, the read/write I/O mode will be used.
-N, --nonblock
Open the audio device in non-blocking mode. If the device is
busy the program will exit immediately. If this option is not
set the program will block until the audio device is available
again.
-F, --period-time=#
Distance between interrupts is # microseconds. If no period
time and no period size is given then a quarter of the buffer
time is set.
-B, --buffer-time=#
Buffer duration is # microseconds If no buffer time and no
buffer size is given then the maximal allowed buffer time but
not more than 500ms is set.
--period-size=#
Distance between interrupts is # frames If no period size and no
period time is given then a quarter of the buffer size is set.
--buffer-size=#
Buffer duration is # frames If no buffer time and no buffer size
is given then the maximal allowed buffer time but not more than
500ms is set.
-A, --avail-min=#
Min available space for wakeup is # microseconds
-R, --start-delay=#
Delay for automatic PCM start is # microseconds (relative to
buffer size if <= 0)
-T, --stop-delay=#
Delay for automatic PCM stop is # microseconds from xrun
-v, --verbose
Show PCM structure and setup. This option is accumulative. The
VU meter is displayed when this is given twice or three times.
-V, --vumeter=TYPE
Specifies the VU-meter type, either stereo or mono. The stereo
VU-meter is available only for 2-channel stereo samples with
interleaved format.
-I, --separate-channels
One file for each channel. This option disables max-file-time
and use-strftime, and ignores SIGUSR1. The stereo VU meter is
not available with separate channels.
-P Playback. This is the default if the program is invoked by
typing aplay.
-C Record. This is the default if the program is invoked by typing
arecord.
-i, --interactive
Allow interactive operation via stdin. Currently only
pause/resume via space or enter key is implemented.
-m, --chmap=ch1,ch2,...
Give the channel map to override or follow. Pass channel
position strings like FL, FR, etc.
If a device supports the override of the channel map, aplay
tries to pass the given channel map. If it doesn't support the
channel map override but still it provides the channel map
information, aplay tries to rearrange the channel order in the
buffer to match with the returned channel map from the device.
--disable-resample
Disable automatic rate resample.
--disable-channels
Disable automatic channel conversions.
--disable-format
Disable automatic format conversions.
--disable-softvol
Disable software volume control (softvol).
--test-position
Test ring buffer position.
--test-coef=<coef>
Test coefficient for ring buffer position; default is 8.
Expression for validation is: coef * (buffer_size / 2). Minimum
value is 1.
--test-nowait
Do not wait for the ring buffer eats the whole CPU.
--max-file-time
While recording, when the output file has been accumulating
sound for this long, close it and open a new output file.
Default is the maximum size supported by the file format: 2 GiB
for WAV files. This option has no effect if
--separate-channels is specified.
--process-id-file <file name>
aplay writes its process ID here, so other programs can send
signals to it.
--use-strftime
When recording, interpret %-codes in the file name parameter
using the strftime facility whenever the output file is opened.
The important strftime codes are: %Y is the year, %m month, %d
day of the month, %H hour, %M minute and %S second. In
addition, %v is the file number, starting at 1. When this
option is specified, intermediate directories for the output
file are created automatically. This option has no effect if
--separate-channels is specified.
--dump-hw-params
Dump hw_params of the device preconfigured status to stderr. The
dump lists capabilities of the selected device such as supported
formats, sampling rates, numbers of channels, period and buffer
bytes/sizes/times. For raw device hw:X this option basically
lists hardware capabilities of the soundcard.
--fatal-errors
Disables recovery attempts when errors (e.g. xrun) are
encountered; the aplay process instead aborts immediately.
When recording, SIGINT, SIGTERM and SIGABRT will close the output file and exit. SIGUSR1 will close the output file, open a new one, and continue recording. However, SIGUSR1 does not work with --separate-channels.
aplay -c 1 -t raw -r 22050 -f mu_law foobar
will play the raw file "foobar" as a 22050-Hz, mono, 8-bit,
Mu-Law .au file.
arecord -d 10 -f cd -t wav -D copy foobar.wav
will record foobar.wav as a 10-second, CD-quality wave file,
using the PCM "copy" (which might be defined in the user's
.asoundrc file as:
pcm.copy {
type plug
slave {
pcm hw
}
route_policy copy
}
arecord -t wav --max-file-time 30 mon.wav
Record from the default audio source in monaural, 8,000 samples
per second, 8 bits per sample. Start a new file every 30
seconds. File names are mon-nn.wav, where nn increases from 01.
The file after mon-99.wav is mon-100.wav.
arecord -f cd -t wav --max-file-time 3600 --use-strftime
%Y/%m/%d/listen-%H-%M-%v.wav
Record in stereo from the default audio source. Create a new
file every hour. The files are placed in directories based on
their start dates and have names which include their start times
and file numbers.
alsamixer(1), amixer(1)
Note that .aiff files are not currently supported.
arecord and aplay are by Jaroslav Kysela <[email protected]> This document is by Paul Winkler <[email protected]>. Updated for Alsa 0.9 by James Tappin <[email protected]> 1 January 2010 APLAY(1)
Personal Opportunity - Free software gives you access to billions of dollars of software at no cost. Use this software for your business, personal use or to develop a profitable skill. Access to source code provides access to a level of capabilities/information that companies protect though copyrights. Open source is a core component of the Internet and it is available to you. Leverage the billions of dollars in resources and capabilities to build a career, establish a business or change the world. The potential is endless for those who understand the opportunity.
Business Opportunity - Goldman Sachs, IBM and countless large corporations are leveraging open source to reduce costs, develop products and increase their bottom lines. Learn what these companies know about open source and how open source can give you the advantage.
Free Software provides computer programs and capabilities at no cost but more importantly, it provides the freedom to run, edit, contribute to, and share the software. The importance of free software is a matter of access, not price. Software at no cost is a benefit but ownership rights to the software and source code is far more significant.
Free Office Software - The Libre Office suite provides top desktop productivity tools for free. This includes, a word processor, spreadsheet, presentation engine, drawing and flowcharting, database and math applications. Libre Office is available for Linux or Windows.
The Free Books Library is a collection of thousands of the most popular public domain books in an online readable format. The collection includes great classical literature and more recent works where the U.S. copyright has expired. These books are yours to read and use without restrictions.
Source Code - Want to change a program or know how it works? Open Source provides the source code for its programs so that anyone can use, modify or learn how to write those programs themselves. Visit the GNU source code repositories to download the source.
Study at Harvard, Stanford or MIT - Open edX provides free online courses from Harvard, MIT, Columbia, UC Berkeley and other top Universities. Hundreds of courses for almost all major subjects and course levels. Open edx also offers some paid courses and selected certifications.
Linux Manual Pages - A man or manual page is a form of software documentation found on Linux/Unix operating systems. Topics covered include computer programs (including library and system calls), formal standards and conventions, and even abstract concepts.