Python人工智能-基于百度AI接口

参考百度AI官网:http://ai.baidu.com/

准备工作:

  支持Python版本:2.7.+ ,3.+

安装使用Python SDK有如下方式

  >如果已经安装了pip,执行 pip install baidu-aip 即可。

  >如果已安装setuptools,执行 python setup.py install 即可。

登录百度ia网站:

  1、用百度账号登录

  2、进入左侧语言应用

  3、创建新应用

 

实验1:语音合成(将文字转为语音)

from aip import AipSpeech

""" 你的 APPID AK SK """
APP_ID = '写注册的APP_ID'
API_KEY = '写注册的API_KEY'
SECRET_KEY = '写注册的SECRET_KEY'

client = AipSpeech(APP_ID, API_KEY, SECRET_KEY)

result  = client.synthesis('中南山下活死人墓预知后事如何请听下回分解', 'zh', 1, {
    'vol': 5,
    'spd': 3,
    'pit': 9,
    'per': 3,
})
# 识别正确返回语音二进制 错误则返回dict 参照下面错误码
if not isinstance(result, dict):
    with open('auido.mp3', 'wb') as f:
        f.write(result)

参数备注:

 

实验2:语音识别(语音转为文字)+语音合成

from aip import AipSpeech
import os


""" 你的 APPID AK SK """
APP_ID = '同上'
API_KEY = '同上'
SECRET_KEY = '同上'

client = AipSpeech(APP_ID, API_KEY, SECRET_KEY)

#语音识别(将音频转为文字)

# 读取文件
def get_file_content(filePath):

    #实现文件自动转换(只要修改下面的本地文件并传值就可以执行)
    any2pcm=f"ffmpeg -y  -i {filePath}  -acodec pcm_s16le -f s16le -ac 1 -ar 16000 {filePath}.pcm"
    os.system(any2pcm)

    with open(f"{filePath}.pcm", 'rb') as fp:
        return fp.read()

# 识别本地文件
res=client.asr(get_file_content('ea.m4a'), 'pcm', 16000, {
    'dev_pid': 1536,
})

#拿到的是视频转换后的文字
print(res['result'][0])

#语音合成(再将文字转为音频)
result  = client.synthesis(res['result'][0], 'zh', 1, {
    'vol': 5,
    'spd': 3,
    'pit': 9,
    'per': 3,
})
# 识别正确返回语音二进制 错误则返回dict 参照下面错误码
if not isinstance(result, dict):
    with open('auido.mp3', 'wb') as f:
        f.write(result)

#调用系统默认播放器
os.system("auido.mp3")

注意点:

  1. 语音识别的格式只支持pcm,万能格式转换命令为:

    ffmpeg -y  -i audio.wav(原文件名)  -acodec pcm_s16le -f s16le -ac 1 -ar 16000 audio.pcm(转换后的文件名字)

  2. os.system()是直接可以执行系统命令

 

转载于:https://www.cnblogs.com/yangzhizong/p/9882805.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值