Java phonetics or language pronunciation

I am currently doing a project for a school where I am going to make a program that teaches children to read. My main idea for the program was to come up with a sentence, and then get Windows Anna to say that. My question is for you: how can I access Winodws Anna through Java? and is there a better way to do this?

thanks

+6
source share
4 answers

If internet access to access the program is acceptable, you can use iSpeech .

You can use their APIs , but the problem is that it is limited to 200 uses / day.

iSpeech decently voices voices, usually more polished than other TTS engines that I'm tired of, like espeak or FreeTTS , because it actually pronounces words more smoothly. Of course, he can say β€œWind,” referring to air, as β€œWind,” referring to twisting, but he also speaks well.

In addition, although I had no previous experience with this, I found an article that showed how to access MS Speech from the command line (which, obviously, can be done using Java [if you don’t know how to do this here is a good article). Here is here . At the command prompt, all you do is enter "SayDynamic.exe" the text you want to say. "

* Or SayStatic, another download is available on the page.

This method seems to be better in terms of speed and does not rely on Internet access, but it definitely does NOT say things like iSpeech. I think that the ideal opportunity for your program would be to use iSpeech while working on the network and use Say * .exe offline.

The site also provides the source code for the program. As you may have noticed, this is not the voice of Microsoft Anna, but you can specify this in the source and recompile it.

I hope I helped!

+3
source

You can use the NirCmd command-line utility , which uses the text-to-speech API installed on Windows.

So, put this utility along with your java application and run it with the appropriate command line.

+1
source

You can try FreeTTS : a speech synthesizer written in java.

You might try calling the Microsoft Speech API (SAPI), but I don't know how to do this in java.

Can you tell us how you call NirCmd? Regarding NirCmd, you can create your own C # tool that will read the text. The text can be in txt, and your tool is called using the path to that txt as an argument. You can easily adapt a demo project like this: http://www.codeproject.com/Articles/19334/Text-to-Speech-using-Windows-SAPI

0
source

There is a Windows speech platform http://www.microsoft.com/en-us/download/details.aspx?id=27226

Speech runtime http://www.microsoft.com/en-us/download/details.aspx?id=27225

You can use JNA (not JNI) to interact with dll from java https://github.com/twall/jna

0
source

Source: https://habr.com/ru/post/913414/


All Articles