Re: [IAEP] [Bookreader] Text to Speech readers for XO

2009-11-03 Thread Sayamindu Dasgupta
The Internet Archive has started to distribute books as DAISY
(http://en.wikipedia.org/wiki/DAISY_Digital_Talking_Book), something
we should definitely take a look at. We might also consider leveraging
the GNOME accessibility framework to provide book-reading features for
Epubs and PDFs in Read - it may be tricky, but the end results would
be worth it.
Thanks,
Sayamindu


On Fri, Oct 30, 2009 at 5:34 AM, Samuel Klein meta...@gmail.com wrote:
 Bumping up this recent thread on the bookreader list about text-to-speech.
 Mike and Gregor, in case you haven't seen what's currently possible:

 I believe James S's Read Etexts uses speech-dispatcher to read selected
 text. Aleksey and others may have done further work with espeak...  I've
 included some old threads from the Sugar list this past spring below.

 SJ


 On Thu, Oct 29, Mike McCabe mcc...@archive.org wrote:

 I also think this is a great idea.  I've worked with several
 text-to-speech readers recently, as part of my effort to make the
 Internet Archive books available to print disabled people.

 They're very useful, and I think that this mode of reading could be of
 use to a very broad range of users.  I suspect we'll see more of it soon.

 I'm also curious to hear about specific experiences with
 linux-compatible free TTS, as we may be producing audio books with this
 to work with the new Library of Congress audio players.

 Best regards -
 Mike




 == [1] old note from James Simmons ==
 ( in repsponse to this speech-synthesis summer of code proposal:
 http://wiki.sugarlabs.org/go/speech-synthesis )

 Chirag,

 Since you have been working with Aleksey Lim you probably know about
 text to speech with highlighting in Read Etexts.  I wrote the original
 TTS code that used speech-dispatcher with some assistance from Hemant
 Goyal and the folks on the speech-dispatcher project.  Aleksey
 refactored my code so it could work with either speech-dispatcher or his
 own gstreamer espeak plugin.  Not only does his plugin need no
 configuration to work, it also does a LOT better in producing timely
 callbacks as it reads each word.

 As you point out in your proposal, highlighting the word as it is spoken
 is a big part of the benefit of what you're proposing.  If all you
 wanted to do was capture some highlighted text in the clipboard and have
 it spoken in a voice you can configure in a control panel, that would be
 easy, even trivial.  It's the highlighting that's difficult.  When I
 added speech to Read Etexts I deliberately tried for the simplest
 approach that would get the job done.  It reads only the current page.
 It always starts either at the first word on the page, or if speech has
 been paused, it resumes with the last word spoken.  You can't choose the
 word to start on.  The Activity itself receives the callbacks as each
 word is spoken and takes care of doing the highlight and scrolling the
 textarea so the highlighted word stays on the screen.

 If I had to write a facility that did what Read Etexts does outside of
 the Activity I wouldn't know how to do it.  It seems to me that
 highlighting is best done by the Activity itself.  I can't deny that it
 would be useful to have all this work done as you have described without
 the Activity knowing anything about it, but it doesn't seem feasible.
 You'd have to have something that could work with gtk textareas, the
 evince component Read uses, Abiword, and everything else that came along.

 Another thing you'd have to deal with is PDFs composed of scanned in
 book pages.  There are a lot of these around (the Internet Archive is
 full of them) and somehow the kid trying to select words on a scanned in
 page would have to be clued in that these words are not selectable.

 I suppose you could make an Activity that grabbed whatever text was in
 the clipboard, displayed it in a textarea, and highlighted the words in
 that textarea as it spoke them.  I'm pretty sure that wasn't what you
 had in mind.

 Splitting sentences into separate words will be a challenge.  I just use
 spaces as delimiters and filter out characters like asterisks, vertical
 bars, etc.  That works OK for English but not for other languages.  If I
 wanted Read Etexts to do highlighting on the Bhagavad-Gita in the original
 Sanskrit it wouldn't work.  Even in English I get tripped up by double
 hyphens (--).  It would be nice if Gutenberg etexts put spaces around double
 hyphens but they don't.

 It looks like you've picked a challenging project, and I would love to be
 proven wrong about everything I've mentioned here.  Good luck with this,

 James Simmons


 == 2: SynPhony and reading assistance ==

 On Tue, Feb 17, 2009 at 12:48 PM, Carol Farlow Lerche c...@msbit.com
 wrote:

 I'd like to call your attention again to SynPhony.  We are close to a base
 release (probably this week) of a 44,000 word English word database that has
 a very rich array of information helpful to the teaching of English,
 especially reading.  A 10,000 word 

Re: [IAEP] [Bookreader] Text to Speech readers for XO

2009-10-29 Thread Samuel Klein
Bumping up this recent thread on the bookreader list about text-to-speech.
Mike and Gregor, in case you haven't seen what's currently possible:

I believe James S's Read Etexts uses speech-dispatcher to read selected
text. Aleksey and others may have done further work with espeak...  I've
included some old threads from the Sugar list this past spring below.

SJ


On Thu, Oct 29, Mike McCabe mcc...@archive.org wrote:

I also think this is a great idea.  I've worked with several
text-to-speech readers recently, as part of my effort to make the
Internet Archive books available to print disabled people.

They're very useful, and I think that this mode of reading could be of
use to a very broad range of users.  I suspect we'll see more of it soon.

I'm also curious to hear about specific experiences with
linux-compatible free TTS, as we may be producing audio books with this
to work with the new Library of Congress audio players.

Best regards -
Mike




== [1] old note from James Simmons ==
( in repsponse to this speech-synthesis summer of code proposal:
http://wiki.sugarlabs.org/go/speech-synthesis )

Chirag,

Since you have been working with Aleksey Lim you probably know about
text to speech with highlighting in Read Etexts.  I wrote the original
TTS code that used speech-dispatcher with some assistance from Hemant
Goyal and the folks on the speech-dispatcher project.  Aleksey
refactored my code so it could work with either speech-dispatcher or his
own gstreamer espeak plugin.  Not only does his plugin need no
configuration to work, it also does a LOT better in producing timely
callbacks as it reads each word.

As you point out in your proposal, highlighting the word as it is spoken
is a big part of the benefit of what you're proposing.  If all you
wanted to do was capture some highlighted text in the clipboard and have
it spoken in a voice you can configure in a control panel, that would be
easy, even trivial.  It's the highlighting that's difficult.  When I
added speech to Read Etexts I deliberately tried for the simplest
approach that would get the job done.  It reads only the current page.
It always starts either at the first word on the page, or if speech has
been paused, it resumes with the last word spoken.  You can't choose the
word to start on.  The Activity itself receives the callbacks as each
word is spoken and takes care of doing the highlight and scrolling the
textarea so the highlighted word stays on the screen.

If I had to write a facility that did what Read Etexts does outside of
the Activity I wouldn't know how to do it.  It seems to me that
highlighting is best done by the Activity itself.  I can't deny that it
would be useful to have all this work done as you have described without
the Activity knowing anything about it, but it doesn't seem feasible.
You'd have to have something that could work with gtk textareas, the
evince component Read uses, Abiword, and everything else that came along.

Another thing you'd have to deal with is PDFs composed of scanned in
book pages.  There are a lot of these around (the Internet Archive is
full of them) and somehow the kid trying to select words on a scanned in
page would have to be clued in that these words are not selectable.

I suppose you could make an Activity that grabbed whatever text was in
the clipboard, displayed it in a textarea, and highlighted the words in
that textarea as it spoke them.  I'm pretty sure that wasn't what you
had in mind.

Splitting sentences into separate words will be a challenge.  I just use
spaces as delimiters and filter out characters like asterisks, vertical
bars, etc.  That works OK for English but not for other languages.  If I
wanted Read Etexts to do highlighting on the Bhagavad-Gita in the original
Sanskrit it wouldn't work.  Even in English I get tripped up by double
hyphens (--).  It would be nice if Gutenberg etexts put spaces around double
hyphens but they don't.

It looks like you've picked a challenging project, and I would love to be
proven wrong about everything I've mentioned here.  Good luck with this,

James Simmons


== 2: SynPhony and reading assistance ==

On Tue, Feb 17, 2009 at 12:48 PM, Carol Farlow Lerche c...@msbit.comwrote:

 I'd like to call your attention again to 
 SynPhonyhttp://synphony.wiki.sourceforge.net/.
 We are close to a base release (probably this week) of a 44,000 word English
 word database that has a very rich array of information helpful to the
 teaching of English, especially reading.  A 10,000 word Spanish lexicon and
 5 word German one will follow. Norbert Rennert who compiled these, would
 like very much to work with other language experts to extend this effort to
 other languages.  Some highlights of the English lexicon:  screened from the
 CMU Sphynx corpus for accessibility to children, each word entry has
 frequency data from analysis with respect to a large corpus of text merged
 in, phoneme breakdown (used by reading curricula to decide the order in
 which