What's New in Rev.3.3p4

Major changes has been made since Rev.3.3, mainly for improved stability and some extensions for acoustic model. The changes from Rev.3.3 are summarized as below:

New Input Recording Function by -record

Julius/Julian now can record all triggered inputs sequencially to each file. To enable, please specify a directory to store the recorded data.
 % julius .... -record directory_name
All the input to Julius and Julian, regardless of its source type (mic/file/network), will be recorded to the specified directory, with filename of the recorded system time. For example, if an input was occured on 14:53.24 on Feb. 22, 2004, the filename will be:
2004.0222.145324.raw
The format is 16bit, monoral, and the sampling rate depends on the source. The file format is big endian, raw (no header) on Julius/Julian earlier than 3.4, and versions later than 3.4 uses WAV format.

Many Fixes at A/D-in

Input delay are greatly improved, and many bugs has been fixed for the A/D-in routines from 3.3 to 3.3p4:

From 3.3 to 3.3p2: From 3.3p2 to 3.3p3: From 3.3p3 to 3.3p4:

Extensions for Acoustic Model

New Support for Context-Free Inter-Word Short Pause

On multi-path version of Julius/Julian, a special handling of inter-word short pause has been implemented.

Specifying option "-iwsp" adds a short pause HMM to all the words in dictionary to handle occasional short pause between words. The added pause HMM will be specially handled as a "Phone Context-Free" (skipped as a triphone context of surrounding phones, and the phone itself will also be unchanged by the context phones) and "Skippable" model, to capture the acoustic property of inter-word short pause, like the figure below:

The model name of the short pause to be added should be specified by option -spmodel. The default name is "sp".

Further, you can add an extra transition score to the transition of each short pause model, to control the insertion probability. The score can be specified by "-iwsppenalty". The value over zero will accelerate the insertion, and specifying value below zero will increase rendency to inhibit the insertion. The default is 0.0.

This "-iwsp" option can be applied to only multi-path version of Julius / Julian.

Direct skip transition handling

On multi-path version of Julius/Julian from 3.3p4, a direct transition from initial state to final state has been allowed. This means that Julius / Julian later than this version can deal with any transition within a model which is allowed in HTK.

There are still a few limitation: you should not define a word in which all consisting phones has direct transitions from initial state to final state. It means that the word itself can be skippable, but Julius / Julian cannot deal with such kind of word-level skipping for now. Such kind of word-level skipping should be considered in language model level, in our current implementation.

This capability of dealing direct skip transition is provided by only multi-path version of Julius / Julian.

Adding an anonymous pause word to dictionary

Specifying "-iwspword" in Julius will add a pause word entry to the dictionary. This option may be effective if you are using N-gram language model which does not consider the location of long silence or breath in a sentence. Specifying this option may improve the recognition accuracy.

The default word to be added is:

<UNK> [sp] sp sp
You can also specify the entry above by "-iwspentry", like this:
 % julius .... -iwspword -iwspentry "<UNK> [sp] sil"

Other Bug Fixes

These bugs that are not included in the above sections has been fixed.

From 3.3 to 3.3p1, From 3.3p1 to 3.3p2,

Modified Options

A list of modified and new configure options and run-time options on 3.3p4 is below:

configure opotions: Run-time options:
$Id: WhatsNew_3.3p4.html,v 1.1.1.1 2005/11/17 11:11:49 sumomo Exp $