开放能力
开发平台
行业应用
生态合作
开发与教学
资讯 社区 控制台
技术能力
语音技术
图像技术
文字识别
人脸与人体识别
视频技术
AR与VR
自然语言处理
知识图谱
数据智能
场景方案
部署方案
行业应用
智能教育
智能医疗
智能零售
智能工业
企业服务
智能政务
智能农业
信息服务
智能园区
智能硬件
语音技术

    参数说明

    参数说明

    • 格式支持:pcm(不压缩)、wav(不压缩,pcm编码)、amr(压缩格式)、m4a(AAC编码);固定16k 采样率;
    • 系统支持语言种类 普通话

    识别语言及模型选择

    短语音识别极速版dev_pid 参数列表

    dev_pid 语言 模型 是否有标点 备注
    80001 普通话(纯中文识别) 极速版输入法模型 有标点 支持自定义词库

    参数简介

    目前 API 仅支持整段语音识别的模式,即需要上传完整语音文件进行识别。音频时长不超过60s。 语音数据上传POST方式有2种:

    1. json格式POST上传本地文件。
    2. raw格式POST上传本地文件。

    语音识别极速版调用地址:https://vop.baidu.com/pro_api

    JSON方式上传

    语音数据和其他参数通过标准 JSON 格式串行化 POST 上传, JSON 里包括的参数:

    字段名 类型 可需 描述
    format string 必填 语音文件的格式,pcm、wav、amr、m4a。不区分大小写。推荐pcm文件
    rate int 必填 采样率,16000,固定值
    channel int 必填 声道数,仅支持单声道,请填写固定值 1
    cuid string 必填 用户唯一标识,用来区分用户,计算UV值。建议填写能区分用户的机器 MAC 地址或 IMEI 码,长度为60字符以内。
    token string 必填 开放平台获取到的开发者[access_token]获取 Access Token "access_token")
    dev_pid int 必填 80001
    lm_id int 选填 通过语音自训练平台获取
    lan string 选填,废弃参数 历史兼容参数,请使用dev_pid。如果dev_pid填写,该参数会被覆盖。语种选择,输入法模型,默认中文(zh)。 中文=zh、粤语=ct、英文=en,不区分大小写。
    speech string 选填 本地语音文件的的二进制语音数据 ,需要进行base64 编码。与len参数连一起使用。
    len int 选填 本地语音文件的的字节数,单位字节
    • (speech, len): 开发者可以将语音文件进行base64编码,放在 “speech”字段中。并将语音数据的原始长度,填写“len”字段;

    上传示例(speech, len 参数)

    即:JSON格式POST上传本地文件

    固定头部header

    Content-Type:application/json

    请求示例

    4K大小的pcm文件(普通话录音)请求:

    POST https://vop.baidu.com/pro_api

    speech 参数填写为 文件内容base64后的结果:

    {
        "format":"pcm",
        "rate":16000,
        "dev_pid":80001,
        "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 方式上传

    即 raw格式POST上传本地文件 语音数据直接放在 HTTP BODY 中,控制参数以及相关统计信息通过 header和url里参数传递。

    Header 参数说明

    字段名 数据类型 可需 描述
    format string(格式见下面示例) 必填 语音格式,,pcm、wav、amr、m4a。不区分大小写,推荐使用pcm文件
    rate int(格式见下面示例) 必填 采样率 16000, 固定值

    语音数据的采样率和压缩格式在 HTTP-HEADER 里的Content-Type 表明,例:

    Content-Type: audio/pcm;rate=16000

    url参数说明

    字段名 可需 描述
    cuid 必填 用户唯一标识,用来区分用户,计算UV值。建议填写能区分用户的机器 MAC 地址或 IMEI 码,长度为60字符以内。
    token 必填 开放平台获取到的开发者[access_token]获取 Access Token "access_token")
    dev_pid 必填 80001
    lan 选填,废弃参数 历史兼容参数,请使用dev_pid。如果dev_pid填写,该参数会被覆盖。语种选择,输入法模型,默认中文(zh)。 中文=zh、粤语=ct、英文=en,不区分大小写。

    URL 示例:

    POST https://vop.baidu.com/pro_api?dev_pid=80001&cuid=******&token=1.a6b7dbd428f731035f771b8d********.86400.1292922000-2346678-124328

    接口返回参数

    两种上传方式都返回统一的结果,采用 JSON 格式封装,如果识别成功,识别结果放在 JSON的“result”字段中,统一采用 utf-8 方式编码。 (如果使用POST方式的(url,callback)方式,百度服务器会回调用户服务器的callback地址, 返回如下结果)

    字段名 数据类型 可需 描述
    err_no int 必填 错误码
    err_msg string 必填 错误码描述
    sn string 必填 语音数据唯一标识,系统内部产生。如果反馈及debug请提供sn。
    result array ( [string,string,…]) 选填 识别结果数组,返回1个最优候选结果。utf-8 编码。

    识别成功返回 case

    {"err_no":0,"err_msg":"success.","corpus_no":"15984125203285346378","sn":"481D633F-73BA-726F-49EF-8659ACCC2F3D","result":["北京天气"]}

    识别错误返回 case

    {"err_no":2000,"err_msg":"data empty.","sn":"481D633F-73BA-726F-49EF-8659ACCC2F3D"}

    raw 方式测试说明

    curl -i -X POST -H "Content-Type: audio/pcm;rate=16000" "http://vop.baidu.com/pro_api?dev_pid=80001&cuid=xxxxx&token=1.a6b7dbd428f731035f771b8d********.86400.1292922000-2346678-124328" --data-binary "@/home/test/test.pcm"

    错误码解释

    见错误码及常见原因部分