#include <sent/stddefs.h>
#include <sent/adin.h>
#include <sys/ioctl.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <alsa/asoundlib.h>
Go to the source code of this file.
Functions | |
boolean | adin_mic_standby (int sfreq, void *dummy) |
Device initialization: check device capability and open for recording. | |
static int | xrun_recovery (snd_pcm_t *handle, int err) |
Error recovery when PCM buffer underrun or suspend. | |
boolean | adin_mic_begin () |
Start recording. | |
boolean | adin_mic_end () |
Stop recording. | |
int | adin_mic_read (SP16 *buf, int sampnum) |
Read samples from device. | |
Variables | |
static snd_pcm_t * | handle |
Audio handler. | |
static snd_pcm_hw_params_t * | hwparams |
Pointer to device hardware parameters. | |
static char * | pcm_name = "hw:0,0" |
Name of the PCM device. | |
static boolean | need_swap |
Whether samples need byte swap. | |
static int | latency = 32 |
Lantency time in msec. You can override this value by specifying environment valuable "LATENCY_MSEC". | |
static struct pollfd * | ufds |
Poll descriptor. | |
static int | count |
Poll descriptor count. |
Low level I/O functions for microphone input on Linux using Advanced Linux Sound Architechture (ALSA) API, developed on version 0.9.x. If you want to use this API, please specify "--with-mictype=alsa" options at compilation time to configure script.
Julius does not alter any mixer device setting at all on Linux. You should configure the mixer for recording source (mic/line) and recording volume correctly using other audio tool such as alsamixer.
Note that sound card should support 16bit monaural recording, and multiple cards are not supported (in that case the first one will be used).
Definition in file adin_mic_linux_alsa.c.
boolean adin_mic_standby | ( | int | sfreq, | |
void * | dummy | |||
) |
Device initialization: check device capability and open for recording.
Connection initialization: check connectivity and open for recording.
sfreq | [in] required sampling frequency. | |
dummy | [in] a dummy data |
Definition at line 81 of file adin_mic_linux_alsa.c.
static int xrun_recovery | ( | snd_pcm_t * | handle, | |
int | err | |||
) | [static] |
Error recovery when PCM buffer underrun or suspend.
handle | [in] audio handler | |
err | [in] error code |
Definition at line 287 of file adin_mic_linux_alsa.c.
boolean adin_mic_begin | ( | ) |
Start recording.
Definition at line 313 of file adin_mic_linux_alsa.c.
boolean adin_mic_end | ( | ) |
Stop recording.
Definition at line 359 of file adin_mic_linux_alsa.c.
int adin_mic_read | ( | SP16 * | buf, | |
int | sampnum | |||
) |
Read samples from device.
Read samples from the daemon.
Try to read sampnum samples and returns actual number of recorded samples currently available. This function will block until at least one sample can be obtained.
buf | [out] samples obtained in this function | |
sampnum | [in] wanted number of samples to be read |
Definition at line 377 of file adin_mic_linux_alsa.c.