import base64
import json
import time
import hashlib
import requests # API请求地址、API KEY、APP ID等参数,提前填好备用
api_url = "http://api.xfyun.cn/v1/service/v1/tts"
API_KEY = ""
APP_ID = ""
OUTPUT_FILE = "output.mp3" # 输出音频的保存路径,请根据自己的情况替换
TEXT = "" # 构造输出音频配置参数
Param = {
"auf": "audio/L16;rate=16000", #音频采样率
"aue": "lame", #音频编码,raw(生成wav)或lame(生成mp3)
"voice_name": "x_xiaokun",
"speed": "40", #语速[0,100]
"volume": "77", #音量[0,100]
"pitch": "50", #音高[0,100]
"engine_type": "intp65" #引擎类型。aisound(普通效果),intp65(中文),intp65_en(英文)
}
# 配置参数编码为base64字符串,过程:字典→明文字符串→utf8编码→base64(bytes)→base64字符串
Param_str = json.dumps(Param) #得到明文字符串
Param_utf8 = Param_str.encode('utf8') #得到utf8编码(bytes类型)
Param_b64 = base64.b64encode(Param_utf8) #得到base64编码(bytes类型)
Param_b64str = Param_b64.decode('utf8') #得到base64字符串 # 构造HTTP请求的头部
time_now = str(int(time.time()))
checksum = (API_KEY + time_now + Param_b64str).encode('utf8')
checksum_md5 = hashlib.md5(checksum).hexdigest()
header = {
"X-Appid": APP_ID,
"X-CurTime": time_now,
"X-Param": Param_b64str,
"X-CheckSum": checksum_md5
} # 发送HTTP POST请求
def getBody(text):
data = {'text':text}
return data
response = requests.post(api_url, data=getBody(TEXT), headers=header) # 读取结果
response_head = response.headers['Content-Type']
if(response_head == "audio/mpeg"):
out_file = open(OUTPUT_FILE, 'wb')
data = response.content # a 'bytes' object
out_file.write(data)
out_file.close()
print('输出文件: ' + OUTPUT_FILE)
else:
print(response.text)

科大讯飞语音合成api的更多相关文章

  1. C#将科大讯飞语音合成文件转换为MULAW音频格式

    任务描述:通过科大讯飞语音合成组件在线完成文本转语音的合成,然后再转换为电话系统IVR要求的音频格式: wave mu-law 16位 8kHZ 64kbps. 完成步骤: 首先,我们要先通过科大讯飞 ...

  2. 文本转音频(百度语音合成api)(python)(原创)

    应之前的一家小学教育培训机构的要求设计的一款 将文字转音频的程序.(注:后面应该是生成音频才对,没有改过来) 技术难点: ①语音合成,如果没有现在这么多的云服务-百度云语音合成,我估计这个程序会费很大 ...

  3. 科大讯飞语音合成系统 V5.0绿色便携版

    中文名: 中科大讯飞Interphonic 5.0语音合成系统英文名: Interphonic 5.0版本: 5.0发行时间: 2006年制作发行: 中科大讯飞语言: 简体中文系统简介InterPho ...

  4. 在C#中使用科大讯飞Web API进行语音合成

    最近工作中需要用到讯飞语音合成接口,网上看了下基本都是Java,PHP,Python版本的,正好补上C# 版本,代码比较简单.  首先在讯飞开放平台上创建一个WebApi项目,取到APPID与APIK ...

  5. ROS语音交互——科大讯飞语音合成TTS(二)

    之前我用过科大讯飞的语音包,为了记录一下我重新使用一下 首先注册科大讯飞账号及应用,以后每个下载的在线使用SDK都是以此账户ID登录讯飞语音服务器. 下载科大讯飞在线合成包. $ unzip Linu ...

  6. Android—实现科大讯飞语音合成

    背景(可以不看) 实验室项目开发的APP需要有语音提示功能,之前的做法是人工录音,剪辑片段,调用Android的多媒体,播放,呵呵呵,,,这是21世纪!这样肯定显得有点low啊,且不说档次,应用场景也 ...

  7. <交流贴>android语音识别之科大讯飞语音API的使用

      因为最近在研究语音识别,所以借鉴了一下CreAmazing网友的帖子 Android系统本身其实提供有语音识别模块,在它的APIDemo里也有关于语音识别的sample,不过经过大多开发者的真机测 ...

  8. 转:基于科大讯飞语音API语音识别开发详解

    原文来自于: http://www.52wulian.org/android_voice/ 最近项目需要用到android语音识别,立马就想到科大讯飞,结合官方实例及阅读API文档,初步的完成了And ...

  9. 百度语音合成api/sdk及demo

    1.流程 1)换取token 用Api Key 和 SecretKey.访问https://openapi.baidu.com/oauth/2.0/token 换取 token // appKey = ...

随机推荐

  1. MRC-block与ARC-block

    上一篇已经讲解了MRC与ARC的基本知识,本篇我们讲解MRC-block与ARC-block的基本内容. 在MRC时代,Block会隐式地对进入其作用域内的对象(或者说被Block捕获的指针指向的对象 ...

  2. 第48章 UserInfo端点(UserInfo Endpoint) - Identity Server 4 中文文档(v1.0.0)

    UserInfo端点可用于检索有关用户的身份信息(请参阅规范). 调用者需要发送代表用户的有效访问令牌.根据授予的范围,UserInfo端点将返回映射的声明(至少需要openid作用域). 示例 GE ...

  3. C#_asp.net mvc 验证码功能的具体实现

    @using (Html.BeginForm("Login", "HomePage",FormMethod.Post)) { <h2>登录</ ...

  4. VisualStudio2017集成GitHub

    1 概述 通过使用VisualStudio2017来编写C语言版本的helloworld程序,然后上传至GitHub 2 VisualStudio2017安装GitHub插件 前提条件: 必须完成Vi ...

  5. Spring Boot 整合 docker

    一.什么是docker ? 简介 Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的.可移植的.自给自足的容器.开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括VMs ...

  6. 【开源】SpringBoot&Netty实现仿微信网页版项目更新

    阅读本文约“2.3分钟” 项目更新啦!V1.3.0 还记得那个聊天室的小项目吗? SpringBoot 加 Netty 实现聊天室 没错,这次已经完整进行了版本的替换,酥酥聊天室! 基于原项目的改动, ...

  7. python 练习 simple_server 判断路径及返回函数

    函数 routers 返回一个 urlpatterns 元组,里面包含了路径名和函数名:在 函数 application 中遍历 urlpatterns 元组,路径存在则返回函数名,不存在则返回 40 ...

  8. 从.Net到Java学习第一篇——开篇

    以前我常说,公司用什么技术我就学什么.可是对于java,我曾经一度以为“学java是不可能的,这辈子不可能学java的.”结果,一遇到公司转java,我就不得不跑路了,于是乎,回头一看N家公司交过社保 ...

  9. AndroisStudio列选择模式

    今天敲代码的时候可能由于误开了“列选择模式”,在移动光标时,发现若光标所在列超过当前行的行尾列,不像一般情况应该跳到行尾,而变成了保持列的位置,停在了超过行尾的空白处, 如图:非一般情况 一般情况: ...

  10. 《我们不一样》Alpha冲刺_1-5

    第一天    日期:2018/6/15 1.1 今日完成任务情况以及遇到的问题. 马    兰.马   娟:用户.管理员数据库表的设计 李国栋.张惠惠:前端登录界面代码书写 伊力亚.张   康:配置s ...