当前位置: 首页 > 工具软件 > Ekho > 使用案例 >

移植中文TTS(ekho)到ARM linux开发板

长孙宜
2023-12-01

 移植ekho到arm linux,实现将中文转换为.wav格式的语音文件。

移植开源库libsndfile到arm linux开发板

1. 下载压缩源码包libsndfile-1.0.28.tar.gz到linux开发主机。

2. 新建一个文件夹libsndfile,将源码压缩包libsndfile-1.0.28.tar.gz拷贝到该目录。

3. 在libsndfile目录中新建一个目录install,后续make install会自动将生成的库和头文件等需要部署的内容拷贝到该目录,方便部署到板端。

4. 解压源码压缩包libsndfile-1.0.28.tar.gz,tar xvf libsndfile-1.0.28.tar.gz

5. 进入解压后的文件夹libsndfile-1.0.28

6. 执行./configure --prefix=/xxx/libsndfile/install --host=arm-linux --target=arm CC=/xxx/xxx/arm-linux-gnueabihf-gcc AR=/xxx/xxx/arm-linux-gnueabihf-ar --disable-external-libs

        6.1 --prefix=后面的目录是刚刚创建的install目录

        6.2 CC=是linux开发主机上安装的交叉编译工具链

        6.3 AR=是交叉编译工具链中生成静态库的工具。

7. 执行make命令

8. 执行make install命令

移植ekho到arm linux开发板

1. 下载压缩源码包ekho-6.3.tar.xz到linux开发主机。

2. 新建一个文件夹ekho,将源码压缩包ekho-6.3.tar.xz拷贝到该目录。

3. 在ekho目录中新建一个目录install,后续make install会自动将生成的库和头文件等需要部署的内容拷贝到该目录,方便部署到板端。

4. 解压源码压缩包ekho-6.3.tar.xz,tar xvf ekho-6.3.tar.xz

5. 进入解压后的文件夹ekho-6.3

6. 执行./configure --prefix=/xxx/xxx/ekho/install --host=arm-linux --target=arm CC=/xxx/xxx/arm-linux-gnueabihf-gcc  CC=/xxx/xxx/arm-linux-gnueabihf-g++ AR=/xxx/xxx/arm-linux-gnueabihf-ar LDFLAGS=-L/xxx/xxx/libsndfile/install/lib CFLAGS=-I/xxx/xxx/libsndfile/install/include CPPFLAGS=-I/xxx/xxx/libsndfile/install/include CXXFLAGS="-DNO_SSE"  --without-pulseaudio

        6.1 注意,交叉编译工具链的设置要包括ar工具。

        6.2 LDFLAGS,CFLAGS,CPPFLAGS包含的目录要包含编译libsndfile时候新建的install中的库的路径和头文件路径

7.  注释掉config.h中的#define malloc rpl_malloc

8. 执行make命令

9. 执行make install命令

10. 将ekho/install/bin目录中的ekho可执行程序拷贝到板端

11. 将ekho/install/share/ekho-data目录拷贝到板端/usr/share目录(ekho-data目录比较大,可以删掉不需要的语言库)

12. 将libsndfile/install/lib目录中的libsndfile.so.1动态库拷贝到板端/lib目录。

13. 执行./ekho -f test.txt -o test.wav即可生成语音文件。test.txt文件中写入要转换的中文,test.wav为生成的语音文件。

 类似资料: