I've been looking around and found some great C/C++/Java libraries like CMU Sphinx or Windows SAPI. I did not like SAPI, and CMU Sphinx is way too complicated... would need months to understand how it works.
So I would like to start writing my own library, even it would be crap, but to understand all the parts how to recognize a word in real-time.
Now comes in my head a question,... how to match digital input to a given word? How to make it without seconds delay?
So what I understand is that I pass the input into buffer and I have to process it. First I try to create some spectrogram (time, frequency, amplitude) and then to use Fast Fourier Transform. In the database/list I will have stored words with their phonemes.
But how do I match these phonemes with FFT output? I simply do not understand all the steps.