Help - Search - Members - Calendar
Full Version: Flite In Collie?
OESF Forums > Distros, Development, and Model Specific Forums > Model Specific Forums > 5x00 General discussions
doug-taylor
Hi.

I've got a 5500 running Opie under OZ 3.5.3. I'm trying to get flite (Festival-lite, the text-to-speech program) running. I have downloaded both 1.1 and 1.2, but haven't had any luck getting either one to work properly. When I run a command like

echo "hello world"|flite

all I get is a squawk, sort of like the sound I made once when I got hit by a baseball in a very bad place. :-) If I try flite on a longish text file, I just get a series of squawks.

Is there something else I need to install, like a library or a voice file? The docs seem to indicate that all I need is the flite binary. Has anyone got this working on a 5500?

Incidently, the flite_time program (which speaks the time in a Scottish accent) runs great.
jfv
A long time ago, I used flite (flite16k is the name of the binary) on my 5000D, with the Sharp ROM without any problems. Just the binary should be enough, maybe the problem is something to do with Open Zaurus.
doug-taylor
I was afraid it might be something like that. I tried using makecompat on it, but it still gives me the same squawk.
sdjf
I have flite on my Collie with Sharp ROM 2.38 and it works just fine. Ran some tests as haven't used it in a long time and the following formats all worked okay. Note that I backgrounded it so I could run lsof to see what files it was accessing while running:

# echo hello | flite
# cat myfile.txt | flite &
[1] 30187
# lsof | grep flite > lsofflite
# flite myfile.txt

Here's my output from "lsof" in case it is of interest to anyone.

CODE
flite     30187 root  cwd    DIR       31,1   48128       3523 /home/root
flite     30187 root  rtd    DIR       31,0
224         76 /
flite     30187 root  txt    REG       60,1 5906468     227630 /usr/mnt.rom/card/Flite/flite
flite     30187 root  mem    REG       31,0  105908    1293808 /lib/ld-2.2.2.so
flite     30187 root  mem    REG       31,0  163740    1922260 /lib/libm-2.2.2.so
flite     30187 root  mem    REG       31,0 1152468    1349952 /lib/libc-2.2.2.so
flite     30187 root    0r  FIFO        0,0
         588551 pipe
flite     30187 root    1u   CHR      3,176
            214 /dev/ttya0
flite     30187 root    2u   CHR      3,176
            214 /dev/ttya0
flite     30187 root    3u  unix 0xc1ce8520
         588504 socket
flite     30187 root    4u   CHR       29,0
             42 /dev/fb0
flite     30187 root    5u   CHR      2,176
            127 /dev/ptya0
flite     30187 root    6w   CHR       14,3
             38 /dev/dsp
flite     30187 root    7u   REG       31,1
   0       7076 /home/tmp/tmpfR7OuQf (deleted)
flite     30187 root    8u   REG       31,1
   0       7089 /home/tmp/tmpfyps3ql (deleted)
grep      30200 root    1w   REG       31,1
   0       6215 /home/root/lsofflite


I used it with an earbud plugged into the microphone jack. Did you also try adjusting the volume?

If you have those libraries, I could be wrong but I should think it would work as well on an Opie ROM. Do you want me to zip up my copy and put it somewhere for the heck of it?

sdjf
doug-taylor
Thanks for checking this. I have ld-2.3.3.so, not ld-2.2.2.so. Ditto with libm and libc -- they're both version 2.3.3, not 2.2.2. Maybe that's the problem. It's weird, though, that the time program works fine.

I wondered if it just needs to be recompiled for Opie . . .
sdjf
I would try symlinking first. I have written up an example of symlinks in my IPK Installation Guide:

http://www.sdjf.esmartdesign.com/ipks/install.html#depend

In your case, I would try something like:

ln -s /lib/libc-2.3.3.so /lib/libc-2.2.2.so

Try making symlinks for all 3 missing libraries. If that doesn't work you could rm the symlinks with "rm" command, do NOT use file manager as it might also remove the 2.3.3 libs as well.

You could try recompiling I suppose, but first maybe you should install those other versions of the libraries. I've had to do that with some things...have more than one version of a library.

sdjf
doug-taylor
Hmmm. I tried sym-linking and got the same result. Actually, that's kind of what I expected. If the program were looking for libs that didn't exist, I'd think it would just fail with a "library not found" message. That's not what I get; the program seems to work fine, but the output is garbled beyond recognition.

My guess is that flite calls ld-linux.so.2 (which is sym-linked to ld-2.3.3.so), libc.so.6 (which is linked to libc.2.3.3.so), and libm.so.6 (which is linked to libm.2.3.3.so). The thing to try, I suppose, is to temporarily change those links to point to the 2.2.2 versions and see what happens. Would you be able to get me copies of the 2.2.2 versions of these three libraries?
sdjf
I'll work on it...give me a few days.

sdjf
sdjf
Ugh...this may get complicated...I just ran ldd on flite:
CODE
bash# ldd /usr/sbin/flite
        libm.so.6 => /lib/libm.so.6 (0x40022000)
        libc.so.6 => /home/QtPalmtop/lib/libc.so.6 (0x40050000)
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
bash#
_

That doesn't agree with the lsof output...saga to be continued...

sdjf
doug-taylor
Hmm. Interesting.

Well, don't put yourself out too much. I can do what I want in other ways. This is just one of those "Gee, it would be even cooler if I could . . ." situations. Thanks for all your help so far.
sdjf
Coming up with the space to tar these together is a major issue so I'll try uploading here. I checked the ldd libs and they are symlinks to the 2.2.2 versions.

Here goes...you may get three attachments, otherwise, it'll be tough work.

Uh...don't see a way to upload attachments here using Lynx. If you really want it, I will go further later in the weekend. You also could check the feeds for sl5500 versions of these libs.

sdjf
doug-taylor
You don't have to go to all that trouble. I'll look around. Thanks.
doug-taylor
Problem solved!

I checked in the OZ 3.5.4 feed (one sub-level higher than my Z is at) and it has flite in it. I downloaded and installed the flite package and the two libflite packages. Now it works. Yay!
sdjf
Right on! I actually already gzipped up the libraries. Oh well. If anyone wants them and can't find them otherwise, give a yell.

sdjf
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2014 Invision Power Services, Inc.