我有一部 Android 2.3 的 HD Desire 手机。
TTS 运行良好,它可以朗读我给出的每一条文字。但是,当我使用下面的任何一行来为某些文本设置我自己的声音时,它只是忽略它并合成文本,就像该行没有写一样!
tts.addSpeech("salam", "/sdcard/salam.wav");
tts.addSpeech("shalam", "com.company.appname", R.raw.shalam);
...
tts.speak("salam", TextToSpeech.QUEUE_FLUSH, null); //<--This isn't playing my voice file.
tts.speak("shalam", TextToSpeech.QUEUE_FLUSH, null); //<--Neither is this
Run Code Online (Sandbox Code Playgroud)
我确信这两个文件都存在。这是为什么?声音文件有限制吗?例如他们的频率,或者是单声道还是立体声?
我已经检查过文档并没有看到任何相关内容。
Locale.IN我在 Android 中找不到,例如Locale.UK, Locale.US。
我在哪里可以找到它?
我正在使用一组名为(MaryTTS[实际上还有更多])的 Java 库来转换text to speech以下代码:
public class TextToSpeech {
private AudioPlayer tts;
private MaryInterface marytts;
Map<Integer,String> numbersMap = new HashMap<>();
/**
* Constructor
*/
public TextToSpeech() {
try {
marytts = new LocalMaryInterface();
// Available voices
Voice.getAvailableVoices().stream().forEach(System.out::println);
marytts.setVoice("cmu-slt-hsmm");
} catch (MaryConfigurationException ex) {
Logger.getLogger(getClass().getName()).log(Level.SEVERE, null, ex);
}
numbersMap.put(1, "one");
numbersMap.put(2, "two");
numbersMap.put(3, "three");
numbersMap.put(4, "four");
numbersMap.put(5, "five");
numbersMap.put(6, "six");
numbersMap.put(7, "seven");
numbersMap.put(8, "eight");
numbersMap.put(9, "nine");
}
public void setVoice(String voice) {
marytts.setVoice(voice);
}
/**
* Transform …Run Code Online (Sandbox Code Playgroud) 嗨,大家好
我一直在环顾四周,但似乎找不到合适的答案来集成到我的功能中。我目前基本上使用以下代码:
private void sayHello(String timeString) {
textToSpeech.speak(timeString,
TextToSpeech.QUEUE_FLUSH,
null);
}
Run Code Online (Sandbox Code Playgroud)
这段代码工作正常,但声音太大,只能通过设备本身的音量来控制。我希望能够调整/硬编码/能够使用微调器来控制 TTS 的音量,但似乎无法相应地这样做。
该功能可用于该库吗?可以实现吗?
我还尝试在我的代码中实现以下内容:
KEY_PARAM_VOLUME
Run Code Online (Sandbox Code Playgroud)
但是,我看不到任何使用此方法的示例,并且显示创建函数时出现错误。有什么建议吗?
我使用的是 Ubuntu 20.04。在 Pycharm CE 上尝试了以下代码。只是说出“Hello World”。
import pyttsx3
pyttsx3.speak("Hello World!")
Run Code Online (Sandbox Code Playgroud)
得到以下输出,显示大量错误。请帮忙!
Traceback (most recent call last):
File "/home/masrafi/PycharmProjects/audio book/venv/lib/python3.8/site-packages/pyttsx3/__init__.py", line 20, in init
eng = _activeEngines[driverName]
File "/usr/lib/python3.8/weakref.py", line 131, in __getitem__
o = self.data[key]()
KeyError: None
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/masrafi/PycharmProjects/audio book/audio book.py", line 2, in <module>
pyttsx3.speak("Hello World!")
File "/home/masrafi/PycharmProjects/audio book/venv/lib/python3.8/site-packages/pyttsx3/__init__.py", line 28, in speak
engine = init()
File "/home/masrafi/PycharmProjects/audio book/venv/lib/python3.8/site-packages/pyttsx3/__init__.py", line 22, in init
eng …Run Code Online (Sandbox Code Playgroud) 我需要以下 JavaScript 的帮助,希望有人能帮助我。文本以英语语音朗读。
\n如何在以下工作代码中更改语言和语音?由于我的java技术较差,我在网上进行了大量搜索,但找不到合适的解决方案。
\n所以,不幸的是我的编程技能不够好,所以我需要一些具体代码的帮助。谢谢。
\n<!DOCTYPE html>\n<html lang="en">\n<head>\n <title>Microsoft Cognitive Services Speech SDK JavaScript Quickstart</title>\n <meta charset="utf-8" />\n</head>\n<body>\n \n <button id="startSpeakTextAsyncButton">speak</button>\n \n <!-- Speech SDK reference sdk. -->\n <script src="microsoft.cognitiveservices.speech.sdk.bundle.js"></script>\n\n <!-- Speech SDK Authorization token -->\n <script>\n var authorizationEndpoint = "token.php";\n\n function RequestAuthorizationToken() {\n if (authorizationEndpoint) {\n var a = new XMLHttpRequest();\n a.open("GET", authorizationEndpoint);\n a.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");\n a.send("");\n a.onload = function() {\n var token = JSON.parse(atob(this.responseText.split(".")[1]));\n serviceRegion.value = token.region;\n authorizationToken = this.responseText;\n subscriptionKey.disabled = true;\n }\n }\n }\n …Run Code Online (Sandbox Code Playgroud) 问题:我在一个线程中启动MS Text-to-speech引擎,以避免DLL_attach崩溃.它开始很好,文本到语音引擎被初始化,但我不能访问线程外的ISpVoice.如何在线程外访问ISpVoice?毕竟这是一个全球变量......
你可以在这里找到XPThreads:http: //www.codeproject.com/KB/threads/XPThreads.aspx
#include <windows.h>
#include <sapi.h>
#include "XPThreads.h"
ISpVoice * pVoice = NULL;
unsigned long init_engine_thread(void* param)
{
Sleep(5000);
printf("lolthread\n");
//HRESULT hr = CoInitializeEx(NULL, COINIT_MULTITHREADED);
HRESULT hr = CoInitialize(NULL);
if(FAILED(hr) )
{
MessageBox(NULL, TEXT("Failed To Initialize"), TEXT("Error"), 0);
char buffer[2000] ;
sprintf(buffer, "An error occured: 0x%08X.\n", hr);
FILE * pFile = fopen ( "c:\\temp\\CoInitialize_dll.txt" , "w" );
fwrite (buffer , 1 , strlen(buffer) , pFile );
fclose (pFile);
}
else
{
printf("trying to create instance.\n");
//HRESULT …Run Code Online (Sandbox Code Playgroud) 我想在我的应用程序中实现这样的功能,而AFAIK,唯一的选择就是使用第三方库,所以我一直在寻找可能的选择.我发现OpenEars似乎是用于此目的的最好的免费和开源库之一,它可以脱机工作,但它只支持英语,我想提供多语言文本到语音,至少对于英语,葡萄牙语,西班牙语和法语.
我已经读过,对于多语言支持,Google TTS表现良好,但它只能在线工作......而且我不确定是否存在通话限制,是吗?我在哪里可以找到有关在iOS中使用Google TTS的详细信息?
最后,我还阅读了很多对Flite或Festival Lite的引用......但它似乎也不支持多语言.有人知道iOS的免费开源TTS库支持多种语言,最好是离线工作吗?
只是另一个问题.我正在处理的应用程序可能有商业版本,它旨在提交给Apple Store.是否可以使用任何TTS第三方库?
非常感谢
我正在进行文本到语音转换.为此,我从互联网上得到了榜样.在这里,他们设置了英语setLanguage(Locale.US);.所以,现在我想设置阿拉伯语而不是英语.但是当我将语言改为阿拉伯语时,我失败了.有人帮我改变阿拉伯语的语言
代码供参考
import java.util.Locale;
import android.app.Activity;
import android.os.Bundle;
import android.speech.tts.TextToSpeech;
import android.speech.tts.TextToSpeech.OnInitListener;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class TexttoSpeechActivity extends Activity implements OnInitListener {
/** Called when the activity is first created. */
private TextToSpeech tts;
private Button btnSpeak;
private EditText txtText;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
tts = new TextToSpeech(this, this);
btnSpeak = (Button) findViewById(R.id.btnSpeak);
txtText = (EditText) findViewById(R.id.txtText);
btnSpeak.setOnClickListener(new View.OnClickListener() {
public void onClick(View arg0) {
speakOut(); …Run Code Online (Sandbox Code Playgroud) text-to-speech ×10
android ×4
java ×2
annotations ×1
azure ×1
c++ ×1
dll ×1
ios ×1
javascript ×1
locale ×1
marytts ×1
python ×1
python-3.8 ×1
pyttsx ×1
reactjs ×1
ubuntu-20.04 ×1
voice ×1
windows ×1
xcode ×1