Python调用百度语音合成api将文字转换成音频文件并播放代码示例

本文介绍了一种利用百度语音合成API将文本转换为音频文件的方法,并提供了完整的Python代码示例。通过调用该API,可以将任意文本消息转换成语音,同时介绍了如何播放生成的音频文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

from aip import AipSpeech
import wave,pygame
import time
import random
import os

'''
pip install baidu-aip
调用百度语音合成api将文字转换成音频文件
'''
def get_video(msg):
    APP_ID = '17264707'
    API_KEY = '59xxwY01u0tmS2iUkdiUz4Tt'
    SECRET_KEY = 'BuDpSfWMOT3eGroftO56XRTW3tHDiMIR'

    client = AipSpeech(APP_ID, API_KEY, SECRET_KEY)
    result  = client.synthesis(msg, 'zh', 1, {
        'vol': 5,'per':103,'aue':6
    })
    file_name=str(random.randint(1,999999999))+str(int(time.time()))+".wav"
    # 识别正确返回语音二进制 错误则返回dict 参照下面错误码
    if not isinstance(result, dict):
        with open(file_name, 'wb') as f:
            f.write(result)
        return file_name
    else:
        return None
'''
pip install wave
播放指定音频文件,例如:auid.wav
'''
def paly_mp3(file_name):
    fhandle = wave.open(file_name, "rb")
    params = fhandle.getparams()
    nchannels, sampwidth, framerate, nframes = params[:4]
    fhandle.close()
    pygame.mixer.init(framerate)
    pygame.mixer.music.load(file_name)
    pygame.mixer.music.play()
    playTime = nframes / float(framerate)
    time.sleep(playTime)
    pygame.mixer.music.stop()
    #播放完毕之后删除指定文件
    os.remove(file_name)

if __name__ == '__main__':
    
    '''
    循环将文字转换成音频文件,并播放
    '''
    msg_list=[
        "张三呀",
        "李四呀",
        "王麻子呀",
        "蓝胖子呀",
    
    ]
    for msg in msg_list:
        file_name=get_video(msg)
        paly_mp3(file_name)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小牛牛先生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值