`
qdzheng
  • 浏览: 66864 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

让StarDict发出古鸽的声音

阅读更多

Linux下的词典软件当然是StarDict,功能、词库足够使用了,也有语音支持。但语音文件仅限于WAV格式。大家最常用的语音库是WyabdcRealPeopleTTS、OtdRealPeopleTTS。这两个库单词量严重不足,很多常用的词也不能发音。StarDict提供另外一套方案,即用TTS程序代替真人发音。这是没办法的办法,发音效果不是一般的差。

 

曾经由网上下载了一个据称有14万单词的库,还是有些单词不能发音。比如说,undisturbed、voluntarily,甚至有些常见的词也不能发音。

 

谷歌的在线词典还是很不错的,大多数单词都有发音。那么,在本地找不到的情况下,能不能让StarDict去下载Google在线词典的语音呢?答案是可以的。考虑:利用StarDict在找不到发音文件后启动TTS程序模拟发音的功能,让StarDict调用我们的自己的脚本。下面就是这个简单的脚本文件。

#!/bin/bash
#filename:google-voice

#下载的声音文件存放位置
VOICEPATH="/var/google-voice"
#Google在线词典的音频文件URL
VOICEURL="http://www.gstatic.cn/dictionary/static/sounds/lf/0"
#声音文件扩展名
SUFFIX="mp3"
declare -i fileExist
#子程序:下载声音文件
function downloadvoice(){
  let fileExist=0;
  wget -q -O $VOICEPATH/$1.$SUFFIX $VOICEURL/$2/$3/$4/$1%23_us_1.$SUFFIX

  if [ $? -ne 0 ]; then
     wget -q -O $VOICEPATH/$1.$SUFFIX $VOICEURL/$2/$3/$4/$1%23_gb_1.$SUFFIX 
  fi
  if [ $? -ne 0 ]; then
     rm -rf $VOICEPATH/$1.$SUFFIX
     let fileExist=1
     return 
  fi
  if [ ! -d $VOICEPATH/$2 ]; then
     mkdir -p $VOICEPATH/$2
  fi
  mv $VOICEPATH/$1.$SUFFIX $VOICEPATH/$2/$1.$SUFFIX
}


l1=`expr substr $1 1 1`
l2=`expr substr $1 1 2`
l3=`expr substr $1 1 3`
if [ `expr length "$l3"` -lt 3 ]; then
	l3="$l3"_
fi
#如果本地没有找到对应的声音文件,则去网络上下载。
if [ ! -e $VOICEPATH/$l1/$1.$SUFFIX ]; then
   downloadvoice $1 $l1 $l2 $l3
   if [ $fileExist -ne 0 ]; then
      exit 1
   fi;
fi
#本地有声音文件,则用mplayer播放。
mplayer -msglevel all=-1 -quiet $VOICEPATH/$l1/$1.$SUFFIX
 

 

使用方法

   在StarDict音效选项中,选中使用TTS程序,然后填入:/path/to/google-voice %s

   (/path/to为google-voice所在的目录)。

 

 使用上面的这个脚本,也可以解决:StarDict不能播放MP3的问题。

 

1
0
分享到:
评论

相关推荐

    stardict词库

    stardict词库

    星际译王-stardict

    包括:stardict-cdict-gb-2.4.2.tar.bz2,stardict-kdic-computer-gb-2.4.2.tar.bz2,stardict-kdic-ec-11w-2.4.2.tar.bz2,stardict-oxford-gb-2.4.2.tar.bz2,stardict-xdict-ce-gb-2.4.2.tar.bz2,stardict-sun_...

    stardict-3.03 source code

    stardict-3.03 source code

    StarDict星际译王的安装离线词典和语音库

    ubuntu下安装stardict(星际译王): sudo apt install stardict sudo apt install stardict-gtk 然后下载解压本zip包,再将其中各个bz2文件解压放置到适当共享路径上: tar -jxf stardict-xxx.tar.bz2 sudo mv ...

    stardict 3.0

    stardict 3.0 for windows

    stardict词典

    stardict词典 stardict-21shijishuangxiangcidian-2.4.2.tar.bz2

    stardict 词库

    stardict 词库stardict-ProECCE-2.4.2/ stardict-langdao-ce-gb-2.4.2/ stardict-langdao-ec-gb-2.4.2/ stardict-lazyworm-ce-2.4.2/ stardict-lazyworm-ec-2.4.2/ stardict-oxford-gb-formated-2.4.2/ stardict-...

    为Stardict添加词典

    为Stardict添加词典,个人认为ubuntu下最好用的词典平台,功能强大。转载为Stardict添加词典的介绍,图文并茂。加入了各种词典,stardict才能更好的为你服务。

    stardict 3.0 rpm包

    stardict 3.0 rpm包,适用于32位系统

    stardict词典 包括牛津 计算机词典 简明英汉袖珍词典

    Ubuntu下的翻译工具stardict的辞典,包括牛津 计算机词典 简明英汉袖珍词典,从官网上不好下载,收集到的这些打包上传到这里供大家下载。下载后解压到/usr/share/stardict/dic,重启stardict即可使用。对于stardict...

    stardict的牛津辞典安装包

    linux下好用的辞典stardict的牛津辞典安装包,只需把解压后的文件夹放入到/usr/share/stardict/dic中即可

    StarDict星际译王词库-Stardict/郎道英汉

    免费下载资源 StarDict星际译王词库 包含 英译汉词典:牛津、郎文、计算机 汉译英词典:郎文 四级六级词库

    stardict-3.0.1_amd64.deb

    debian lenny amd64平台下的stardict安装包。 不知道为什么,lenny amd64架构下没有stardict的安装包。

    Stardict词库

    1:sudo apt-get install stardict 2:全部解压到temp文件夹中 3:sudo mv temp/* /usr/share/stardict/dic 3:重启星际译王 包含的词库zh_CN 简体中文词典.html中所有汉语+英汉词库 cdict-gb dictionary(en - zh_...

    stardict字典-汉英

    星际译王字典,很好用直接解压,放在/usr/share/stardict/dict/目录下面就可以了

    懒虫 英汉stardict

    stardict 英汉 懒虫 字典 stardict 英汉 懒虫 字典 stardict 英汉 懒虫 字典

    stardict字典-oxford

    stardict字典-oxford,星际译王字典,很好用 直接解压,放在/usr/share/stardict/dict/目录下面就可以了

    stardict英汉字典合集及一键安装脚本

    stardict是linux下最好的字典,这是几个字典的压缩合集,包括牛津字典,朗道字典等,里面包含安装执行脚本,sudo ./install_dicts.sh就可以安装,stardict启动时会自动加载

    英汉汉英专业词典+_stardict

    只需把解压出来的文件全部复制到 "/usr/share/stardict/dic" 和 "~/.stardict/dic"中就可以了

    常用stardict字典

    几本常用的stardict 的词典,重装stardict直接来下载就好了~

Global site tag (gtag.js) - Google Analytics