Open topic with navigation
Custom language models can improve the accuracy of speech-to-text when the speech includes specialized words that are not in the standard vocabulary. For more information about custom language models and how to create them, refer to the IDOL Speech Server Administration Guide.
To use a custom language model when you run speech-to-text from Media Server, set the
CustomLM configuration parameter in your speech-to-text analysis task:
[TranscribeSpeech] Type=SpeechToText SpeechToTextServers=speechserver:13000 Language=ENUK Mode=relative ModeValue=0.8 FilterMusic=TRUE CustomLM=MyCustomLM:0.3:AnotherCustomLM:0.2
CustomLM parameter accepts an alternating list of language model paths and interpolation weights, with all values separated by a colon (
:). The path to a custom language model must be absolute, or relative to the IDOL Speech Server custom language model directory.
When you set the
CustomLM parameter, the language model you specify is loaded at the start of the analysis task and is used throughout. You might be able to obtain even better results by configuring your IDOL Speech Server (version 11.4 or later) to periodically update the custom language model. For example, if you are processing video from a news channel you might want your language model to include any specialized terms used in recent news stories. You could configure the Speech Server to build an up-to-date language model based on recent news stories retrieved from the web by an IDOL Web Connector. In this case, you can configure Media Server to check whether the language model has been updated.
To configure Media Server to use a custom language model and regularly check for updates, set the parameters
[TranscribeSpeech] Type=SpeechToText SpeechToTextServers=speechserver:13000 Language=ENUK Mode=relative ModeValue=0.8 FilterMusic=TRUE CustomLMBuildLabel=BreakingNews:0.1 CustomLMCheckInterval=30minutes
CustomLMBuildLabel specifies the build label of the custom language model to use (you can specify only one), and the interpolation weight to use for the model, separated by a colon (
CustomLMCheckInterval specifies how long to wait before checking for an updated language model. If the language model has been updated, Media Server restarts the task (on the Speech Server) so that speech-to-text uses the updated language model.