【语音识别-常见问答】汇总帖
周俊316 发布于2017-11-16 20:42 浏览:21495 回复:109
5
收藏
最后编辑于2019-10-08

语音识别
Q:语音合成、语音识别接口每天调用限额是多少?默认QPS是多少?如何申请提高配额?
A:语音合成服务默认提供100QPS,服务接口每天不限制调用量。语音识别服务默认提供10QPS,服务接口每天不限制调用量。如需要的QPS大于默认额度,需申请提高配额,请登录控制台,点击百度语音,选择应用列表,选择对应应用,查看详情,点击申请提高配额,一般会在2个工作日内完成审核,审核通过后,将可使用提额后的QPS额度。

Q:控制台--语音应用详情页高级设置,语音识别词库设置、语义解析设置有什么注意事项?
A: 语音识别词库设置,适用于在线语音识别,目前只在搜索模型下生效(API和SDK均支持)。上传词库中的词或句子,在单说的情况下,识别率会高
语义解析设置,覆盖天气、日历、航班等常见领域的语义库,可以有效识别用户意图,适用于相关领域的问答场景;目前只适用于语音识别SDK3.0以下版本设置。3.0以上版本,默认开启全部领域无需设置,且在此处的设置无效。

Q:语音识别REST API支持的音频格式、采样率有哪些?
A:原始 PCM 的录音参数必须符合16k 采样率、16bit 位深、单声道,支持的格式有:pcm(不压缩)、wav(不压缩,pcm编码)、amr(压缩格式)。

Q:语音识别 REST API 最长支持多长的录音?
A: 最长支持60s的录音文件。对文件大小没有限制,只对时长有限制。

Q:语音识别SDK支持的音频格式、采样率有哪些?
A:Android SDK:支持Android 2.3及以上系统,支持ARM\X86架构。安装包最小增加200k,支持16k采样率,pcm格式。

iOS SDK:支持iOS 5.0及以上系统,支持ARM-v7\ARM-v7s\ARM64\i386\x86_64架构。安装包最小增加400k,支持16k采样率,pcm格式。

Q:什么是语音识别REST API?有什么注意事项?
A:语音识别全平台REST API,采用http方式请求,可适用于任何平台的语音识别。使用REST API,录音、压缩及上传模块需要自行开发。且REST API语音识别暂时不支持语义解析。

Q:百度语音是否单独提供录音功能,以及语音通讯功能?
A:不单独提供独立录音的功能,目前识别SDK包含语音输入和识别功能。语音通讯功能需开发者自行搭建。

Q:语音服务是免费的?还是需要付费
A: 目前语音基础服务(语音识别、语音合成、语音唤醒)全部免费。

Q:语音识别和合成支持什么语言?
A: 语音识别支持:普通话、四川话、粤语、英语

语音合成支持:中英文混合

Q:我使用SDK后,代码出错,不能正常运行怎么办?
A: 您好,请您先测试官方demo,测试通demo,再添加您自己的代码,基本都是可以使用的了。如果还是有问题,可以在AI社区讨论,我们进一步查看原因。

Q:我想提高一些词的识别准确率,有什么办法?
A: 您好,您可以自行上传词库,训练专属识别模型。 入口是:控制台--语音应用详情页高级设置,语音识别词库设置。

Q:语音识别REST API和SDK的区别是什么?
A: REST API:开发者上传录音——百度语音进行识别——识别结果返回开发者;SDK:百度语音提供从录音到识别结果返回的整体解决方案

Q:语音识别通过哪个接口获取音频信息?
A: Android SDK:当VoiceClientStatusChangeListener.onClientStatusChange(int status, Object obj) 的status是VoiceRecognitionClient.CLIENT_STATUS_AUDIO_DATA时,obj为byte[]音频数据;

