是否有一些 SSML 标签等,从说话中删除特定的文本行。是的,我知道我可以在将它发送到语音合成器之前使用字符串函数删除它。但我的问题是,有没有办法标记或标记一些文本,使其无法播放。我正在为这个问题寻找一些基于 XML 的解决方案。
是否可以使用文本转语音引擎通过语音呼叫发送消息?就像答录机一样。
当对方接听电话时,还可以监视传出的语音呼叫以大声朗读文本吗?
谢谢!
在通过这个答案设法使TextToSpeech.setEngineByPackageName()工作之后,我现在遇到了"相反"的问题:
tts.setEngineByPackageName("com.ivona.tts.voicebeta.eng.usa.kendra");始终返回TextToSpeech.SUCCESS,即使该设备中根本没有安装该软件包.
由于设备上没有该软件包,TTS会继续使用Android的默认设置pico,这是预期的,但我不明白为什么要setEngineByPackageName()返回SUCCESS.
怎么会这样?
我有一个使用 TTS 的 android 活动,但是当我退出它时,Logcat 中出现泄漏的服务连接错误。在泄漏的服务错误上方,我得到一个声明:
stop failed: not bound to TTS engine
shutdown failed: not bound to TTS engine
Run Code Online (Sandbox Code Playgroud)
我的 onStop 和 onDestroy 看起来像这样: 编辑代码:
@Override
public void onStop() {
if (tts != null) {
tts.stop();
}
super.onStop();
}
@Override
public void onDestroy() {
if (tts != null) {
tts.shutdown();
}
super.onDestroy();
}
Run Code Online (Sandbox Code Playgroud)
我在用户按下按钮时触发 TTS(TTS 工作正常,我只是想修复服务连接错误)
if (v == speakButton && ttscrashprotect == 1) {
String text = inputText.getText().toString();
if (text != null && text.length() > 0) {
tts.speak(text, …Run Code Online (Sandbox Code Playgroud) 我正在Android中开发一个简单的应用程序,我遇到TextToSpeech的问题.
应用程序必须使用TextToSpeech发出字母和数字的字母,但是有一个问题,默认设备使用PicoTTS我希望他们被迫使用google tts引擎.
我怎么能这样做?
我的代码:
@SuppressLint("NewApi")
public class LearnAlphabet extends Activity {
Button howto, number, alphabet;
public TextToSpeech tts;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.learn_number);
ActionBar actionBar = getActionBar();
actionBar.setDisplayShowTitleEnabled(true);
actionBar.setDisplayHomeAsUpEnabled(true);
actionBar.setHomeButtonEnabled(true);
actionBar.setBackgroundDrawable(new ColorDrawable(Color.parseColor("#0170a5")));
GridView gridview = (GridView) findViewById(R.id.gridview);
gridview.setAdapter(new NumberFunction(this));
final String locale = getApplicationContext().getResources().getConfiguration().locale.getLanguage();
tts = new TextToSpeech(getApplicationContext(),
new TextToSpeech.OnInitListener() {
@Override
public void onInit(int status) {
if(status != TextToSpeech.ERROR){
switch (locale.toString()) {
case "it":
tts.setLanguage(new Locale("it_IT"));
break;
case "en":
tts.setLanguage(new Locale("en_US"));
break;
case "es":
tts.setLanguage(new …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用 tts 和 MediaPlayer 对某些文本实现暂停和播放功能。但是,我似乎无法使用 synthesizeToFile 函数创建 .wav 文件。
我已经向 xml 文件添加了所需的权限:
<uses-permission
android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
Run Code Online (Sandbox Code Playgroud)
这是我目前使用的文件创建方法:
private String envPath = Environment.getExternalStorageDirectory()
.getAbsolutePath() + "/Download";
private Uri fileUri;
public void fileCreate() {
String inputText = output.getText().toString();
HashMap<String, String> myHashRender = new HashMap<String, String>();
myHashRender.put(TextToSpeech.Engine.KEY_PARAM_UTTERANCE_ID, inputText);
Log.d(TAG, "successfully created hashmap");
String destFileName = envPath + "/" + "tts_file.wav";
int sr = tts.synthesizeToFile(inputText, myHashRender, destFileName);
Log.d(TAG, "synthesize returns = " + sr);
File fileTTS = new File(destFileName);
if (fileTTS.exists()) {
Log.d(TAG, "successfully created …Run Code Online (Sandbox Code Playgroud) 除了默认的 Anna 语音外,我还需要在 SpeechSynthesizer 中使用男声。我从 Microsoft 安装了一些文件,GetInstalledVoices() 方法说现在我有 Microsoft Anna、Microsoft Mary、Microsoft Mike 和 Sample TTS Voice。在我尝试设置语音之后
speaker.SelectVoice("Microsoft Mike");
Run Code Online (Sandbox Code Playgroud)
我的程序抛出异常:无法设置语音。没有安装匹配的语音或语音被禁用。
我应该安装什么以及如何启用迈克的声音?系统是Windows7。
我正在设置我的TextToSpeech使用特定语言(英语 - 英国),使用语言环境"en_GB".但它总是使用我的设备默认语言.有没有办法以编程方式设置它?我已下载该语言所需的文件,当我将TTS的默认语言更改为"英语 - 英国"时,它可以正常工作,但是当默认值不同时,编程方法不起作用.我已尽力浏览网页,但无法解决此问题.
String ttsEngine = "com.google.android.tts";
txt2Speech = new TextToSpeech(this, this, ttsEngine);
//Locale ttsLocale = new Locale("eng", "GBR");
txt2Speech.setLanguage(new Locale("en_GB"));
Run Code Online (Sandbox Code Playgroud)
尝试了几种方法,但都没有.我不能以编程方式设置我的TTS语言吗?
谢谢
编辑:回应'A Honey Bustard'
其他代码:
public class MainActivity extends AppCompatActivity implements TextToSpeech.OnInitListener
Run Code Online (Sandbox Code Playgroud)
我的 onInit()
public void onInit(int status) {
// TODO Auto-generated method stub
}
Run Code Online (Sandbox Code Playgroud)
我的初始化时,我也会打电话给.setLanguage()我.那是对的吗?我也只打电话一次.每次都不需要打电话吗?我也正在测试GS7onCreate()TextToSpeech
在mac 10.0.1上,HTML5语音无法在Safari上运行,
我收到错误,
TypeError:语音1('话语')到SpeechSynthesis.speak必须是SpeechSynthesisUtterance的一个实例
它适用于Chrome和Firefox,我很确定它曾用于Safari ...
var u = new SpeechSynthesisUtterance();
u.text = "hello world";
u.lang = "en";
window.speechSynthesis.speak(u);
Run Code Online (Sandbox Code Playgroud) 如何使用Google TTS从任何文本创建mp3?
1)我尝试找到google.translate API,但只查找"音频到文本","文本到音频"除外!
2)我试着找到SpeechSynthesis转换为mp3,但又找不到任何东西!
3)我只找到网站"beta.soundoftext.com",他们生成没有API接口的mp3音频文件.
所以,请有人帮助我.我搜索任何方法将文本转换为SPEECH为我的网站(专用服务器).谢谢!