Installing LumenVox Speech
Recognition Engine
- Purchase a LumenVox license through the WWW order form.
You can start by purchasing a one line license for $50.
- You will receive an email with login and password which can be
used to download LumenVox components.
- Download Engine, MRCPv2, License Server and Tuner components
from www.lumenvox.com/Customers
- Install all 4 components.
- Start the License manager.
- Press "Connect" button to connect the license manager to the
license server on your machine.
- Press the "Create Server ID file" button and save the Info.bts
file to somewhere you remember.
- Press the "Connect to Website button".
- In the launched LumenVox website go to the Account Information
section.
- Click on the License Upload link - on the right hand side of
the Deployments section.
- Fill out the Computer text box and browse to find the created
Info.bts file.
- Press upload.
- Click on the License Download link - on the right hand side of
the Deployments section where the License Upload link used to
be.
- Scroll to bottom and press I agree.
- Soon you will be prompted to download and save the save the
license file
- Save the license file to somewhere you remember.
- Go to LumenVox License Administrator and click on the "Install
License" button
- Browse to the license file and select it.
- Your LumenVox license should now be installed. Click on the
"View Current licenses" button to confirm that the license is
installed.
- If you have any problems with the above the copy a save the
messages displaying in the Log Messages window and forward it to
LumenVox.
The LumenVox MRCPv2 server by default uses port 5060 to accept
incoming speech recognition requests. This is the same port used by
most VoIP/SIP based applications. When running the LumenVox MRCPv2
server you will need to ensure that no other VoIP/SIP applications
are running on the same server.
Alternatively the port can be changed to one of users choice.
The change would need to be made in LumenVox's mrcp.config file as
well as in the VoiceGuide config.xml file.
Apply the MRCPV2 patch
You will need to do the following to apply the LumenVox MRCPv2
patch:
-
Download the MRCPV2 server patch here
- Go to your Control Panel >> Administrative Tools >>
Services
- Stop "LumenVox MRCPv2 Server" service
- Go to C:\Program Files\Lumenvox\MRCPv2Server\bin
- rename MrcpV2Server.exe to MrcpV2Server.exe.bak
- Unzip the patch to this folder
- Start "LumenVox MRCPv2 Server" service
Additional Languages
If languages other then American English and American English
Digits will be used (eg: Australian or Canadian etc) then the other
used languages need to be copied from the C:\Program
Files\LumenVox\Engine\Lang\OtherLanguages directory to the C:\Program Files\LumenVox\Engine\Lang directory.
Any of the languages located in
the Lang
directory can then be specified in
the SRGS grammars.
Additional Configuration
LumenVox MRCPv2 Server does not
stream audio into it's speech recognition engine live. Instead, it
buffers it, and sends it all in at once, after it has detected end
of speech. The following two settings are important in regulating
the end of speech detection:
1. speech_complete_timeout
speech_complete_timeout determines the length of pause within the speech that will
then be regarded by LumenVox to indicate end of speech.
speech_complete_timeout
is best thought of as the maximum
length of pauses allowed between words.
Eg: Imagine if a user is reading
strings of digits. e.g. a telephone number: "Five-one-two [pause
for a half second] three-one-four-four" is a normal sort of
response. speech_complete_timeout controls how long we will
consider pauses versus end of speech. If we set speech_complete_timeout to 700 (which represents 700 milliseconds = 0.7
second) then the engine will accept the half a second pause in the
spoken numbers and recognize the numbers after the pause. But is
the we set speech_complete_timeout to
300 (which represents 300milliseconds = 0.3 second) then the engine
will assume that the half second pause between numbers can be
regarded as end of speech, and only the first three digits will be
recognized.
Note that setting
speech_complete_timeout
to a large value will result in the
delay of speech recognition result returned to VoiceGuide, as
LumenVox will wait for that amount of time after speech actually
ends before realizing that speech has actually ended and that the
recognition of what was spoken can begin.
2. end_of_speech_timeout
end_of_speech_timeout is the total amount of time the user can speak for. If end of
speech is not detected by this time, LumenVox will time
out.
The LumenVox MRCPv2 configuration
file can be found at C:\Program
Files\LumenVox\MRCPv2Server\config\mrcp.config
Here is an extract of the relevant
sections of the .config file:
#-----------------------------------------------------------------
# Vendor Specific parameters
#-----------------------------------------------------------------
choose_model =1
enable_lattice_scoring =1
initial_audio_time =100
wind_back_time =1000
barge_in_timeout =15000
end_of_speech_timeout =10000
snr_sensitivity_lvl =50
#-----------------------------------------------------------------
# MRCPv2 Standard parameters
#-----------------------------------------------------------------
sensitivity_lvl = 0.5
nbest_length =1
confidence_thrsld =0.45
no_input_timeout =20000
dtmf_termination_timeout =5000
recognizer_start_timers =true
recognition_timeout =20000
speech_complete_timeout =800
dtmf_inter_digit_timeout =5000
dtmf_buffer_time =5000
dtmf_term_char =#
save_waveform =false
waveform_url_location =
The MRCPv2 service needs to be
restarted after the mrcp.config file is
modified.
More information about each of the
parameters can be found in LumenVox documentation and MRCPv2
RFC
|