STANNIX Solutions for the Real World


Manual: arecord

APLAY(1)				   General Commands Manual				    APLAY(1)

NAME
       arecord, aplay - command-line sound recorder and player for ALSA soundcard driver

SYNOPSIS
       arecord [flags] [filename]
       aplay [flags] [filename [filename]] ...

DESCRIPTION
       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 sam‐
       pling 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  multi‐
       ple filenames.

OPTIONS
       -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 -r44100]
	      -f dat (16 bit little endian, 48000, stereo) [-f S16_LE -c2 -r48000]
	      If no format is given U8 is used.

       -r, --rate=#
	      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 record/playback process will run until it is killed.	Either	'-d'
	      or '-s' option is available exclusively.

       -s, --samples=#
	      Interrupt after transmission of # PCM frames.  A value of zero means infinity.  The default is
	      zero,  so	 if  this  options  is omitted then the record/playback process will run until it is
	      killed.  Either '-d' or '-s' option is available exclusively.

       -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 imme‐
	      diately.	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 maxi‐
	      mal 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 al‐
	      lowed 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 in‐
	      formation, 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=
	      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 
	      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 when‐
	      ever 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  capabili‐
	      ties of the soundcard.

       --fatal-errors
	      Disables	recovery attempts when errors (e.g. xrun) are encountered; the aplay process instead
	      aborts immediately.

SIGNALS
       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 --sepa‐
       rate-channels.

EXAMPLES
       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.

SEE ALSO
	alsamixer(1), amixer(1)

BUGS
       Note that .aiff files are not currently supported.

AUTHOR
       arecord and aplay  are  by  Jaroslav  Kysela    This  document  is  by  Paul  Winkler
       .  Updated for Alsa 0.9 by James Tappin 

					       1 January 2010					    APLAY(1)