腾讯云语音识别录音文件识别极速版_AI解决方案_同尘科技
接入流程
开发准备
SDK 下载
录音文件识别 Android SDK 及 Demo 下载地址:接入 SDK 下载。
接入须知
开发者在调用前请先查看录音文件识别极速版的 接口说明,了解接口的使用要求和使用步骤。该接口需要手机能够连接网络(3G、4G、5G 或 Wi-Fi 等),且系统为 Android 5.0 及其以上版本。运行 Demo 必须设置 AppID、SecretID、SecretKey,可在 API 密钥管理 中获取。
运行环境配置
1. 添加录音文件识别 SDK aar,将 asr-file-recognize-release.aar 放在 libs 目录下,在 App 的 build.gradle 文件中添加。
implementation(name: 'asr-file-recognize-release', ext: 'aar')
2. 添加其他依赖,在 App 的 build.gradle 文件中添加。
implementation 'com.google.code.gson:gson:2.8.5'
3. 在 AndroidManifest.xml 添加如下权限。
混淆规则
-keepclasseswithmembernames class * { # 保持 native 方法不被混淆native ;}-keep public class com.tencent.cloud.qcloudasrsdk.*
快速接入
开发流程及接入示例
1. 创建 QCloudFileRecognizer 示例
QCloudFlashRecognizer fileFlashRecognizer = new QCloudFlashRecognizer(this, appid, secretId, secretKey);
/**也可以使用临时密钥鉴权1.通过sts 获取到临时证书 (secretId secretKey token) ,此步骤应在您的服务器端实现,见https://cloud.tencent.com/document/product/598/334162.通过临时密钥调用接口**/QCloudFlashRecognizer fileFlashRecognizer = new QCloudFlashRecognizer(DemoConfig.apppId, "临时secretId", "临时secretKey","对应的token");
2. 设置识别结果回调
fileFlashRecognizer.setCallback(this);
3. 调用方式示例
InputStream is = null; AssetManager am = getResources().getAssets(); is = am.open("test1.mp3"); int length = is.available(); byte[] audioData = new byte[length]; is.read(audioData);
QCloudFlashRecognitionParams params = (QCloudFlashRecognitionParams) QCloudFlashRecognitionParams.defaultRequestParams();//支持传音频文件数据或者音频文件路径,如果同时调用setData和setPath,sdk内将忽略setPath的值 params.setData(audioData);// params.setPath("/sdcard/test2.mp3"); //支持100MB以内音频文件的识别 params.setVoiceFormat("mp3"); //音频格式。支持 wav、pcm、ogg-opus、speex、silk、mp3、m4a、aac。
/**以下参数不设置将使用默认值**/ params.setEngineModelType("16k_zh");//引擎模型类型,默认16k_zh。8k_zh:8k 中文普通话通用;16k_zh:16k 中文普通话通用;16k_zh_video:16k 音视频领域。 params.setFilterDirty(0);// 0 :默认状态 不过滤脏话 1:过滤脏话 params.setFilterModal(0);// 0 :默认状态 不过滤语气词 1:过滤部分语气词 2:严格过滤 params.setFilterPunc(0);// 0 :默认状态 不过滤句末的句号 1:滤句末的句号 params.setConvertNumMode(1);//1:默认状态 根据场景智能转换为阿拉伯数字;0:全部转为中文数字。 params.setSpeakerDiarization(0); //是否开启说话人分离(目前支持中文普通话引擎),默认为0,0:不开启,1:开启。 params.setFirstChannelOnly(1); //是否只识别首个声道,默认为1。0:识别所有声道;1:识别首个声道。 params.setWordInfo(0); //是否显示词级别时间戳,默认为0。0:不显示;1:显示,不包含标点时间戳,2:显示,包含标点时间戳。 params.setCustomizationID(""); //自学习模型 id。如设置了该参数,将生效对应的自学习模型。 params.setHotwordID(""); //热词表 id。如不设置该参数,自动生效默认热词表;如设置了该参数,那么将生效对应的热词表。
fileFlashRecognizer.recognize(params);
关键类说明
QCloudFlashRecognizer:录音文件识别入口类
/** * 初始化方法 * @param activity app activity * @param appId 腾讯云 appid * @param secretId 腾讯云 secretId * @param secretKey 腾讯云 secretKey */public QCloudFlashRecognizer(String appId, String secretId, String secretKey);
* 通过 url 或语音数据调用录音文件识别 * @param params 请求参数 * @return 返回本次请求的唯一标识别 requestId */public long recognize(QCloudFlashRecognitionParams params) throws Exception;
QCloudFlashRecognizerListener:识别结果回调
public interface QCloudFlashRecognizerListener { /** * 识别结果回调 * @param recognizer 录音文件识别实例 * @param result 服务器返回的识别结果 api文档 https://cloud.tencent.com/document/product/1093/52097 * @param exception 异常信息 * */ void recognizeResult(QCloudFlashFileRecognizer recognizer,String result, int status,Exception exception);}
对解决方案有疑惑?想了解解决方案收费? 联系解决方案专家
腾讯云限时活动1折起,即将结束: 马上收藏
同尘科技为腾讯云授权服务中心,购买腾讯云享受折上折,更有现金返利:同意关联,立享优惠
阿里云解决方案也看看?: 点击对比阿里云的解决方案
暂无评论,你要说点什么吗?