Java教程

开源语音代码eSpeak1.06 的学习入门

本文主要是介绍开源语音代码eSpeak1.06 的学习入门,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

1. 前文介绍eSpeak是c语言写的一个小型的、开放源码的语音合成系统,支持多种语言,这里包括汉语,甚至是粤语。

1. 在哪下载代码  http://espeak.sourceforge.net/download.html,选择第一个,还是RISC 的?第一个吧

 

 

2. 解压到ubuntu 里面,看下代码,似乎是运行这里的,试着编译下

 

 

 

3. 看下工程的 readme 文件,

src目录里面  makefile 文件编译之后生成3个文件

1.“libspeak.so.1.xx”(其中xx是版本号)这是一个包含文本到语音引擎的共享库。文件“speak\u bin.h”中描述了它的API。

2.“espeak”二进制。这是一个小的命令行程序libespeak库。不理解

3.“speak”二进制。这是一个命令行程序,其中包含文本到语音引擎。它不使用libespeak库。

这个工程音频用的Portaudio 接口库,是一个音频库,可以支持linux,windows7。看意思是需要本电脑也有Portaudio的底层支持。

如果只生成 wav文件,不需要发声 ,注释掉speech.h中的以下行  #define  USE_PORTAUDIO

 

4. 进入src目录,直接 make ,报错

<pre><b>tr_languages.cpp:201:43:</b> <font color="#EF2929"><b>error: </b></font>narrowing conversion of ‘<b>194</b>’ from 
‘<b>int</b>’ to ‘<b>char</b>’ inside { } [<font color="#EF2929"><b>-Wnarrowing</b></font>]
 const char string_ordinal[] = {0xc2,0xba,0<font color="#EF2929"><b>}</b></font>;  // masculine ordinal character, UTF-8
                                           <font color="#EF2929"><b>^</b></font>
<b>tr_languages.cpp:201:43:</b> <font color="#EF2929"><b>error: </b></font>narrowing conversion of ‘<b>186</b>’ from ‘
<b>int</b>’ to ‘<b>char</b>’ inside { } [<font color="#EF2929"><b>-Wnarrowing</b></font>]
Makefile:102: recipe for target &apos;tr_languages.o&apos; failed
make: *** [tr_languages.o] Error 1
</pre>

只能修改文件 char 改成 ubsigned char

const unsigned char string_ordinal[] = {0xc2,0xba,0};  // masculine ordinal character, UTF-8

 

这篇关于开源语音代码eSpeak1.06 的学习入门的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!