adinrec man page


— record audio device and save one utterance to a file


adinrec [options...] {filename}


adinrec opens an audio stream, detects an utterance input and store it to a specified file. The utterance detection is done by level and zero-cross thresholds. Default input device is microphone, but other audio input source, including Julius A/D-in plugin, can be used by using "-input" option.

The audio format is 16 bit, 1 channel, in Microsoft WAV format. If the given filename already exists, it will be overridden.

If filename is "-" , the captured data will be streamed into standard out, with no header (raw format).


adinrec uses JuliusLib and adopts Julius options. Below is a list of valid options.

adinrec specific options

-freq Hz

Set sampling rate in Hz. (default: 16,000)


Output in raw file format.

JuliusLib options

-input {mic|rawfile|adinnet|stdin|netaudio|esd|alsa|oss}

Choose speech input source. Specify 'file' or 'rawfile' for waveform file. On file input, users will be prompted to enter the file name from stdin.

´mic' is to get audio input from a default live microphone device, and 'adinnet' means receiving waveform data via tcpip network from an adinnet client. 'netaudio' is from DatLink/NetAudio input, and 'stdin' means data input from standard input.

At Linux, you can choose API at run time by specifying alsa, oss and esd.

-chunk_size samples

Audio fragment size in number of samples. (default: 1000)

-lv thres

Level threshold for speech input detection. Values should be in range from 0 to 32767. (default: 2000)

-zc thres

Zero crossing threshold per second. Only input that goes over the level threshold (-lv) will be counted. (default: 60)

-headmargin msec

Silence margin at the start of speech segment in milliseconds. (default: 300)

-tailmargin msec

Silence margin at the end of speech segment in milliseconds. (default: 400)


This option enables DC offset removal.

-smpFreq Hz

Set sampling rate in Hz. (default: 16,000)


Record input with 48kHz sampling, and down-sample it to 16kHz on-the-fly. This option is valid for 16kHz model only. The down-sampling routine was ported from sptk. (Rev. 4.0)

-NA devicename

Host name for DatLink server input (-input netaudio).

-adport port_number

With -input adinnet, specify adinnet port number to listen. (default: 5530)


Julius by default removes successive zero samples in input speech data. This option stop it.

-C jconffile

Load a jconf file at here. The content of the jconffile will be expanded at this point.

-plugindir dirlist

Specify which directories to load plugin. If several direcotries exist, specify them by colon-separated list.

Environment Variables


Device name string for ALSA. (default: "default")


Device name string for OSS. (default: "/dev/dsp")


Input latency of microphone input in milliseconds. Smaller value will shorten latency but sometimes make process unstable. Default value will depend on the running OS.

See Also

julius ( 1 ) , adintool ( 1 )


The same as Julius.

Referenced By