阿里云提供了语音识别API,可以实现录音文件的识别。以下是阿里云录音文件识别API的文档,包含签名、请求和轮询的相关信息。
签名 使用阿里云录音文件识别API时,需要使用AccessKey ID和AccessKey Secret进行签名认证。签名过程如下:
构造规范化请求字符串(Canonicalized Query String)。 规范化请求字符串包括请求参数和公共请求参数,按照参数名称的字典序排序,并进行URL编码。例如:
AccessKeyId=testid&Action=CreateInstance&Format=XML&RegionId=cn-hangzhou&SignatureMethod=HMAC-SHA1&SignatureNonce=688e0e7d-0e1c-44b8-b7e9-50f*****&SignatureVersion=1.0&Timestamp=2016-03-29T03%3A09%3A23Z&Version=2014-05-26 构造待签名字符串(StringToSign)。 待签名字符串由请求方法、URI路径、规范化请求字符串组成,格式如下:
HTTPMethod + "&" + percentEncode("/") + "&" + percentEncode(CanonicalizedQueryString) 例如:
GET&%2F&AccessKeyId%3Dtestid%26Action%3DCreateInstance%26Format%3DXML%26RegionId%3Dcn-hangzhou%26SignatureMethod%3DHMAC-SHA1%26SignatureNonce%3D688e0e7d-0e1c-44b8-b7e9-50f*****%26SignatureVersion%3D1.0%26Timestamp%3D2016-03-29T03%253A09%253A23Z%26Version%3D2014-05-26 计算签名。 使用AccessKey Secret作为密钥,按照RFC2104规定的HMAC-SHA1算法计算签名值。签名值需要进行Base64编码。
请求 录音文件识别API的请求参数如下:
参数名称 类型 是否必选 描述 Format String 是 返回值的格式,支持JSON和XML。 Version String 是 API版本号,固定值2017-07-05。 AccessKeyId String 是 阿里云AccessKey ID。 Signature String 是 签名字符串。 SignatureMethod String 是 签名算法,目前只支持HMAC-SHA1。 Timestamp String 是 请求的时间戳,格式为ISO8601标准。 SignatureVersion String 是 签名版本号,固定值1.0。 SignatureNonce String 是 随机数,用于防止网络重放攻击。 EngineType String 是 语音识别引擎类型,支持asr、nls、nls-file。 LanguageCode String 是 语言编码,支持中文、英文、日文、韩文等多种语言。 Format String 是 录音文件的格式,支持pcm、wav、mp3、m4a等多种格式。 SampleRate Integer 是 录音文件的采样率,支持8000、16000等多种采样率。 AudioFile Binary 是 录音文件的二进制数据。 以下是一个示例请求:
GET /?Format=JSON&Version=2017-07-05&AccessKeyId=testid&SignatureMethod=HMAC-SHA1&Timestamp=2017-06-06T20%3A04%3A05Z&SignatureVersion=1.0&SignatureNonce=45e25e9b-0a6f-4070-8c9c-3c*****&EngineType=asr&LanguageCode=zh-CN&Format=pcm&SampleRate=16000&AudioFile=BASE64_ENCODED_DATA HTTP/1.1 Host: stt.aliyuncs.com 其中,AudioFile参数需要将录音文件的二进制数据进行Base64编码,并将编码后的字符串作为参数值传递。
轮询 录音文件识别API的响应结果为异步返回,需要使用轮询方式获取识别结果。每次请求返回的响应中会包含一个TaskId参数,用于标识当前识别任务的唯一编号。使用该编号可以通过API获取识别结果。
以下是获取识别结果的API请求示例:
GET /?Format=JSON&Version=2017-07-05&AccessKeyId=testid&SignatureMethod=HMAC-SHA1&Timestamp=2017-06-06T20%3A04%3A05Z&SignatureVersion=1.0&SignatureNonce=45e25e9b-0a6f-4070-8c9c-3c*****&TaskId=TASK_ID HTTP/1.1 Host: stt.aliyuncs.com 其中,TaskId参数为之前请求返回的TaskId值。
以上是阿里云录音文件识别API的相关文档,希望对您有所帮助。
您好,阿里云语音识别 API 的文档可以在官方网站上找到。下面是相关文档的说明:
URL 阿里云语音识别 API 的 URL 格式如下:
https://nls-gateway.cn-shanghai.aliyuncs.com/stream/v1/asr 其中 cn-shanghai 表示地域信息,您需要根据自己的实际情况进行选择。
签名 调用阿里云语音识别 API 需要进行签名认证,具体签名流程可以参考阿里云官方文档:API 签名。
请求数据 请求数据需要按照以下格式组织:
json { "app_key": "您的 appkey", "format": "pcm", "sample_rate": 16000, "enable_punctuation_prediction": true, "enable_inverse_text_normalization": false, "enable_voice_detection": false, "max_sentence_silence": -1, "enable_words_correction": false, "enable_arithmetic": false, "scene": "general", "external_id": "您的自定义 ID", "enable_chunk": true, "enable_intermediate_result": true, "metadata": { "user_id": "您的用户 ID", "session_id": "您的会话 ID", "name": "录音文件名称" } } 其中各个参数的含义如下:
app_key:您的阿里云 appkey。 format:录音文件格式,支持 pcm、wav 和 opus 格式。 sample_rate:采样率,支持 8000、16000 和 44100。 enable_punctuation_prediction:是否开启标点预测,默认值为 true。 enable_inverse_text_normalization:是否开启语气反转,默认值为 false。 enable_voice_detection:是否开启静音检测,默认值为 false。 max_sentence_silence:最大语音断句时间,单位毫秒,默认值为 -1,表示无限制。 enable_words_correction:是否开启纠错功能,默认值为 false。 enable_arithmetic:是否开启数学公式识别,默认值为 false。 scene:请求场景,目前支持 general、medical、recording 和 voiceprint。 external_id:用户自定义 ID。 enable_chunk:是否开启分片传输,默认值为 true。 enable_intermediate_result:是否返回中间结果,默认值为 true。 metadata:元数据信息,包括 user_id、session_id 和 name。 轮询 使用阿里云语音识别 API 进行识别后,需要通过轮询接口获取识别结果。轮询接口的 URL 格式如下:
https://nls-gateway.cn-shanghai.aliyuncs.com/stream/v1/result 其中 cn-shanghai 表示地域信息,您需要根据自己的实际情况进行选择。
在调用轮询接口时,需要携带以下参数:
app_key:您的阿里云 appkey。 task_id:识别任务的 ID,即调用语音识别 API 返回的 taskId。 format:识别结果格式,目前支持 json 和 plain_text。 以上是阿里云语音识别 API 的相关文档说明,希望对您有所帮助。如果您还有其他问题或疑问,可以随时提出。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。