I am using Kaldi to train an acoustic model on my own dataset (following this tutorial by Eleanor Chodroff). I'm using Cygwin on Windows 10. When I run the script prepare_lang.sh
that should create the files for /data/lang
, it generates the following errors:
ERROR: GenericRegister::GetEntry: No such file or directory
ERROR: MutableFst::Read: Unknown FST type "vector" (arc type = "standard"): standard input
These files are not created: L.fst, L_disambig.fst, oov.int, oov.txt, topo
The complete output of the command is given below:
91767@LAPTOP-E2QH3TON /cygdrive/c/Users/91767/Desktop/kaldi/egs/mycorpus
$ utils/prepare_lang.sh data/local/lang oov data/local/ data/lang
utils/prepare_lang.sh data/local/lang oov data/local/ data/lang
Checking data/local/lang/silence_phones.txt ...
--> reading data/local/lang/silence_phones.txt
--> text seems to be UTF-8 or ASCII, checking whitespaces
--> text contains only allowed whitespaces
--> data/local/lang/silence_phones.txt is OK
Checking data/local/lang/optional_silence.txt ...
--> reading data/local/lang/optional_silence.txt
--> text seems to be UTF-8 or ASCII, checking whitespaces
--> text contains only allowed whitespaces
--> data/local/lang/optional_silence.txt is OK
Checking data/local/lang/nonsilence_phones.txt ...
--> reading data/local/lang/nonsilence_phones.txt
--> text seems to be UTF-8 or ASCII, checking whitespaces
--> text contains only allowed whitespaces
--> data/local/lang/nonsilence_phones.txt is OK
Checking disjoint: silence_phones.txt, nonsilence_phones.txt
--> disjoint property is OK.
Checking data/local/lang/lexicon.txt
--> reading data/local/lang/lexicon.txt
--> text seems to be UTF-8 or ASCII, checking whitespaces
--> text contains only allowed whitespaces
--> data/local/lang/lexicon.txt is OK
Checking data/local/lang/lexiconp.txt
--> reading data/local/lang/lexiconp.txt
--> text seems to be UTF-8 or ASCII, checking whitespaces
--> text contains only allowed whitespaces
--> data/local/lang/lexiconp.txt is OK
Checking lexicon pair data/local/lang/lexicon.txt and data/local/lang/lexiconp.txt
--> lexicon pair data/local/lang/lexicon.txt and data/local/lang/lexiconp.txt match
Checking data/local/lang/extra_questions.txt ...
--> data/local/lang/extra_questions.txt is empty (this is OK)
--> SUCCESS [validating dictionary directory data/local/lang]
ERROR: GenericRegister::GetEntry: No such file or directory
ERROR: MutableFst::Read: Unknown FST type "vector" (arc type = "standard"): standard input
I have followed the standard Kaldi installation for Cygwin from the same tutorial , and kaldi/tools
has the folder openfst-1.7.2
.
I have been googling this for a while, but can't seem to find a solution. I'm new to Kaldi and not sure about the source of the error, so I'll be happy to provide any other details that might be relevant. Could someone please help me out?
This is an old question and I'm not sure whether this would have solved the issue for OP, but I experienced the same error when trying to build Kaldi from commit 9af2c5c16 with OpenFST 1.7.2.
For whatever reason, using --enable-bin --enable-static --enable-shared=no
does not statically link binaries (fstinfo etc), but also does not build the dynamic libraries necessary for those binaries to function. I needed to remove the --enable-shared=no
switch.
On Windows, you may need to do even more work to ensure the dynamic libraries are actually loaded. Try calling fstinfo <your.fst>
on its own to see if you get the same missing library error; if so, try copying the OpenFST.dll or.lib files (I don't know what exactly gets built on Windows) to the same directory you are calling fstinfo
from.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.