在具有FreeTTS的Java程序中使用MBROLA语音…
我正在用Java 开发一个简单的 文本到语音
程序。我已经决定使用FreeTTS,但是声音并不是我真正想的,我一直想使用女性声音。因此,我开始四处张望,并决定使用MBROLA更改 文本到语音 程序
的声音 。
我读到 “ FreeTTS可以使用MBROLA声音”
,但是我到处搜索,找不到清晰的指南来设置MBROLA,以及需要哪些文件。关于MBROLA的许多论坛都与FreeTTS一起工作,但是似乎也没有一个人知道自己在做什么。
所以问题:
回答上述问题:
1.需要下载哪些文件?
1.1 FreeTTS 库 (位于freetts-1.2.2-bin / freetts-1.2 / lib中) :
1.2 MBROLA zip文件夹将包括:
1.3 语音 是压缩文件夹,其中包括一个名为“ us1 ”或“ af1 ”等的单个文件夹。
2.将这些步骤包括到我的程序中的步骤?
注: 我的计算机上也安装了MBROLA
Tooklit
,但是我不确定它是否对程序有影响,但我怀疑不会。编辑:我已经测试过,看看是否需要MBROLA工具包与FreeTTS一起运行MBROLA,事实证明它不是必需的。
完成此操作后,您的mbrola文件夹应如下所示:
您可以将所有语言都放在此文件夹中,而它们只会从Java程序中调用。
3.使用MBROLA语音的简单FreeTTS示例?
我已经看到很多人得到这个错误:
System property "mbrola.base" is undefined. Will not use MBROLA voices.
该mbrola.base
指的是你的mbrola文件位于您的计算机上,并没有财产被指向到正确的位置,您将收到此错误。
对于收到此错误的NON-MBROLA用户: 如果仅使用FreeTTS,只需从引用的库中删除mbrola.jar。
要设置mbrola.base
属性,请使用:
System.setProperty("mbrola.base", "C:/Path/to/your/mbrola")
以下是在FreeTTS程序中使用MBROLA语音的简单示例。请注意,必须先完成上述步骤,然后才能起作用。如果未设置基准,则仅将语音名称更改为“
mbrola_us1”是行不通的!
package com.madmob.test;
import com.sun.speech.freetts.Voice;
import com.sun.speech.freetts.VoiceManager;
public class TestTTS {
VoiceManager freettsVM;
Voice freettsVoice;
public TestTTS(String words) {
// Most important part!
System.setProperty("mbrola.base", "C:/mbrola");
freettsVM = VoiceManager.getInstance();
// Simply change to MBROLA voice
freettsVoice = freettsVM.getVoice("mbrola_us1");
// Allocate your chosen voice
freettsVoice.allocate();
sayWords(words);
}
public void sayWords(String words) {
// Make her speak!
freettsVoice.speak(words);
}
public static void main(String [] args) {
new TestTTS("Hello there! Now M BROLA and Free T T S work together!");
}
}
MBROLA和FreeTTS现在应该一起工作!此代码是直接从我的计算机复制的,并经过测试,然后再放在此处。
MBROLA 是一个 TTS 引擎,旨在尽可能的提供各种语言的语音合成器,这些语言在其首页上都有说明。
FreeTTS是完全用JavaTM编程语言编写的语音合成系统。它基于Flite:卡内基梅隆大学开发的小型运行时语音合成引擎。 Flite源自爱丁堡大学的音乐节语音合成系统和卡耐基梅隆大学的FestVox项目。 FreeTTS的该版本包括: 核心语音合成引擎 支持多种声音: 8khz双音位,男,美国英语语音 16khz双音位,美国英语男声 16khz有限域,美国英语男声 支持从FestVox导入
FreeTTS-Android 是一个 Android 平台上的应用,用于跟 FreeTTS 服务器交互,使得应用程序具备 Text to Speech 功能。
问题内容: 我想让一个python程序通过发出哔哔声来提醒我。当前,我使用然后使用命令行语音程序说“处理完成”。我宁愿它只是一个简单的“钟”。 我知道有一个可以在 Cocoa 应用程序中使用的功能,但是我认为这与该功能没有任何关系。 我也尝试过 但这没用。 如果您无法从我的 可可粉 评论中得知,我正在使用Mac,这可能会有所帮助。 问题答案: 你有没有尝试过 : 在Mac OS 10.5上适合我
在Microsoft Windows中,声音、音乐与视讯的综合运用是一个重要的进步。对多媒体的支持起源于1991年所谓的Microsoft Windows多媒体延伸功能(Multimedia Extensions to Microsoft Windows)。1992年,Windows 3.1的发布使得对多媒体的支持成为另一类API。最近几年,CD-ROM驱动器和声卡-在90年代初期还很少见-已成为
The Audio Listener acts as a microphone-like device. It receives input from any given Audio Source in the scene and plays sounds through the computer speakers. For most applications it makes the most