是否有一些 SSML 标签等,从说话中删除特定的文本行。是的,我知道我可以在将它发送到语音合成器之前使用字符串函数删除它。但我的问题是,有没有办法标记或标记一些文本,使其无法播放。我正在为这个问题寻找一些基于 XML 的解决方案。
是否可以使用文本转语音引擎通过语音呼叫发送消息?就像答录机一样。
当对方接听电话时,还可以监视传出的语音呼叫以大声朗读文本吗?
谢谢!
我正在尝试输出一个文本到语音的 wav 文件并使用 HTML5<audio>标签播放它。text-to-speech 方法正在输出字节,但 html5 控件没有播放它。
如果不是将字节直接流式传输到控件,我先将其保存为文件,然后将文件转换为带有文件流的字节并输出,它开始播放,但我不想每次都保存文件. 我正在使用 MVC 4。
// in a class library
public byte[] GenerateAudio(string randomText)
{
MemoryStream wavAudioStream = new MemoryStream();
SpeechSynthesizer speechEngine = new SpeechSynthesizer();
speechEngine.SetOutputToWaveStream(wavAudioStream);
speechEngine.Speak(randomText);
wavAudioStream.Flush();
Byte[] wavBytes = wavAudioStream.GetBuffer();
return wavBytes;
}
// in my controller
public ActionResult Listen()
{
return new FileContentResult(c.GenerateAudio(Session["RandomText"].ToString()), "audio/wav");
}
// in my view
<audio controls autoplay>
<source src="@Url.Content("~/Captcha/Listen")" type="audio/wav" />
Your browser does not support the <audio> element.
</audio>
Run Code Online (Sandbox Code Playgroud) 我有一个使用 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) 我正在尝试使用 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为我的网站(专用服务器).谢谢!
使用SpeechSynthesisUtterance API 时可以选择正在读取的单词吗?
我可以用来获取当前语音和光标位置的事件吗?
这是我到目前为止的内容:
var msg = new SpeechSynthesisUtterance();
var voices = window.speechSynthesis.getVoices();
msg.voice = voices[10]; // Note: some voices don't support altering params
msg.voiceURI = 'native';
msg.volume = 1; // 0 to 1
msg.rate = 1; // 0.1 to 10
msg.pitch = 2; //0 to 2
msg.text = 'Hello World';
msg.lang = 'en-US';
msg.onend = function(e) {
console.log('Finished in ' + event.elapsedTime + ' seconds.');
};
speechSynthesis.speak(msg);
Run Code Online (Sandbox Code Playgroud)
这里的例子。