有奖捉虫:办公协同&微信生态&物联网文档专题 HOT

简介

本文档提供关于提交语音识别任务、查询指定的语音识别任务、批量拉取语音识别任务相关的 API 概览以及 SDK 示例代码。
API
说明
接口用于提交一个语音识别任务。
用于查询指定的语音识别任务。
用于拉取符合条件的语音识别任务。

SDK API 参考

SDK 所有接口的具体参数与方法说明,请参见 SDK API 参考

提交语音识别任务

功能说明

接口用于提交一个语音识别任务。
注意
COS Android SDK 版本需要大于等于 v5.9.13。

示例代码

// 存储桶名称,格式为 BucketName-APPID
String bucket = "examplebucket-1250000000";
CreateSpeechJobsRequest request = new CreateSpeechJobsRequest(bucket);
// 对象键,是对象在 COS 上的完整路径,如果带目录的话,格式为 "dir1/object1"
String inputPath = "dir1/input.m4a";
//设置语音文件在 COS 上的 key
request.setInputObject(inputPath);
//输出 cos 路径
String outputPath = "dir1/putput.txt";
//设置结果输出地址
request.setOutput("ap-guangzhou", bucket, outputPath);
//设置引擎模型类型。
//电话场景:
//• 8k_zh:电话 8k 中文普通话通用(可用于双声道音频);
//• 8k_zh_s:电话 8k 中文普通话话者分离(仅适用于单声道音频);
//非电话场景:
//• 16k_zh:16k 中文普通话通用;
//• 16k_zh_video:16k 音视频领域;
//• 16k_en:16k 英语;
//• 16k_ca:16k 粤语。
request.setEngineModelType("8k_zh");
//设置语音声道数。1:单声道;2:双声道(仅支持 8k_zh 引擎模型)
request.setChannelNum(2);
//设置识别结果返回形式。
// 0: 识别结果文本(含分段时间戳); 1:仅支持16k中文引擎,含识别结果详情(词时间戳列表,一般用于生成字幕场景)
request.setResTextFormat(0);

ciService.createSpeechJobsAsync(request, new CosXmlResultListener() {
@Override
public void onSuccess(CosXmlRequest request, CosXmlResult cosResult) {
// result 提交语音识别任务的结果
// 详细字段请查看 API 文档或者 SDK 源码
CreateSpeechJobsResult result = (CreateSpeechJobsResult) cosResult;
}

@Override
public void onFail(CosXmlRequest request, CosXmlClientException clientException, CosXmlServiceException serviceException) {
if (clientException != null) {
clientException.printStackTrace();
} else {
serviceException.printStackTrace();
}
}
});
说明
更多完整示例,请前往 GitHub 查看。

查询指定的语音识别任务

功能说明

用于查询指定的语音识别任务。
注意
COS Android SDK 版本需要大于等于 v5.9.2。

示例代码

// 存储桶名称,格式为 BucketName-APPID
String bucket = "examplebucket-1250000000";
//语音识别任务的 jobId(提交语音识别任务结果中获取)
String jobId = "s3841e6aa0cbd11ed923405b602cab698";
DescribeSpeechJobRequest request = new DescribeSpeechJobRequest(bucket, jobId);
ciService.describeSpeechJobAsync(request, new CosXmlResultListener() {
@Override
public void onSuccess(CosXmlRequest request, CosXmlResult cosResult) {
// result 查询指定的语音识别任务的结果
// 详细字段请查看 API 文档或者 SDK 源码
DescribeSpeechJobResult result = (DescribeSpeechJobResult) cosResult;
}

@Override
public void onFail(CosXmlRequest request, CosXmlClientException clientException, CosXmlServiceException serviceException) {
if (clientException != null) {
clientException.printStackTrace();
} else {
serviceException.printStackTrace();
}
}
});
说明
更多完整示例,请前往 GitHub 查看。

批量拉取语音识别任务

功能说明

用于拉取符合条件的语音识别任务。
注意
COS Android SDK 版本需要大于等于 v5.9.13。

示例代码

// 存储桶名称,格式为 BucketName-APPID
String bucket = "examplebucket-1250000000";
DescribeSpeechJobsRequest request = new DescribeSpeechJobsRequest(bucket);
//Desc 或者 Asc。默认为 Desc。
request.setOrderByTime("Desc");
//请求的上下文,用于翻页。上次返回的值。
request.setNextToken("NextToken");
//拉取的最大任务数。默认为10。最大为100。
request.setSize(50);
//拉取该状态的任务,以,分割,支持多状态:All、Submitted、Running、Success、Failed、Pause、Cancel。默认为 All。
request.setStates("All");
//拉取创建时间大于该时间的任务。格式为:%Y-%m-%dT%H:%m:%S%z
request.setStartCreationTime("%Y-%m-%dT%H:%m:%S%z");
//拉取创建时间小于该时间的任务。格式为:%Y-%m-%dT%H:%m:%S%z
request.setEndCreationTime("%Y-%m-%dT%H:%m:%S%z");

ciService.describeSpeechJobsAsync(request, new CosXmlResultListener() {
@Override
public void onSuccess(CosXmlRequest request, CosXmlResult cosResult) {
// result 拉取符合条件的语音识别任务的结果
// 详细字段请查看 API 文档或者 SDK 源码
DescribeSpeechJobsResult result = (DescribeSpeechJobsResult) cosResult;
}

@Override
public void onFail(CosXmlRequest request, CosXmlClientException clientException, CosXmlServiceException serviceException) {
if (clientException != null) {
clientException.printStackTrace();
} else {
serviceException.printStackTrace();
}
}
});
说明
更多完整示例,请前往 GitHub 查看。