iOS SDK:MVoiceRecognitionClientDelegate的(void)VoiceRecognitionClientWorkStatus:(int) aStatus obj:(id)aObj;的aStatus是EVoiceRecognitionClientWorkStatusNewRecordData时,aObj为NSData音频数据。 数据格式均为pcm,采样率可通过VoiceRecognitionConfig.getSampleRate()/[[BDVoiceRecognitionClient sharedInstance] getCurrentSampleRate]获取,获取的音频格式是位深16bit,单声道。

Q:如何才能提高语音识别的准确率?
A:自定义语音识别设置:打开百度开放云平台,在目前创建的应用下进行自定义语音识别设置。上传识别关键词文本,保存并生效。注:只在搜索模型下生效

Q:百度语音SDK与其他百度SDK,或其他第三方SDK冲突时,如何解决?
A: 与其他百度SDK冲突一般是由于使用了相同的基础库galaxy.jar,请检查是否重复导入了该jar包;与其他第三方SDK冲突一般是由于so库的架构不统一,请保证工程libs目录下armeabi/armeabi-v7a/x86/mips目录的so库均一致,如果不能保证一致,则一般只能所有SDK仅使用armeabi架构的so库

Q:首次开启语音识别功能的延迟时间较长,需要如何调控?
A: 首次延迟时间较长一般是由于权限验证造成,可以通过预先调用接口: (int)verifyApiKey:(NSString *)apiKey withSecretKey:(NSString *)secretKey; 来进行验证。首次开启语音时就不需要再发送验证请求,从而降低语音识别启动的延迟。

Q:如何在语音识别时获取音频文件?
A: Api: cp服务器自己备存用户录音信息;Sdk: 可以通过CLIENT_STATUS_AUDIO_DATA回调,将回调对象强转成byte[]顺序写入到文件中即可得到原始的音频文件。

Q:为什么语音识别Demo的API_Key和Secret_Key是空的还能进行识别呢?我开发的应用的API_Key和Secret_Key是不是必须得填写呢?
A: SDK自带demo用的特殊的方式验证的,故可以不使用AK和SK。开发者自行开发的应用AK和SK是必须填写的,否则无法调用语音识别。

Q:【Android纯在线】如何从识别SDK中获取音频?
A:通过监听onClientStatusChange函数的CLIENT_STATUS_AUDIO_DATA消息(在一次会话中会回调多次)拼接音频,如:

class MyVoiceRecogListener implements VoiceClientStatusChangeListener{
OutputStream outFile;
@Override
public void onClientStatusChange(int status, Object obj) {
switch(status) {
... // 省略其它消息
case VoiceRecognitionClient.CLIENT_STATUS_AUDIO_DATA:
// 有音频数据输出
if (obj!= null && obj instanceof byte[]) {
// 演示如何保持PCM音频,细节请各位工程师更加实际情况优化
byte[] buf = (byte[])obj;
FileOutputStream out = new FileOutputStream("sdcard/your_file.pcm", true);
out.write(buf);
out.close();
}
break;
default:
break;
}
}


Q:【Android离在线】如何从识别SDK中获取音频?
A: 方式1:设置outfile参数可以指定语音数据的保存路径,设置方式如:

intent.putExtra("outfile", "/sdcard/your_audio.pcm");

语音数据的保存格式为PCM,播放和压缩请自行查找相关类库。

方式2:通过监听onBufferReceived(byte[] buf)回调,拼接音频实现。

收藏
点赞
5
个赞
共109条回复 最后由chrisberg923回复于2019-10-08 09:59
#110chrisberg923回复于2019-10-08 09:59:00
#109 rose20135188回复
真正的好心人,帮助他人节省查找时间,十分感谢楼主的整理。

大家分享的结果。

0
#109rose20135188回复于2019-09-30 16:41:37

真正的好心人,帮助他人节省查找时间,十分感谢楼主的整理。

0
#108chrisberg923回复于2019-08-13 10:11:28
#107 燕赵卧牛回复
您好,现在官网上下载不了安卓语音识别的sdk了,请问在哪里可以下载?

你好,我这里刚刚测试过,是可以正常下载语音识别 android sdk的,请尝试更换网络和浏览器,以及解压工具。

0
#107燕赵卧牛回复于2019-08-13 09:23:37
#106 chrisberg923回复
请先测试demo,看有无此问题。

您好,现在官网上下载不了安卓语音识别的sdk了,请问在哪里可以下载?

0
#106chrisberg923回复于2019-08-12 10:40:01
#105 沧生踏歌la回复
我为什么语音提示params.put(SpeechConstant.SOUND_START, R.raw.start_tone);  R.raw 找不到raw
展开

请先测试demo,看有无此问题。

0
#105沧生踏歌la回复于2019-08-12 09:59:05

我为什么语音提示params.put(SpeechConstant.SOUND_START, R.raw.start_tone);  R.raw 找不到raw

0
#104chrisberg923回复于2019-08-05 10:27:21
#103 wgfly回复
 我前段时间集成并测试通过了,前两天再用就不行了 params:{"origin_result":{"sn":"","error":4,"desc":"App name unknown","sub_error":4004},"error":4,"desc":"App name unknown","sub_error":4004} 测试成功后就没再动过这块的代码,我看控制台有应用并填写的包名
展开

重新获取 token ,并检查 appid ak sk

0
#103wgfly回复于2019-08-05 09:32:11

 我前段时间集成并测试通过了,前两天再用就不行了

params:{"origin_result":{"sn":"","error":4,"desc":"App name unknown","sub_error":4004},"error":4,"desc":"App name unknown","sub_error":4004}
测试成功后就没再动过这块的代码,我看控制台有应用并填写的包名

0
#102chrisberg923回复于2019-07-15 18:44:21
#101 thomson2012回复
赟发音正确(yun)文字转换后发的(bin)。发帖验证码出问题了。输入正确情况下一直提示不对
展开

文字转换后,指的是什么转换呢?

0
#101thomson2012回复于2019-07-15 17:42:37

赟发音正确(yun)文字转换后发的(bin)。发帖验证码出问题了。输入正确情况下一直提示不对

0
#100jjlkill回复于2019-07-15 17:27:53

我想问下client.setHttpProxy("proxy_host", proxy_port); // 设置http代理 client.setSocketProxy("proxy_host", proxy_port); // 设置socket代理;这两句代码的port具体指的是哪个端口?

 

0
#99chrisberg923回复于2019-07-15 16:43:30
#98 冰冰尔河回复
我要把一段音频转换成文字,怎么操作?

您好,您可以先在这里了解一下

https://ai.baidu.com/docs#/ASR-API/top

https://ai.baidu.com/docs#/Begin/top

0
#98冰冰尔河回复于2019-07-15 16:08:46

我要把一段音频转换成文字,怎么操作?

0
#97chrisberg923回复于2019-06-24 18:34:11
#96 136******14回复
请问这个长语音识别怎么加标点符号

看下文档里对于pid的介绍,部分pid是带标点符号的。

0
#96136******14回复于2019-06-24 15:18:04

请问这个长语音识别怎么加标点符号

0
#95rose20135188回复于2019-06-17 10:31:45

收藏下来备用。

0
#94crazyangwei回复于2019-06-01 00:24:00

请问android sdk 3.0.11版本,是否有eclipse的demo,或者eclipse的集成文档,目前官方的文档全是android studio的,看起来很吃力。

0
#93chrisberg923回复于2019-04-26 16:27:40
#92 下顺回复
请教下,语音识别与语音合成放在子线程可以吗

工单有回复过您了吗?如果解决了的话,可以分享一下吗?

0
#92下顺回复于2019-04-22 01:32:18

请教下,语音识别与语音合成放在子线程可以吗

0
#91下顺回复于2019-04-22 01:22:50

我也遇到类似的问题,集成了语音唤醒与语音合成, 语音合成播放后语音唤醒/识别失效 。。。。

0
TOP
切换版块