+ -
当前位置:首页 → 问答吧 → stardict 真人发音设置

stardict 真人发音设置

时间:2009-10-10

来源:互联网

装的是3。01的,下载了辞典发音,就是无法播放,网上说把play改成aplay,但在我这没这选项,咋办?
上传的图像
Screenshot.png (124.3 KB, 33 次查看)

作者: tufer   发布时间: 2009-10-10

恩, 我这里解决了, 和 use-flag 有关, 但好像不是 stardict 的, 而是它所依赖的包的. 刚才查了一下笔记, 解决之道没记录下来. 楼主上网看看找找吧.

把 play 改为 aplay 是 ubuntu-8.04 下的解决之道.

作者: cheneymx   发布时间: 2009-10-11

引用:
作者: tufer
装的是3。01的,下载了辞典发音,就是无法播放,网上说把play改成aplay,但在我这没这选项,咋办?
你需要esd 声音服务器。

作者: sipingal   发布时间: 2009-10-11

自己写个脚本就可以实现真人发声

代码:
sudo USE='alsa' emerge media-sound/alsa-utils app-dicts/WyabdcRealPeopleTTS
代码:
echo "
#!/bin/bash
# version:090406
# Shuge Lee <shuge.lee[at]gmail.com>

# Dependence
# media-sound/alsa-utils
# app-dicts/WyabdcRealPeopleTTS

TTS=/usr/share/WyabdcRealPeopleTTS
wav_file=`find $TTS -name $1.wav -type f`
[ "$wav_file" != "" ] && aplay $wav_file > /dev/null 2>&1 " >> /usr/bin/sound.sh

sudo chmod 755 /usr/bin/sound.sh
在终端下
代码:
sound.sh hello

作者: flyinflash   发布时间: 2009-10-11

修改了一下讓它可以連讀幾個詞、任意大小寫、簡單時態和festival fallback。
代码:
TTS=/usr/share/WyabdcRealPeopleTTS
for word in $*; do
 wav=$(find $TTS -iname ${word}.wav -type f);
 [[ -n ${wav} ]] && aplay $wav > /dev/null 2>&1 && continue;
 wav=$(find $TTS -iname ${word%s}.wav -type f);
 [[ -n ${wav} ]] && aplay $wav > /dev/null 2>&1 && continue;
 wav=$(find $TTS -iname ${word%d}.wav -type f);
 [[ -n ${wav} ]] && aplay $wav > /dev/null 2>&1 && continue;
 wav=$(find $TTS -iname ${word%ed}.wav -type f);
 [[ -n ${wav} ]] && aplay $wav > /dev/null 2>&1 && continue;

 # festival fallback
 echo ${word} | festival --tts
done

作者: mathfeel   发布时间: 2009-10-11

希望对你有用:
http://www.lslnet.com/linux/dosc1/17/linux-181970.htm
-->
作者: zhllg

USE="-gnome" emerge stardict
然后在声音命令一栏填aplay

作者: marlgl   发布时间: 2009-10-12

用朗文吧,LDOCE 5th直接有Linux和Mac版本。Linux上,没有比这更好的字典了。

作者: 至尊宝   发布时间: 2009-10-13

引用:
作者: 至尊宝
用朗文吧,LDOCE 5th直接有Linux和Mac版本。Linux上,没有比这更好的字典了。
请不要混淆学习词典和桌面词典的概念。

对于不认识的词,看朗文有时会一头雾水,因为没中文。

作者: jsun   发布时间: 2009-10-13

引用:
作者: mathfeel
修改了一下讓它可以連讀幾個詞、任意大小寫、簡單時態和festival fallback。
代码:
TTS=/usr/share/WyabdcRealPeopleTTS
for word in $*; do
 wav=$(find $TTS -iname ${word}.wav -type f);
 [[ -n ${wav} ]] && aplay $wav > /dev/null 2>&1 && continue;
 wav=$(find $TTS -iname ${word%s}.wav -type f);
 [[ -n ${wav} ]] && aplay $wav > /dev/null 2>&1 && continue;
 wav=$(find $TTS -iname ${word%d}.wav -type f);
 [[ -n ${wav} ]] && aplay $wav > /dev/null 2>&1 && continue;
 wav=$(find $TTS -iname ${word%ed}.wav -type f);
 [[ -n ${wav} ]] && aplay $wav > /dev/null 2>&1 && continue;

 # festival fallback
 echo ${word} | festival --tts
done
赞一个,哇卡卡

作者: flyinflash   发布时间: 2009-10-15