View Single Post
Posts: 805 | Thanked: 2,861 times | Joined on Apr 2012
Originally Posted by alephito View Post
I just checked the source files.

Since I cannot develop, I do not know if I change some words in the wrong place I will break the functionality.

Would not be a good approach to extract all the words and phrases that need translation to a separate file? In this way, only that file should be touched and nothing can go wrong.

If you think this is complicated or just not viable, please tell me if, for instance, I have to translate 'remind me' in:

elif input.startswith('remind me '):
And what about:

result = result.replace("I am.","Ay am.")
This makes no sense in Spanish.

I will wait for your answer before starting to 'play' with the source.
I have been separating the strings to a separate file. The first example you give is a keyword; I will make a keywords file next. The second is just a hack to get espeak to put emphasis on the first word, and is unrelated to any processing.

to really make this powerful, some server side processing would be required i think.

a) siri works by doing a lot of voice parsing at the server side
b) noise cancellation is done heavily on the iphone itself (a built-in chip to do this?)
c) answers are provided by wolfram alpha

i tried it yesterday night and it didn't recognize a single word i said. it doesn't help that my english accent is weird.

anyway keep up the good work taixzo!!!
I've been considering this. However, the reasons I decided not to go with server-side processing is that 1) I don't have a server that could process this, and 2) this works without a internet connection.

Regarding your points:
a) Although Siri uses a server for processing, there are also several iPhone apps that process on-device (using OpenEars, which afaik is based on PocketSphinx)
b) Pocketsphinx actually has reasonably good noise cancellation according to my tests.
c) Siri uses WolframAlpha for some lookups, but not all, and theoretically this could be done via the WolframAlpha API if they provide one.

The Following 4 Users Say Thank You to taixzo For This Useful Post: