

喜讯:国内、香港、海外云服务器租用特惠活动,2核/4G/10M仅需31元每月,点击抢购>>>
点击这里申请百度智能云特邀VIP帐号,立即体验语音技术产品>>>
百度智能云语音识别技术-短语音识别标准版API
在线调试
您可以在 示例代码中心 中调试该接口,可进行签名验证、查看在线调用的请求内容和返回结果、示例代码的自动生成。
调用流程
创建账号及应用: 在 ai.baidu.com 控制台中,创建应用,勾选开通 ”语音技术“-”短语音识别、短语音识别极速版“ 能力。获取AppID、API Key、Secret Key,并通过请求鉴权接口换取 token ,详细见 “接入指南”。
创建识别请求: POST 方式,音频可通过 JSON 和 RAW 两种方式提交。JSON 方式音频数据由于 base64 编码,数据会增大1/3。其他填写具体请求参数 ,详见 ”请求说明“。
短语音识别请求地址: https://vop.baidu.com/server_api
返回识别结果:识别结果会即刻返回,采用 JSON 格式封装,如果识别成功,识别结果放在 JSON 的 “result” 字段中,统一采用 utf-8 方式编码。详见 ”返回说明“。
示例Demo代码
示例代码见: https://github.com/Baidu-AIP/speech-demo
包含通过bash_shell,C,Java,Python,Php,Postman进行API请求的相关示例demo代码。
格式说明
音频格式说明
格式支持:pcm(不压缩)、wav(不压缩,pcm编码)、amr(压缩格式)、m4a(压缩格式)。推荐pcm 采样率 :16000、8000(仅支持普通话模型) 固定值。 编码:16bit 位深的单声道。
百度服务端会将非pcm格式,转为pcm格式,因此使用wav、amr、m4a会有额外的转换耗时。
m4a 格式说明
目前普通版、极速版均支持m4a格式。主要针对微信小程序的录音。
m4a 格式(AAC 编码)
仅支持单声道
采样率支持 16000、8000(仅支持普通话模型)
CBR bitrates 24000-96000,推荐 48000
仅支持 AAC-LC, 不支持 例如 HE-AAC ,LD,ELD 等
brand 仅支持 mp42:0, mini Version 0, 不支持 M4A
微信小程序录音设置,见 微信官方文档
微信小程序录音参数,请重点关注并 设置 以下必填字段:
| 属性 | 类型 | 默认值 | 必填 | 说明 |
|---|---|---|---|---|
| duration | number | 60000 | 否 | 百度语音restapi最大支持 60s,即这个值不能超过60000 |
| sampleRate | number | 16000 | 是 | 可设为16000或8000 |
| numberOfChannels | number | 1 | 是 | 比如设为1,单声道 |
| encodeBitRate | number | 48000 | 否 | 默认值即可,建议48000,可设为24000-96000。该值越大的话,生成文件越大 |
| format | string | aac | 否 | 默认值即可,只支持aac,不支持mp3 |
请求说明
语音数据上传 POST 方式有 2 种:
JSON 格式 POST 上传本地音频文件。
RAW 格式 POST 上传本地音频文件。
JSON 方式
音频文件,读取二进制内容后,进行 base64 编码后放在 speech 参数内。
音频文件的原始大小, 即二进制内容的字节数,填写 “len” 字段
由于使用 json 格式, header 为:
Content-Type:application/json
注意 由于 base64 编码后,数据会增大 1/3。
RAW方式
音频文件,读取二进制内容后,直接放在 body 中。
Content-Length 的值即为音频文件的大小。(一般代码会自动生成)。
由于使用 raw 方式, 采样率和文件格式需要填写在 Content-Type 中
Content-Type: audio/pcm;rate=16000
JSON方式上传音频
语音数据和其他参数通过标准 JSON 格式串行化 POST 上传, JSON 里包括的参数:
| 字段名 | 类型 | 可需 | 描述 |
|---|---|---|---|
| format | string | 必填 | 语音文件的格式,pcm/wav/amr/m4a。不区分大小写。推荐pcm文件 |
| rate | int | 必填 | 采样率,16000、8000,固定值 |
| channel | int | 必填 | 声道数,仅支持单声道,请填写固定值 1 |
| cuid | string | 必填 | 用户唯一标识,用来区分用户,计算UV值。建议填写能区分用户的机器 MAC 地址或 IMEI 码,长度为60字符以内。 |
| token | string | 必填 | 开放平台获取到的开发者[access_token]获取 Access Token "access_token") |
| dev_pid | int | 选填 | 不填写lan参数生效,都不填写,默认1537(普通话 输入法模型),见本节识别模型dev_pid参数 |
| lm_id | int | 选填 | 自训练平台模型id,填dev_pid = 1537生效 |
| lan | string | 选填,废弃参数 | 历史兼容参数,已不再使用 |
| speech | string | 必填 | 本地语音文件的二进制语音数据 ,需要进行base64 编码。与len参数连一起使用。 |
| len | int | 必填 | 本地语音文件的的字节数,单位字节 |
上传示例
JSON 格式 POST 上传本地文件
固定头部 header
Content-Type:application/json
请求示例
POST http://vop.baidu.com/server_api
speech 参数填写为 文件内容 base64 后的结果:
{
"format":"pcm",
"rate":16000,
"dev_pid":1537,
"channel":1,
"token":xxx,
"cuid":"baidu_workshop",
"len":4096,
"speech":"xxx", // xxx为 base64(FILE_CONTENT)
}返回示例
{"corpus_no":"6433214037620997779","err_msg":"success.","err_no":0,"result":["北京科技馆,"],"sn":"371191073711497849365"}注意事项
len 字段表示原始语音大小字节数,不是 base64 编码之后的长度。
RAW 方式上传音频
语音数据直接放在 HTTP BODY 中,控制参数以及相关统计信息通过 header 和 url 里参数传递。
推荐:TOP云智能建站优惠活动,仅880元即可搭建一个后台管理五端合一的智能网站(PC网站、手机网站、百度智能小程序、微信小程序、支付宝小程序),独享百度搜索SEO优势资源,让你的网站不仅有颜值有排面,更有排名,可以实实在在为您带来效益,请点击进入TOP云智能建站>>>,或咨询在线客服了解详情。


湘公网安备43019002001857号
备案号:
客服1