0
回答
移植eSpeak至android求助
注册华为云得mate10,2.9折抢先购!>>>   

我想把eSpeak用JNI的方式移植到Android,遇到一些问题想求助下。

搜索了一些资料后发现国外已经有人做过eSpeak的移植,并且发布了开源代码,叫eyes-free.

在他们的SVN里面我发现了一个native文件夹,里面的external文件夹的内容好像是我需要的东西。

down下来之后,我自己参照eSpeak的API写了一个JNI的c文件,并且在Android.mk中加入了编译动态库的代码。最后用ndk-build构建,没有报错,编译成功。

然后在android代码中调用这个动态库中的函数,结果运行时发现程序直接崩溃退出。

后来发现,在c文件中,把

int espeak_Initialize(espeak_AUDIO_OUTPUT output, int buflength, const char *path, int options);

这个函数的第一个参数换成

AUDIO_OUTPUT_PLAYBACK或者AUDIO_OUTPUT_RETRIEVAL就不会崩溃,但是却无法正确输出合成的声音。

已经纠结这个问题快一周了,一直没有很好的思路,特来求助。

举报
leo108
发帖于6年前 0回/545阅
顶部