腾讯语音识别案例
在工作中正好用上,总结一些干货
接口文档:
链接: 开发文档
本案例使用的是语音的 URL 地址上传语音文件,CallbackUrl回调的方式获取结果
// 实例化一个认证对象,入参需要传入腾讯云账户secretId,secretKey,此处还需注意密钥对的保密
// 密钥可前往https://console.cloud.tencent.com/cam/capi网站进行获取
Credential cred = new Credential("secretId", "secretKey");
// 实例化一个http选项,可选的,没有特殊需求可以跳过
HttpProfile httpProfile = new HttpProfile();
httpProfile.setEndpoint("asr.tencentcloudapi.com");
// 实例化一个client选项,可选的,没有特殊需求可以跳过
ClientProfile clientProfile = new ClientProfile();
clientProfile.setHttpProfile(httpProfile);
// 实例化要请求产品的client对象,clientProfile是可选的
AsrClient client = new AsrClient(cred, "", clientProfile);
// 实例化一个请求对象,每个接口都会对应一个request对象
CreateRecTaskRequest req = new CreateRecTaskRequest();
req.setEngineModelType("8k_zh");
req.setChannelNum(1L);
req.setResTextFormat(0L);
req.setSourceType(0L);
req.setCallbackUrl("回调地址");
req.setUrl("录音文件地址");
// 返回的resp是一个CreateRecTaskResponse的实例,与请求对象对应
CreateRecTaskResponse resp = client.CreateRecTask(req);
// 输出json格式的字符串回包
// 返回:{"Data":{"TaskId":2153366426},"RequestId":"26a1d3c4-556555-4a2c-98b9-6284568d1a94"}
String taskId=resp.getData().getTaskId().toString();
所需jar包
<dependency>
<groupId>com.tencentcloudapi</groupId>
<artifactId>tencentcloud-sdk-java-asr</artifactId>
<version>3.1.62</version>
</dependency>
(注意):
1.如果项目中已存在okhttp-3.14.4.jar这类jar包,如果版本与tencentcloud-sdk-java-asr中(okhttp-2.5.0.jar)的不一至会导致运行报错,(java.lang.ClassNotFoundException:) 建议使用源码包:
链接: 源码包
2.CallbackUrl中不用使用127.0.0.1
3.提交速率20/s