我试图了解RecognitionService和RecognitionService.Callback的功能。我对这个框架还很陌生,想知道如何调用 RecognitionService 中的 onStartListening() 函数。我看到了帖子如何注册自定义语音识别服务?但我在所有主要函数中插入了日志消息,以查看何时调用哪个函数。
\n\n我还查看了 sdk 中的示例应用程序,但它在解释事情如何发生方面做得相当糟糕。我想从活动中调用 startService 。
\n\n我使用以下意图
\n\nIntent startServiceIntent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);\n startServiceIntent.setClass(this, SimpleVoiceService.class);\n\n startService(startServiceIntent);\nRun Code Online (Sandbox Code Playgroud)\n\n有人可以帮助\xc2\xa0me 使其正常工作吗?如果有人能给我指点这方面的教程,或者描述如何做到这一点的一般流程,那就太好了。
\n\n多谢。
\n我正在开发 Android 语音应用程序。我想把我的声音转换成不同的声音(女性、动物等)。我能够将我的声音转换为不同的频率,但它会改变我声音的频率。
我已经实现了这样的语音频率变化,但我不明白如何将相同频率的语音转换为其他语音。
public class AndroidAudioRecordActivity extends Activity {
Integer[] freqset = {11025, 16000, 22050, 44100};
private ArrayAdapter<Integer> adapter;
Spinner spFrequency;
Button startRec, stopRec, playBack;
Boolean recording;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
startRec = (Button)findViewById(R.id.startrec);
stopRec = (Button)findViewById(R.id.stoprec);
playBack = (Button)findViewById(R.id.playback);
startRec.setOnClickListener(startRecOnClickListener);
stopRec.setOnClickListener(stopRecOnClickListener);
playBack.setOnClickListener(playBackOnClickListener);
spFrequency = (Spinner)findViewById(R.id.frequency);
adapter = new ArrayAdapter<Integer>(this, android.R.layout.simple_spinner_item, freqset);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spFrequency.setAdapter(adapter);
}
OnClickListener startRecOnClickListener
= new OnClickListener(){
@Override
public void onClick(View …Run Code Online (Sandbox Code Playgroud) 我计划为安卓设备构建一个语音认证系统。简单的意思是不需要输入密码或绘制图案的登录屏幕,您只需要说一个词,例如“登录”,手机就会对您进行身份验证并自动解锁手机。
我最初计划在 Windows 上实现它,但我担心 Windows 可能不支持语音生物指标。
所以我的问题是 android 是否支持解锁手机的语音生物指标?是否有任何适用于 android 的语音生物指标库?
我做了谷歌搜索,但无法真正找到我想要的。我还发现了一些语音生物识别应用程序,例如 nuance,但它们的身份验证是为不同的目的而实施的。
谢谢。
我在我的 Linux 机器上正确安装了 Pocketsphinx,现在我想使用 Pocketsphinx 将音频文件 (.wave) 转换为文本,我该怎么做?有没有明确的命令和简短的命令来做到这一点?像这样的命令:
./src/programs/pocketsphinx_continuous -samprate 8000 -nfft 2048 -adcdev hw:1,0 -lm 2530.lm -dict 2530.dic myvoice.wav
Run Code Online (Sandbox Code Playgroud)
以及如何使用 python 做到这一点?提前致谢。
python speech-recognition voice-recognition cmusphinx pocketsphinx
我正在开发一个使用 android SpeechRecognizer 的应用程序。我用它来做一些简单的事情。我单击一个按钮,我的语音识别器开始监听,我从我所说的内容中得到了一些结果。
容易吧?好吧,我的问题是我需要使 SpeechRecognizer 更快。我的意思是,我单击按钮,说“Hello”,SpeechRecognizer 需要大约 3-4 秒的时间返回一个包含可能结果的数组。我的问题是:
是否可以使 SpeechRecognizer 返回结果更快?或者花更少的时间来关闭监听意图并开始处理它监听的内容?也许还有另一种方法可以做到这一点?哪个会有比这个更好的性能?
我在检查库时看到了这 3 个参数:
EXTRA_SPEECH_INPUT_MINIMUM_LENGTH_MILLIS:
我们停止听到语音后需要多长时间才能认为输入完成。
EXTRA_SPEECH_INPUT_COMPLETE_SILENCE_LENGTH_MILLIS
话语的最小长度。
EXTRA_SPEECH_INPUT_POSSIBLY_COMPLETE_SILENCE_LENGTH_MILLIS
在我们停止听到语音后认为输入可能完成所需的时间。
http://developer.android.com/intl/es/reference/android/speech/RecognizerIntent.html
我已经尝试了所有这些,但它不起作用,或者也许我没有正确使用它们。这是我的代码:
public class MainActivity extends Activity {
private static final String TIME_FORMAT = "%02d:%02d:%02d";
private final String TAG = "MainActivity";
private StartTimerButton mSpeakButton;
private CircleProgressBar mCountdownProgressBar;
private CountDownTimer mCountDownTimer;
private TextView mTimer;
private int mRunSeconds = 0;
private SpeechRecognizer mSpeechRecognizer;
private Intent mSpeechRecognizerIntent;
private boolean mIsListening = false;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mRunSeconds …Run Code Online (Sandbox Code Playgroud) 我开发了一个 Ionic 应用程序,它通过 Cordova 插件使用 Android Speech Recognition API。几天前它运行良好,但有一天它停止工作。我没有更改任何源代码。有时它会立即返回一个错误:ERROR_NO_MATCH。有时它工作了一秒钟,给了我一两个字,然后突然停止听,不管我还在和它说话。
我反映了最近几天发生的可能导致问题的事情。
有人有同样的问题吗?任何帮助表示赞赏。
编辑 08/09/2016
我尝试过的:
然而,没有一个奏效。
我正在尝试在没有意图对话框的情况下在 Android 上使用 SpeechRecognizer。它在大多数设备上都可以正常工作,但有些设备会返回录音错误(错误代码 3)并且没有关于此错误的详细信息。有什么解决方案或原因吗?
谢谢!!
目前我正在使用默认的 iOS 语音到文本转换,而没有为其添加任何代码。当用户说“五”时,显示为“五”或“5”。但是,我需要始终将其转换为“5”。我可以用 SFSpeechRecognizer 或任何其他方式来实现这一目标吗?
我的意思是,从技术角度来看。助手如何知道它应该将请求发送到 IFTTT 服务器?
当我在 Google Assistant 上创建自己的操作时,我使用了操作 SDK 并将清单文件上传到我的帐户中。该清单基本上将所有短语映射到意图,然后映射到预定义的履行服务器。我明白那部分。但问题是,我只能通过说这样的话来触发我的应用程序:“Ok Google,与我的应用程序交谈”。对于 IFTTT,这似乎没有必要。用户可以只说“Ok Google,修剪草坪”,而不是“Ok Google,告诉 IFTTT 修剪草坪”。
那么这在幕后是如何运作的呢?谷歌是否明确将一项服务列入白名单?或者我缺少什么部分?
voice voice-recognition google-assist-api ifttt conversational-ui
iOS 应用程序连接到内网并控制其他硬件。该硬件用于患者的手术。与大多数手术一样,很难通过手指和语音命令使用 iOS 应用程序,看起来是更好的选择。
我已经通过了语音识别器框架,可以在没有互联网的情况下检测单词。
但是,这些服务不能长时间运行。SpeechRecognizer 框架只允许运行一分钟,因为手术可能持续一个多小时。我想创建一种机制,我们可以在其中触发应用程序开始识别语音命令。(类似于 Android 中的 ok google),以便应用程序获得触发器来捕获语音命令。
寻找建议的读物或解决方案。
speech-recognition voice-recognition ios swift voice-control
android ×6
voice ×3
ios ×2
swift ×2
biometrics ×1
cmusphinx ×1
cordova ×1
ifttt ×1
java ×1
performance ×1
pocketsphinx ×1
python ×1