It can be configured to use either the Google speech engine or the Microsoft speech engine. When added to a resource such as a page, it reads the contents.

There is also a lexicon to add pronunciations for words that it pronounces improperly. For example, it could possibly say I.V. for the text IV. It should, however, say 4. You could add in the lexicon IV = four and it willpronounce it properly.

A special thank you to Ryan Thomas who is the original author of this block.

Comments

Hi Nicolas. Yes, I'm curious also as I would have thought themes need to adhere to certain standards in order for core and third-party features to function properly. Either way, I've now raised the issue and will drop a reply here when I hear back from them.

Thanks Nicolas, The 500 error is an intermittent test server error.If you refresh the page some reason it disappears. I have changed the theme to “afterburner” and I still experience the same problems.

I have tested as follows
Different servers. Same problem.
Different theme. Same problem.
Different Moodle Versions. Same problem
Different Browsers FireFox, IE and Chrome. Same problem.
Different machines. Same problem

I am running out of ideas and hope that the Firebug log file will provide more clues!

So on this page, with firebug you have the request : http://smartmove.moodle.com.au/blocks/tts/app/_php/tts_config.php?courseid=3&service=google&voice=en&_=1366382325334
And it should return JSON. But if you look at the response it start with a notice:
Strict Standards: Creating default object from empty value in /home/sli/public_html/smartmove/config.php on line 5
It is generally because the config.php missed the $CFG = new stdClass();
It is because your config.php file is from an older version of moodle and of course this file is not updated when you update Moodle.
So just add this line to your config file and try again.

But I'm not sure why this error doesn't show up on your normal pages...

Hi Nicolas. Just a quick note to confirm the developers of Bootstrap will hopefully revert to the original naming of the region-main element under 2.5 (not sure bout the 2.4 version of the theme):

"The reason the div id was renamed was to avoid conflicts with Moodle's base theme CSS. The Moodle_25 branch of the bootstrap theme does not rely on base CSS anymore so I guess we could change the names back to region-main."

So, fingers crossed you don't need to spend time implementing any changes to the block in order to ensure compatibility. Btw, just to confirm I followed your suggestion and modified the selector definition and the blocks works fine now.

That’s fixed it! The plug-in is now light grey ,the spinning icon has stopped and I can now click “play”. Thank you so much for your help.

Just for clarification and reference for anyone else who experiences a problem with the plug-in being greyed out and spinning. The fix is to add $CFG = new stdClass(); to the top of the moodle/config.php file .

I now just have one further small problem. The TTS system works with Microsoft but not with Google. If I click on play with the system set to Microsoft I get some sound but it is fairly slow and stuttered. I understand that the Google TTS is smoother, so I thought that I would try that one. However I get no sound via Google
See the following pagehttp://smartmove.moodle.com.au/course/view.php?id=3

It highlights the first word but no sound and I cannot get past the first word

Apparently the Google service refuse to serve the mp3...
Can you go on github => https://github.com/oohoo/moodle-block_tts/issues/2
And follow my instructions in order to modify a file in your TTS block.
I just don't want to publish something that doesn't work on Moodle!

I have upgraded to 2.5.4 and added the oohoo plugin. I get a grayed out box and the cog wheel spins continuously. I don't have any users on my site at this time since I am testing the site. Any help with this would be great. I have read everything I can find but haven't found any solutions.

James - just to quickly note that the TTS block requires Flash support in the browser, so if you don't have that installed (or are using an iOS device) the player will be exhibit the issues you've described.