标签归档:esound

Ubuntu 10.04安装Reciteword支持Alsa发声

在Ubuntu上安装Reciteword的时候我们可能都曾遇到过esound发声的问题,之前有过一篇文章介绍了如何解决esound initialization failed的问题,文章地址在这里

因为Ubuntu默认的软件混音选择的是alsa而不是esound,所以会有一些问题,在上面提到的那篇文章中也列出来了一些。然后看到网上有很多人提到一个reciteword-alsa版本,那就下下来试试看吧。

下载地址在这里,将reciteword-alsa.tar.gz下载下来,使用tar -xzvf reciteword-alsa.tar.gz解压到当前目录。

之后就是准备reciteword的源码了,源码可以从这里找到下载,普通的esound版本编译方法在这里有非常详尽的wiki页面,当然我们并不需要esound的版本,所以接下来的事情才是我们想要做的。

1. 解压下下来的源码到当前路径,tar -xjvf reciteword-0.8.4.tar.bz2

2. 进入解压后的目录,cd reciteword-0.8.4

3. 将alsa版本的补丁打上,patch -p1 -i ../reciteword-alsa/reciteword-alsa.patch

4. 开始编译,./configure –prefix=/usr/

5. make

6. sudo make install

7. 接下来的所有步骤就是下载书本和字典,所有下载均可以从这个页面下载到,下载的都是tar.bz2包。以下步骤参考了这个wiki页面

课本的安装:

tar -xjvf reciteword-books-*.tar.bz2  && sudo mv books /usr/share/reciteword/
词典的安装:

tar -xjvf reciteword-dicts-*.tar.bz2  && sudo mv dicts /usr/share/reciteword/
皮肤的安装:

tar -xjvf reciteword-skins-rw-*.tar.bz2  && sudo mv rw /usr/share/reciteword/skins
真人声音的安装:

tar -xjvf WyabdcRealPeopleTTS.tar.bz2  && sudo mv WyabdcRealPeopleTTS /usr/share

这样我们就完成了所有的安装程序,到Applications->Education->Reciteword中启动程序吧。上个效果图。

Ubuntu 10.04 Reciteword发声问题解决方法

之前在学校时候学习使用Ubuntu时使用过一个非常优秀的软件那就是Reciteword,俗称黑客背单词,认识这款软件是因为自己在Ubuntu下使用的字典软件是stardict,这两款软件的作者是同一个,作者名字叫胡正

最近一段时间里工作上和家里都使用的Ubuntu,又想起了这款优秀的软件,那么好吧,我们这就开始安装吧,这里有一篇文章非常的详细,你只要按照这个流程安装,肯定成功。

但是在安装之后我们很有可能碰到不能正常发声的问题,那么我们如何解决这个问题呢?我在网上搜了一些相关的资料,自己一一尝试验证之后,发现这个法子很不错。

那就是在启动reciteword命令前,加上esound -noterminate -nobeeps &,也就是在终端中启动reciteword的命令应该是这样的esound -noterminate -nobeeps & reciteword,但是这样肯定是不方便的。那么我们可以这么做,也就是通过编辑/etc/esound/esd.conf文件来达成目的

例如我的/etc/esound/esd.conf文件内容如下:

[esd]

# autospawning is not recommended, since it can’t really be done
# right.  If you want your login session to be using a sound daemon,
# you should start it from the session controller, not some random
# app inside.
auto_spawn=1
spawn_options=-noterminate -nobeeps -as 2
spawn_wait_ms=100
# default options are used in spawned and non-spawned mode
default_options=2

修改该文件之后再次启动reciteword,就能正常发声了,但是还有一个问题,那就是你单击软件界面中的朗读按钮,软件并不会正常的朗读单词,在测试的过程中,如果你输入单词的速度很快的话,软件发出的那种老式打字机金属敲击的声音并不能跟上你的节奏,我想应该是esound自动多音频流播放的问题吧,解决方案参考了这篇文章这篇文章。

听说有alsa版本的,哪天试一试看看如何,嘿嘿,希望本文能对你有所帮助。

==========================更新=============================

在Ubuntu 10.04下编译可能会出现一个错误

bookfile.cpp: In function ‘gchar* rw_book_get_value(const gchar*, gchar*, gint)’:

在bookfile.cpp文件中找到原来的 tmp1 = strstr (str1, str2);

改为    tmp1 = (gchar*)strstr (str1, str2);