讯飞云 API 语音听写 python3 调用例程

#!/usr/bin/python3
# -*- coding: UTF-8 -*-

import requests
import time
import gzip
import urllib
import json
import hashlib
import base64

def audio_dictation():
    """
    讯飞语音听写 API 调用例程
    注意:使用前需要在讯飞云控制台中的IP白名单中加入本机IP!
    参考:讯飞云官方 API 文档 https://doc.xfyun.cn/rest_api/语音听写.html
    """

    # 读取 APPID:
    with open(‘./appid‘, mode=‘r‘, encoding=‘ASCII‘) as appid_file:
        x_appid = appid_file.read()

    # 读取APIKey:
    with open(‘./apikey‘, mode=‘r‘, encoding=‘ASCII‘) as apikey_file:
        api_key = apikey_file.read()

    # API URL:
    url = ‘http://api.xfyun.cn/v1/service/v1/iat‘

    # 读取音频文件内容 (将 `zhngjb_clip.wav` 替换成需要上传的音频文件):
    with open(‘./zhngjb_clip.wav‘, mode=‘rb‘) as audio_file:
        file_content = audio_file.read()

    # 对音频文件进行 base64 音频编码:
    base64_audio = base64.b64encode(file_content)
    body = urllib.parse.urlencode({‘audio‘: base64_audio})

    # 采样率 16k,编码格式 未压缩:
    param = {"engine_type": "sms16k", "aue": "raw"} 

    # 构建 header:
    x_param = base64.b64encode(json.dumps(param).replace(‘ ‘, ‘‘).encode())
    x_time = str(int(int(round(time.time() * 1000)) / 1000))
    x_checksum = hashlib.md5(api_key.encode() + str(x_time).encode() + x_param).hexdigest()
    x_header = {‘X-Appid‘: x_appid,
                ‘X-CurTime‘: x_time,
                ‘X-Param‘: x_param,
                ‘X-CheckSum‘: x_checksum}

    req_header = {‘Content-Type‘: ‘application/x-www-form-urlencoded‘,
                  ‘charset‘: ‘utf-8‘}

    headers = {**req_header, **x_header}   

    # 发送请求:
    start = time.time()
    response = requests.post(url, headers=headers, data=body)
    duration = time.time() - start

    with open(‘result‘, mode=‘w‘, encoding=‘utf-8‘) as result_file:
        print(f‘Request sent. Duration: {duration}s\n‘
              f‘status code = {response.status_code}\n‘
              f‘headers = {response.headers}\n‘
              f‘content = {response.content.decode("utf-8")}‘, file=result_file)

if __name__ == ‘__main__‘:
    audio_dictation()

原文地址:https://www.cnblogs.com/LexLuc/p/9557849.html

时间: 2024-09-30 19:44:04

讯飞云 API 语音听写 python3 调用例程的相关文章

Android集成科大讯飞SDK语音听写及语音合成功能实现

前言 现在软件设计越来越人性化.智能化.一些常见的输入都慢慢向语音听写方向发展,一些常见的消息提示都向语音播报发展.所以语音合成和语音听写是手机软件开发必不可少的功能.目前国内这方面做的比较好的应该是科大讯飞.很多搜索引擎,语音助手都有用到.本人也是第一次用初步研究了一下,和大家一起分享学习. 声明 欢迎转载,但请保留文章原始出处:) 总有刁民想害朕&:http://www.cnblogs.com/wangshuaiandroid 正文 一.注册开放者账号.创建应用.下载SDK 讯飞开放平台 二

C# 实现语音听写

本文系原创,禁止转载. 分享如何使用c#对接科大讯飞语音听写服务,简单高效地实现语音听写. 实现语音听写主要分为录音和语音识别两部分:录音是指获取设备声卡端口的音频数据并将之保存为音频文件,语音识别就是将刚才所述的音频文件通过调用讯飞的语音听写服务转换为文字. 相关的类库文件 1. 开源录音库 NAudio.dll http://pan.baidu.com/s/1dFth2nv 2.语音听写库 msc.dll 去讯飞开放平台申请相关的SDK 录音部分可以使用开源的.net音频处理类库NAudio

讯飞语音听写API 未安装组件 错误码21001

