Rockbox mail archiveSubject: Re: Voice creation
Re: Voice creation
From: James Teh <jamie_at_jantrid.net>
Date: Fri, 10 Aug 2007 06:55:27 +1000
> Why can't the make voice VBS script be modified? It's such a simple and
> fast solution that works.
Unfortunately, the system is no longer as simple as it used to be due to
changes in requirements which have been explained already (target
specific voice files, etc.). To explain it in basic terms, a file is now
generated which includes a list of all the 'features' supported by a
given target and that file is then used to determine which voice strings
need to be included for that target. For example, a player which does
not have a radio needn't have voice strings included for radio features.
This list is generated using the source code based on the target
specified by the user.
One solution which has been suggested might be to include features.txt
inside the binary builds for each target. Unfortunately, this means that
a voice builder must download each binary build in order to extract
features.txt to make a voice file for it. For voice builders who build
files for multiple targets, this is pretty tricky.
Another possibility might be to adapt genlang to generate .lang files in
the old format. The build scripts could then upload a stack of lang
files somewhere for people to download. Unfortunately, this would be a
hell of a lot of lang files if we want to consider languages other than
Also, voicefont now needs to know the target for which a voice file is
being built, as the binary format is now different on the old Archos
targets; in technical terms, Archos requires that the files are
bitswapped. makevoices.vbs would thus need to be modified to accept the
target as a parameter or the like.
While I do understand some of the frustration expressed here, being
blind myself, you must also keep in mind that such changes are sometimes
necessary to ensure acceptable progression. Target specific voice files
are a nuisance in some ways because of the difficulty in building for
each target separately, but remember that Rockbox must still support the
Archos targets, which cannot handle voice files larger than a certain
size (2 mb?). The reality is that voice files are large in terms of RAM
on portable audio players and ways need to be found to minimise that
As an interesting sidenote, implementing a real speech synthesiser such
as eSpeak on Rockbox doesn't even solve the problem because the Archos
targets are then left out. :) Even if other targets could run eSpeak, I
am almost certain an SH-based Archos could not.
-- James Teh Email: jamie_at_jantrid.net WWW: http://www.jantrid.net/ MSN Messenger: jamie_at_jantrid.net Jabber: jteh_at_jabber.org Yahoo: jcs_tehReceived on 2007-08-09