Friday, 9 September 2022

Speech Recognition:

Added Word Lists, Word Searching, converting to a library format, and running the main speech processor in a separate thread.

Word Lists should be limited in size. As it doesn't use prediction there's no way to tell the difference between two similar homophones. "Close" and "claws" may be the same word with an accent, so it's better if only one word is known. If the list contains "close" but not "claws", vowel swapping ("aw" to "oh") can correct it. Another issue is quiet secondary syllables (eg. the "s" on the end of "close") - In this case as words are written as syllables, "clo" can be saved as "close" for a boost in detection,... In future, user filtering should trim the list beforehand. I think that's better as when you're facing a door, "open" or "close" are the two main words you're looking for, not "clone" and similar.

Word Searching uses binary searching. Each word may take one to ten spaces (high/low versions of the same consonant, accented vowels), so a list of 10 words may be 100 records.

Library format, and running the main speech processor in a separate thread.

Now using pThread to run the main processing loop in a new thread. Much more user friendly as main() now only contains new Phoneme checking (for mouth animations), new Words checking, new Phrases checking.

Speech Recognition (benchmark of "yes"/"no"): C version/Console: Redesigned Volume Normalisation to improve clarity abov...