language pack development

8 views
Skip to first unread message

opentechgirl

unread,
Oct 17, 2009, 4:55:42 PM10/17/09
to webanywhere-dev
i have been following your development process, as I am keen to use
this great feature with spanish speaking users. I am working on
projects in Ecuador & Colombia currently which would benefit from this
immensely. Recently, a developer pointed out to me, that this reader
is also good to provide illiterate users access to the Internet, along
with seeing impaired.
if you need any assistance to test in Linux, please advise. I work
primarily with Ubuntu and Fedora.

Thanks
Darlene

Cameron Wong

unread,
Oct 19, 2009, 12:03:11 AM10/19/09
to webanyw...@googlegroups.com
Hi Darlene,

Could you help to find someone to translate the Spanish (es) locale?
There is a README file under locale directory in source code to
describe how to do it.
(http://code.google.com/p/webanywhere/source/browse/trunk/locale/README)

Have you setup the eSpeak TTS server for WA? If not, please tell me
what problems you got and I will help you to deploy it.

Thank you!

Cameron

2009/10/18 opentechgirl <opente...@gmail.com>:

Jeffrey Bigham

unread,
Oct 19, 2009, 12:08:23 AM10/19/09
to webanyw...@googlegroups.com
Hi Cameron,

I can not directly install new software on the server we have, and I could not get espeak to run from a local directory.

One of the administrators will be installing espeak on Tuesday.

Please advise if there is a way to run espeak without installing its libraries.

-Jeff
--
Jeffrey P. Bigham, Ph.D.
Assistant Professor, University of Rochester, Computer Science
Visiting Scientist, MIT CSAIL
http://www.jeffreybigham.com

Cameron Wong

unread,
Oct 19, 2009, 12:43:40 AM10/19/09
to webanyw...@googlegroups.com
Hi Jeff,

> I can not directly install new software on the server we have, and I could
> not get espeak to run from a local directory.
What did you meant "could not get espeak to run from a local
directory"? Do you mean you fail to build the binary because of some
dependencies? Have you tried to build all libraries from `ldd espeak`
in local directory?

> One of the administrators will be installing espeak on Tuesday.
Aren't things solved if it will be installed? Why do we need to worry
about how to run espeak?

> Please advise if there is a way to run espeak without installing its
> libraries.
Have you tried to set `LD_LIBRARY_PATH` to the path to espeak's
library directory before run espeak? Then we don't need to install the
library but only need to have a local copy.

Cameron

Jeff Bigham

unread,
Oct 19, 2009, 10:59:09 AM10/19/09
to webanywhere-dev
You're right - it won't matter after Tuesday for us because espeak
will be installed.

I was hoping to create easy instructions for other people to install
it, but it seems quite complicated unless you're root.

I will let you know when it's up and running.

Thanks,
Jeff
> >> 2009/10/18 opentechgirl <opentechd...@gmail.com>:

Jeffrey Bigham

unread,
Oct 20, 2009, 2:59:01 PM10/20/09
to webanywhere-dev
espeak is up and running -
http://webanywhere.cs.washington.edu/cgi-bin/espeak/getsound.pl?lang=mandarin&text=%E6%95%99%E8%82%B2%E5%9F%B9%E8%AE%AD

Let me know if there's anything else you need.

-Jeff

Cameron Wong

unread,
Oct 21, 2009, 12:06:06 AM10/21/09
to webanyw...@googlegroups.com
Hi Jeff,

How about adding a parameter in URL to overwrite the voice
configuration? Something like:
http://<WA-host>/index.php?locale=<Locale>&voice=<TTS_engine_URL>

Then we can add a selection list in the index of demo page for
different languages.

If you don't mind, I will do the coding later.

Cameron

2009/10/21 Jeffrey Bigham <jeffrey...@gmail.com>:

Jeffrey Bigham

unread,
Oct 21, 2009, 5:30:00 PM10/21/09
to webanyw...@googlegroups.com
Your idea sounds good.

Eventually, we'll want to think about what makes sense in allowing users to quickly access their preferences, but this seems like a fine first step in making that possible.

-Jeff

Cameron Wong

unread,
Oct 21, 2009, 9:57:04 PM10/21/09
to webanyw...@googlegroups.com
Hi Jeff,

In the locale framework, WA can detect browser's locale and set it
automatically (unless $fix_locale is not set in config.php and there
is no locale preference in cookie). I think this can be applied to the
voice as long as we do a mapping from locale to voice.

Cameron

2009/10/22 Jeffrey Bigham <jeffrey...@gmail.com>:

Jeffrey Bigham

unread,
Oct 21, 2009, 10:28:10 PM10/21/09
to webanyw...@googlegroups.com
That sounds good.

I didn't know you could detect the locale from the browser - it sounds like this would be a good first step in bootstrapping reasonable preferences.

-Jeff

Cameron Wong

unread,
Oct 25, 2009, 1:01:57 PM10/25/09
to webanyw...@googlegroups.com
I've submit some code to add the function of setting voice according
to locale. Currently, German(de), French(fr), Chinese(zh_CN) and
English(en) are supported. To support a new language, we just need to
add one line in config.php.
$voices["fr"] =
'http://webanywhere.cs.washington.edu/cgi-bin/espeak/getsound.pl?lang=fr&text=$text$';

To test this new function, please try opening
"http://<WA-host>/?locale=fr". (French locale has not been translated,
but we can hear all words will be spoken in French) If locale is not
specified, the browser's locale will be used.

Chinese are spoken out one character by one character in current WA
model, I need some time to improve it. (It seems that I have done some
dirty things to WA before. I can't remember clearly. I will find it
out later)

Jeffrey Bigham

unread,
Oct 25, 2009, 2:49:41 PM10/25/09
to webanyw...@googlegroups.com
Great - thanks for submitting these changes.

The code relevant to speaking Chinese a character at time is in scripts/sound.js, specifically function splitSoundsByBoundary.

Thanks again for your great work.

To add the localized strings for new languages, do we simply replicate the structure of the existing folders under locale/X ?

Thanks,
Jeff

Cameron Wong

unread,
Oct 25, 2009, 9:53:31 PM10/25/09
to webanyw...@googlegroups.com
> Thanks again for your great work.
Not at all :-)

> To add the localized strings for new languages, do we simply replicate the
> structure of the existing folders under locale/X ?
Yes. You can refer to locale/README.

Cameron Wong

unread,
Oct 31, 2009, 1:01:35 PM10/31/09
to webanyw...@googlegroups.com
Hi Jeff,

I've submit code to fix Chinese boundary splitting function and
configure all languages that eSpeak supports in config.php.

One question: In sound.js, sound is splited by following regular
expression. Why are there 6 "a" at the beginning?
boundarySplitterRegExp:
/aaaaaa[\.!\?:;\s]*(\s+\(|\s+\-\s+|[\.!\?:;\)]\s+)+[\.!\?:;\s]*/,

Is it a mistake?

Thanks!

Cameron

2009/10/26 Jeffrey Bigham <jeffrey...@gmail.com>:
Reply all
Reply to author
Forward
0 new messages