[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: RFS: Sonic - a speech speed-up library for TTS engines and audio-books

On Mon, Dec 13, 2010 at 7:58 AM, Samuel Thibault <sthibault@debian.org> wrote:
> Bill Cox, le Mon 13 Dec 2010 07:23:00 -0500, a écrit :
>> Sonic has been incorporated in the most recent version of espeak,
> You mean espeak is able to automatically call sonic it after the TTS stage?
> (as an external library rather than copy/pasting code into espeak).

The author of espeak, Jonathan Duddington, copied the sonic.c and
sonic.h files from the sonic source into espeak's source, so no, it's
not linking to the sonic library.  I believe this is how each of the
three TTS engines is doing it today.  As libsonic not in Debian, they
really don't have much choice.

> I'm wondering why espeak, which knows how its own speech flow works,
> is less able to achieve speedups than sonic, which is supposed to be
> working with any TTS.

Espeak does a better job than sonic at speed up up to around 350 words
per minute, which is the range the author has tuned it well.  However,
there are certain limitations such as integer number of pitch periods
per vowel that become problematic at higher speeds, which is why
espeak has a built-in speed limit normally of 390 words per minute,
with an option to turn off most pauses in order to achieve 450 words
per minute.  Storm Dragon, a blind Vinux user, is listening at closer
to 600 words per minute with the sonic post-processing of espeak
speech, without eliminating pauses.

On the other hand, Eloquence has fewer limitations for high speed, and
is used by the blind for high productivity, up to roughly 800 or 900
words per minute so far as I know.  However, the speech generated by
speeding up default-speed Eloquence with sonic has been reported as
easier to understand at very high speeds.  Personally, I only listen
at around 600 words per minute, and I am not able to tell the
difference between native Eloquence speed-up and sonic speed-up.


Reply to: