NAME
jcontrol
- a sample module client written in C
SYNOPSIS
jcontrol {hostname} [portnum]
DESCRIPTION
jcontrol is a simple console program to control julius running on other
host via network API. It can send command to Julius, and receive
messages from Julius.
When invoked, jcontrol tries to connect to Julius running in "module
mode" on specified hostname. After connection established, jcontrol
waits for user commands from standard input.
When user types a command to jcontrol, it will be interpreted and cor-
responding API command will be sent to Julius. When a message is
received from Julius, its content will be output to standard output.
For the details about the API, see the related documents.
OPTIONS
hostname
Host name where Julius is runnning in module mode.
portnum
port number (default: 10500)
COMMANDS
jcontrol interprets commands from standard input. Below is a list of
all commands.
Engine control
pause
Stop Julius and enter into paused status. In paused status, Julius
will not run recognition even if speech input occurs. When this
command is issued while recognition is running, Julius will stop
after the recognition has been finished.
terminate
Same as pause, but discard the current speech input when received
command in the middle of recognition process.
resume
Restart Julius that has been paused or terminated.
inputparam arg
Tell Julius how to deal with speech input in case grammar is changed
just when recognition is running. Specify one: "TERMINATE", "PAUSE"
or "WAIT".
version
Tell Julius to send version description string.
status
Tell Julius to send the system status (active / sleep)
Grammar handling
changegram prefix
Send a new grammar "prefix.dfa" and "prefix.dict", and tell julius
to use it as a new grammar. All the current grammars used in the
current process of Julius will be deleted and replaced to the
specifed grammar.
addgram prefix
Send a new grammar "prefix.dfa" and "prefix.dict" and add it to the
current grammar.
deletegram gramlist
Tell Julius to delete existing grammar. The grammar can be specified
by either prefix name or number ID. The number ID can be determined
from the message sent from Julius at each time grammar information
has changed. When want to delete more than one grammar, specify all
of them as comma-sparated.
deactivategram gramlist
Tell Julius to de-activate a specified grammar. The specified
grammar will still be kept but will not be used for recognition.
The target grammar can be specified by either prefix name or number
ID. The number ID can be determined from the message sent from
Julius at each time grammar information has changed. When want to
delete more than one grammar, specify all of them as comma-sparated.
activategram gramlist
Tell Julius to activate previously de-activated grammar. The target
grammar can be specified by either prefix name or number ID. The
number ID can be determined from the message sent from Julius at
each time grammar information has changed. When want to delete more
than one grammar, specify all of them as comma-sparated.
addword grammar_name_or_id dictfile
Add the recognition word entries in the specified dictfile to the
specified grammar on current process.
syncgram
Force synchronize grammar status, like unix command "sync".
Process management
Julius-4 supports multi-model recognition nad multi decoding. In this
case it is possible to control each recognition process, as defined by
"-SR" option, from module client.
In multi decoding mode, the module client holds "current process", and
the process commands and grammar related commands will be issued toward
the current process.
listprocess
Tell Julius to send the list of existing recognition process.
currentprocess procname
Switch the current process to the process specified by the name.
shiftprocess
Rotate the current process. At each call the current process will be
changed to the next one.
addprocess jconffile
Tell Julisu to load a new recognition process into engine. The
argument jconffile should be a jconf file that contains only one set
of LM options and one SR definition. Note that the file should be
visible on the running Julius, since jcontrol only send the path
name and Julius actually read the jconf file.
The new LM and SR process will have the name of the jconffile.
delprocess procname
Delete the specified recognition process from the engine.
deactivateprocess procname
Tell Julius to temporary stop the specified recognition process. The
stopped process will not be executed for the input until activated
again.
activateprocess procname
Tell Julius to activate the temporarily stopped process.
EXAMPLES
The dump messages from Julius are output to tty with prefix ">"
appended to each line. Julius can be started in module mode like this:
jcontrolcan be launched with the host name:
It will then receive the outputs of Julius and output the raw message
to standard out. Also, by inputting the commands above to the standard
input of jcontrol, it will be sent to Julius. See manuals for the
specification of module mode.
SEE ALSO
julius ( 1 )
COPYRIGHT
Copyright (c) 1997-2000 Information-technology Promotion Agency, Japan
Copyright (c) 1991-2008 Kawahara Lab., Kyoto University
Copyright (c) 2000-2005 Shikano Lab., Nara Institute of Science and
Technology
Copyright (c) 2005-2008 Julius project team, Nagoya Institute of
Technology
LICENSE
The same as Julius.
10/02/2008