This document describes the libdsp library for development purposes. It's a very convenient library which works both with OSS and ALSA APIs, written for the VoiceAuth project. Sound card manipulation: ------------------------ #include dsp_t open_dsp(char *device, int *format, int flags); int close_dsp(dsp_t fd); audio_data_t * read_dsp(int use_select, int read_timeout, float silence_level, float threshold, int format, dsp_t fd); int write_dsp(int use_select, int select_timeout, audio_data_t *data, int format, dsp_t fd); Mixer manipulation: ------------------- #include mixer_t open_mixer(char *device, int flags); void close_mixer(mixer_t fd); int set_mixer_recdev(int channel, mixer_t fd); int set_mixer_volume(int channel, int igain, mixer_t fd); Signal processing helpers: -------------------------- #include int get_silence_level(int use_select, int format, dsp_t fd); audio_data_t * remove_silence(audio_data_t *dsp_data, int silence_level, float threshold); Audio stream helpers: --------------------- #include audio_data_t * new_audio_data(int len); void free_audio_data(audio_data_t *data); audio_data_t * resize_float_stream(audio_data_t *speech, int new_len); Data and config information: ---------------------------- #include char * audio_format_str (int); int get_audio_driver(); //void get_audio_config(int *audio_format, int *channels, int *sampling_rate); //char *translate_audio_format(int audio_format);