开发者社区> 问答> 正文

求个阿里云 录音文件识别 API文档,包含签名,请求,轮询

360截图20230411094747237.jpg

这里只有请求数据的说明,没有URL和签名的说明 QQ图片20230411100200.png

展开
收起
雷神之娃 2023-04-11 10:16:09 283 0
3 条回答
写回答
取消 提交回答
  • 值得去的地方都没有捷径

    阿里云提供了语音识别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的相关文档,希望对您有所帮助。

    2023-04-17 16:40:19
    赞同 展开评论 打赏
  • 360截图20230414083818737.jpg

    2023-04-14 08:41:22
    赞同 展开评论 打赏
  • 全栈JAVA领域创作者

    您好,阿里云语音识别 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 的相关文档说明,希望对您有所帮助。如果您还有其他问题或疑问,可以随时提出。

    2023-04-13 21:21:44
    赞同 1 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Spring Boot2.0实战Redis分布式缓存 立即下载
CUDA MATH API 立即下载
API PLAYBOOK 立即下载