The training and test data will be recorded using the HTK tool HSLAB . This is a combined waveform recording and labelling tool. In this example HSLAB will be used just for recording, as labels already exist. However, if you do not have pre-existing training sentences (such as those from the TIMIT database) you can create them either from pre-existing text (as described above) or by labelling your training utterances using HSLAB. HSLAB is invoked by typing
HSLab noname
This will cause a window to appear with a waveform display area in the upper half and a row of buttons, including a record button in the lower half. When the name of a normal file is given as argument, HSLAB displays its contents. Here, the special file name noname indicates that new data is to be recorded. HSLAB makes no special provision for prompting the user. However, each time the record button is pressed, it writes the subsequent recording alternately to a file called noname0.wav and to a file called noname1.wav. Thus, it is simple to write a shell script which for each successive line of a prompt file, outputs the prompt, waits for either noname0.wav or noname1.wav to appear, and then renames the file to the name prepending the prompt (see Fig. 3.4).
While the prompts for training sentences already were provided for above, the prompts for test sentences need to be generated before recording them. The tool HSGEN can be used to do this by randomly traversing a word network and outputting each word encountered. For example, typing
HSGen -l -n 200 wdnet dictwould generate 200 numbered test utterances, the first few of which would look something like
1. PHONE YOUNG 2. DIAL OH SIX SEVEN SEVEN OH ZERO 3. DIAL SEVEN NINE OH OH EIGHT SEVEN NINE NINE 4. DIAL SIX NINE SIX TWO NINE FOUR ZERO NINE EIGHT 5. CALL JULIAN ODELL ... etcThese can be used to construct the a prompt script for the required test data.