The CVoiceControl Handbook: Technical Issues

Next Previous Contents

## 4. Technical Issues

## 4.1 Sound Recording

Sound is recorded at 16 kHz, 16 bit, mono. This should be supported by any state-of-the-art standard sound card ?!

Note:

To be able to record sound data (on a Linux system) you need to introduce a user group that is allowed to access the sound device. In the following explanation I will assume that `/dev/dspW` is the sound device we want to use, `audio` is the name of the group that we want to grant access to the sound device and `bill` is the user id of the user who wants to use CVoiceControl.

To introduce the user group `audio` and to add the user `bill` to this group and to make sure that the new group may record from the sound device, open a console window and type (as `root`):

> `

>       adduser --group audio
>       adduser bill audio
>       chgrp audio /dev/dspW
>       chmod g+r /dev/dspW

> `

Now "ls -l /dev/dspW" should output something like

> `

>       crw-rw--w-    1 root     audio     14,   5 Jan  9 22:38 /dev/dspW

> `

Then you have to restart Windows to complete the installation ;-)

For answers to further questions concerning Linux and sound have a look at the Linux Sound-HOWTO which is available from ftp://metalab.unc.edu/pub/Linux/docs/HOWTO/Sound-HOWTO

## 4.2 Recognizer Details

- Isolated word recognition
- Template matching using non-linear time normalization (DTW)
  - DTW, using symmetric Sahoe&Chiba warping function
  - Starting corner sloppiness: 4
  - Parallel warping planes and Branch&Bound recognition
  - Nearest neighbour wins template matching (roughly)
- Preprocessing:
  - Hamming window
  - Fast Hartley Transform (FFT) to calculate power spectrum
  - (log) melscale coefficients
  - Channel mean substraction
  - IMPORTANT: Amplitude normalization is not yet performed on the wave data so it is important to keep about the same distance between microphone and mouth and to speak at about a constant loudness level

Next Previous Contents