I have trained a small vocabulary acoustic model using SphinxTrain and converted the files to sphinx2 format.
When I run sphinx2-continuous ( -verbose 9) I get messages at startup from search.c when creating search tree "0 root, 0 non-root, 60 single phone words". And when decoding, "ERROR, failed to terminate in final state", "EMPTY BPTABLE".
Also, at startup, it says it's byte reversing the files cep.256.vec etc. The values in these files do appear to be stored in big-endian format even though this is a little-endian machine.
Can anyone suggest what the problem is?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Anonymous
-
2004-11-12
The SphinxTrain programs write binary files such as the codebook files that you cited in a format that enables Sphinx to read them in with correct endianness (reversing bytes if needed). The big-endian files (even on a little-endian machine) and subsequent byte-reversing is consistent with what I've observed, and I don't think that's your problem.
I'm much more suspicious about the "60 single phone words" message. I no longer have Sphinx2 to look at, but I can at least suggest that you focus on that -- on the dictionary that you're loading at runtime and on the acoustic model.
cheers,
jerry
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I have trained a small vocabulary acoustic model using SphinxTrain and converted the files to sphinx2 format.
When I run sphinx2-continuous ( -verbose 9) I get messages at startup from search.c when creating search tree "0 root, 0 non-root, 60 single phone words". And when decoding, "ERROR, failed to terminate in final state", "EMPTY BPTABLE".
Also, at startup, it says it's byte reversing the files cep.256.vec etc. The values in these files do appear to be stored in big-endian format even though this is a little-endian machine.
Can anyone suggest what the problem is?
The SphinxTrain programs write binary files such as the codebook files that you cited in a format that enables Sphinx to read them in with correct endianness (reversing bytes if needed). The big-endian files (even on a little-endian machine) and subsequent byte-reversing is consistent with what I've observed, and I don't think that's your problem.
I'm much more suspicious about the "60 single phone words" message. I no longer have Sphinx2 to look at, but I can at least suggest that you focus on that -- on the dictionary that you're loading at runtime and on the acoustic model.
cheers,
jerry