呼叫中心语音-音频文件转写(8K)
更新时间:2024-08-16
接口描述
音频文件转写接口可以将大批量的音频文件异步转写为文字。适合音视频字幕生产、批量录音质检、会议内容总结、录音内容分析等场景,一般12小时内返回识别接口。
步骤: 1、根据音频url、音频格式、语言id以及采样率等参数创建音频转写任务,获取task_id参数。 2、根据task_id的数组批量查询音频转写任务结果。
在线调试&示例代码
您可以在 示例代码中心 中调试该接口,可进行签名验证、查看在线调用的请求内容和返回结果、示例代码的自动生成。
Python Demo 点击下载 (文件为.zip压缩包,若无法打开时,可尝试在文件后上增加".zip“后缀)
创建音频转写任务-请求说明
请求接口:https://aip.baidubce.com/rpc/2.0/aasr/v1/create
HTTP 方法:POST
URL参数:
参数 | 取值 |
---|---|
access_token | 通过 API Key 和 Secret Key 获取的 access_token,参考Access Token获取 |
JSON方式上传音频
Body中放置请求参数,语音数据和其他参数通过标准 JSON 格式串行化 POST 上传,包括的参数如下:
参数名 | 类型 | 是否必需 | 对外状态 | 取值范围 |
---|---|---|---|---|
speech_url | str | 是 | 音频url | 可使用百度云对象存储进行音频存储,生成云端可外网访问的url链接,音频大小不超过500MB |
format | str | 是 | 音频格式 | ["mp3", "wav", "pcm","m4a","amr"]编码 16bits 位深 |
pid | int | 是 | 语言类型 | [1134(呼叫中心中文普通话)] |
rate | int | 是 | 采样率 | [8000]固定值 |
channel | int | 否 | 声道 | [1、2] |
若音频采样率为16k,请使用音频文件转写
Body请求示例:
{
"speech_url": "https://platform.bj.bcebos.com/sdk%2Fasr%2Fasr_doc%2Fdoc_download_files%2F16k.pcm",
"format": "pcm",
"pid": 1134,
"rate": 8000,
"channel": 1 //双声道按声道识别请输入“2”
}
创建音频转写任务-返回说明
返回参数
参数名 | 类型 | 是否必需 | 对外状态 |
---|---|---|---|
log_id | int | 是 | log id |
task_id | str | 否 | 任务id |
task_status | str | 否 | 任务状态 |
error_code | int | 否 | 错误码 |
error_msg | str | 否 | 错误信息 |
Body返回示例:
# 创建成功
{
"log_id": 12345678,
"task_status": "Created",
"task_id": "234acb234acb234acb234acb" #注意保存该id,用于后续请求识别结果
}
# 创建失败,缺少参数
{
"error_code": 336203,
"error_msg": "missing param: speech_url",
"log_id": 5414433131138366128
}
注意:查询识别结果时,需要该步骤返回的task_id来进行请求。请注意保存task_id列表。
查询音频转写任务-请求说明
请求接口:https://aip.baidubce.com/rpc/2.0/aasr/v1/query
HTTP 方法:POST
URL参数:
参数 | 取值 |
---|---|
access_token | 通过API Key和Secret Key获取的access_token,参考Access Token获取 |
Body中放置请求参数,参数如下:
参数名 | 类型 | 是否必需 | 描述 | 取值范围 |
---|---|---|---|---|
task_ids | list | 是 | 任务id | task_ids为空,返回空任务结果列表;单次查询任务数不超过200个 |
请求示例:
{
"task_ids": ["234acb234acb234acb234acb", "234acb234acb234acb234acd", "234acb234acb234acb234acbe"]
}
查询音频转写任务-返回说明
返回参数:
参数名 | 类型 | 是否必需 |
---|---|---|
log_id | int | 是 |
tasks_info | list | 否 |
+task_id | str | 是 |
+task_status | str | 是 |
+task_result | dict | 否 |
++corpus_no | str | 否 |
++result | str | 否 |
++detailed_result | list | 否 |
++err_no | int | 否 |
++err_msg | str | 否 |
++sn | str | 否 |
error_code | int | 否 |
error_msg | str | 否 |
error_info | list | 否 |
返回示例:
{
"log_id": 12345678,
"tasks_info": [
{ # 转写中
"task_status": "Running"
"task_id": "234acb234acb234acb234acb",
},
{ # 转写失败
"task_status": "Failure"
"task_id": "234acb234acb234acb234acd",
"task_result": {
"err_no": 3301
"err_msg": "speech quality error",
"sn": "xxx"
}
},
{ # 转写成功
"task_status": "Success",
"task_result": {
"left"{
"result": [
"观众朋友大家好,欢迎收看本期视频哦。毕竟..."
],
"detailed_result": [
{
"res": [
"观众朋友大家好,欢迎收看本期视频哦。"
],
"end_time": 6700,
"begin_time": 4240,
"words_info": [
{
"end_time": 1750,
"words": "观众",
"begin_time": 1100
}
],
"sn": "257826606251573543780",
"corpus_no": "6758319075297447880"
}
...
],
"corpus_no": "6758319075297447880"
"error_no": 0
},
"right"{
"result": [
"观众朋友大家好,欢迎收看本期视频哦。毕竟..."
],
"detailed_result": [
{
"res": [
"观众朋友大家好,欢迎收看本期视频哦。"
],
"end_time": 6700,
"begin_time": 4240,
"words_info": [
{
"end_time": 1750,
"words": "观众",
"begin_time": 1100
}
],
"sn": "257826606251573543780",
"corpus_no": "6758319075297447880"
}
...
],
"corpus_no": "6758319075297447880"
"error_no": 0
}
"audio_duration": 6800
},
"task_id": "234acb234acb234acb234ace"
}
]
}