在使用讯飞语音听写时,使用云端听写而不是使用本地出现这个未安装组件错误那可能就是so文件没有成功导入.文档中都是ADT环境的配置,在AndroidStudio中jar包等都和ADT差别不大,但是SO文件的导入有些区别. 在AndroidStudio将so文件导入到jniLibs文件夹中就可以了: 导入之后再次运行在其APPID配置成功之后80%就没问题了. 还有一些网上列出来的: 1.有没有使用SpeechUtility.createUtility()设置appid2.有没有将libmsc.so

Android讯飞语音云语音听写学习

讯飞语音云语音听写学习         这几天两个舍友都买了iPhone 6S,玩起了"Hey, Siri",我依旧对我的Nexus 5喊着"OK,Google".但种种原因,国内的"OK,Google"并不能展示出他的全部威力,于是上网搜索国内Android平台的语音助手,个人觉得评价最好的是讯飞的--灵犀语音助手.其实讯飞语音云平台早就注册过了,并下载了相应的SDK,只是没仔细研究.今天突然想好好学习一下,以方便以后集成到自己开发的APP中,

微信小程序wx.getLocation()获取经纬度及JavaScript SDK调用腾讯地图API获取某一类地址

简介 腾讯位置服务为微信小程序提供了基础的标点能力.线和圆的绘制接口等地图组件和位置展示.地图选点等地图API位置服务能力支持,使得开发者可以自由地实现自己的微信小程序产品. 在此基础上,腾讯位置服务微信小程序JavaScript SDK是专为小程序开发者提供的LBS数据服务工具包,可以在小程序中调用腾讯位置服务的POI检索.关键词输入提示.地址解析.逆地址解析.行政区划和距离计算等数据服务,让您的小程序更强大! 有时候我们在做微信小程序时有些功能需要获取当前的地理位置及附近地点的一些要求,但是

【Util】科大讯飞语音听写接口使用的封装

在 科大讯飞开放平台——语音听写接口的使用 这篇文章里介绍了科大讯飞语音听写接口的简单使用方法,但是在实际开发中发现仅仅那样做在使用起来还是不方便,于是想到把语音听写接口的调用.Json数据解析.听写结果的处理等操作进行封装,使用异步回调的方式进行调用,这样在使用到语音听写的地方只需创建一个监听接口并重写语音识别返回结果的处理方法即可.梳理了一下步骤如下: (一)前期准备工作(略,见科大讯飞开放平台——语音听写接口的使用一文) 注:将获取到的AppId存到一个常量类里,后面便于管理: 1 pub

科大讯飞(1) 语音听写(语音转换成文字)

一.科大讯飞开放平台: http://www.xfyun.cn/ 注册.登录之后创建新应用. 因为本项目只实现了语音听写,所以在SDK下载中心勾选语音听写单项SDK就可以了 开发平台选择iOS,应用选择你要实现语音听写的应用,然后点击"下载SDK"按钮 程序中会用到Appid,程序中导入的SDK一定是要与这个应用相关联的SDK,下载下来的SDK压缩包就是以Appid结尾命名的. 二.项目配置 官方文档:http://www.xfyun.cn/doccenter/iOS 1.添加静态库

UI进阶 科大讯飞(1) 语音听写(语音转换成文字)

一.科大讯飞开放平台: http://www.xfyun.cn/ 注册.登录之后创建新应用. 因为本项目只实现了语音听写,所以在SDK下载中心勾选语音听写单项SDK就可以了 开发平台选择iOS,应用选择你要实现语音听写的应用,然后点击"下载SDK"按钮 程序中会用到Appid,程序中导入的SDK一定是要与这个应用相关联的SDK,下载下来的SDK压缩包就是以Appid结尾命名的. 二.项目配置 官方文档:http://www.xfyun.cn/doccenter/iOS 1.添加静态库

使用IDA PRO+OllyDbg+PEview 追踪windows API 动态链接库函数的调用过程

http://bbs.pediy.com/showthread.php?p=1354999 标 题: [原创]使用IDA PRO+OllyDbg+PEview 追踪windows API 动态链接库函数的调用过程.作 者: shayi时 间: 2015-02-12,05:19:54链 接: http://bbs.pediy.com/showthread.php?t=197829 使用IDA PRO+OllyDbg+PEview 追踪windows API 动态链接库函数的调用过程. (本文同步更