最近业务上面有个文字转语音的想法,搜了下espeak可以实现这部分功能,搞下来试试效果!

一、源码包下载

    1、下载pa_stable_v190700_20210406.tgz

     http://www.portaudio.com/download.html

     2、下载espeak-1.48.04-source.zip

     http://espeak.sourceforge.net/download.html

      3、中文语言包

      http://espeak.sourceforge.net/data/zh_listx.zip

二、编译

      这边先直接在编译服务器上面编译测试下效果,如果效果好再通过交叉编译安装到设备上。

     1、编译portaudio

           tar -zxvf pa_stable_v190700_20210406.tgz

           ./configure --prefix=/home/build #指定install的路径

           make;make install

     2、编译espeak

           unzip espeak-1.48.04-source.zip

           cp /home/build/include/portaudio.h ./espeak-1.48.04-source/src/portaudio.h

           修改espeak-1.48.04-source/src/Makefile

                第3行:DATADIR=/home/build/espeak-data

                第5行:PREFIX=/home/build/

                第48行:LIB_AUDIO=-L$(PREFIX)/lib -lportaudio

                第94行:LIBS3=-lstdc++ $(LIB_AUDIO) -L . -lespeak

           修改src/speech.h

                第61行:#define PATH_ESPEAK_DATA “/home/build/espeak-data”

          make;make install

     3、安装中文包

          unzip zh_listx.zip

           cp zh_listx espeak-1.48.04-source/dictsource/

           cd espeak-1.48.04-source/dictsource/

           ../src/espeak --compile=zh

三、测试

       /home/build/bin/espeak -v zh "你好" -w ./hello.wav

       用播放器播放hello.wav,听到“伦敦腔”的中文,功能可用。

     

posted on 2023-05-29 19:32  沉默的思想  阅读(1684)  评论(0编辑  收藏  举报