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

[Emacspeak] Re: Emacspeak on Android



Hi Tim,

first, I have no experience with Android and cannot provide much help.
Hopefully others will.

One tip I would suggest is that you need to start from the speech server
side. Until you have a working speech server, you cannot have a working
Emacspeak. So first thing to determine is how to get a working TTS
engine on your phone.

Once you have that, you then need to work out how to interface with that
TTS from Emacs. Most of the current speech servers use Tcl as the
scripting language which provides the link between Emacspeak and the
TTS. However, any language could be used provided it can take input from
Emacspeak and send it to the TTS API. For example, on the mac, Python is
used.

Keep in mind that Emacspeak can interface with the speech server either
by starting a sub-process and running the interface script or it can
communicate via a TCP socket. The latter approach might be useful if you
have to run things in separate 'containers'. 

While espeak might be an option, I wonder if you would be better off
looking into how to get access to the 'native' TTS service on the
Android. I'm assuming there is one as the phone does have accessibility
support. The idea would be similar to how Emacspeak uses the voiceOver
TTS on Mac (via a python script). Failing that, I wonder if finding a
Java TTS would be better than trying to run a C based TTS in some
container. Java seems like a better choice for Android and java based
TTS engines do exist. 

I also notice that in the Emacspeak repo, in the servers directory,
there is a directory called android, which looks to have the beginnings
of some work to get a TTS running on Android. Might be worthwhile
digging around in that directory.

Once you have a working TTS and an interface to it, you can then focus
on getting Emacspeak to use that interface. Until you have the TTS and
interface, you won't get anywhere with Emacspeak. 

It is an interesting project, but will take a fair bit of work.

Tim Makarios <emacspeak.correspondence(a)freespoken.nz> writes:

> Hi,
>
> I've been trying to get Emacspeak working on my mobile phone, which is
> running LineageOS 17.1 (based on Android 10).  So far, I've tried a couple
> of things, but neither has quite worked.
>
> First, I tried installing Emacspeak on debian-buster from proot-distro in
> Termux.  Unfortunately, it's silent, and running espeak on its own results
> in a long list of errors, starting with
>> ALSA lib confmisc.c:767:(parse_card) cannot find card '0'
> so I guess Termux's proot-distro isn't giving Debian access to the audio.
>
> For another attempt, I tried building Emacspeak directly in Termux.  This
> required building TclX, too, which seemed to work, but when I tried running
> `./servers/espeak` it gave these errors
>> couldn't load file
>> "/data/data/com.termux/files/usr/lib/tclx8.4/libtclx8.4.so": dlopen
>> failed: cannot locate symbol "rresvport" referenced by
>> "/data/data/com.termux/files/usr/lib/tclx8.4/libtclx8.4.so"...
>>     while executing
>> "load /data/data/com.termux/files/usr/lib/tclx8.4/libtclx8.4.so Tclx"
>>     ("package ifneeded Tclx 8.4" script)
>>     invoked from within
>> "package require Tclx"
>>     (file "./servers/espeak" line 37)
> so I guess TclX relies on rresvport, whatever that is, and Termux doesn't
> provide it.
>
> Does anyone have any clues about how I might be able to get Emacspeak
> running on my phone?
>
> Thanks,
>
> Tim
> <><
>
> _______________________________________________
> Emacspeak mailing list -- emacspeak(a)emacspeak.org
> To unsubscribe send an email to emacspeak-leave(a)emacspeak.org


-- 
Tim Cross


|May 1995 - Last Year|Current Year|


If you have questions about this archive or had problems using it, please contact us.

Contact Info Page