批处理之家's Archiver

ivor 发表于 2018-2-19 16:37

文本 转换合成语音

[i=s] 本帖最后由 ivor 于 2018-2-19 16:57 编辑 [/i]

利用百度API,把文本拖放到脚本上面转换成合成语音audio.mp3。[code]"""
如果已安装pip,执行pip install baidu-aip即可。
如果已安装setuptools,执行python setup.py install即可。
"""
import re
from os import system
from aip import AipSpeech
from sys import argv

def baiduAudio(inputStr):

    """
    你的 APPID AK SK
    APP_ID只用于演示,不保证稳定性
    """
    APP_ID = '10837454'
    API_KEY = 'mPHGma7u4j5N5VpxsIexBlr7'
    SECRET_KEY = 'ZDclPeFqhXlaZTjcqusF6pCgWBZ5cPGL'

    client = AipSpeech(APP_ID, API_KEY, SECRET_KEY)

    """
    per        String        发音人选择, 0为女声,1为男声,3为情感合成-度逍遥,4为情感合成-度丫丫,默认为普通女
    """


    result  = client.synthesis(inputStr, 'zh', 1, {
        'spd': 5,
        'pit': 5,
        'vol': 5,
        'per': 3,
        }
    )
    if not isinstance(result, dict):
        return result

with open("audio.mp3","wb") as file:
    if (len(argv) > 1):
        with open(argv[1],"r") as textfile:
            for line in textfile:
                for i in re.split(r'[,,。.]',line):
                    if re.match(r'.*(\S+).*',i):
                        print("str: %s" % i)
                        file.write(baiduAudio(i))
                    
[/code]

codegay 发表于 2018-2-19 19:21

:lol 你不要把API key 之类这些东西发出来。

CrLf 发表于 2018-2-20 23:04

我估计文档里测试用的 key 也能随便用

523066680 发表于 2018-2-20 23:48

[i=s] 本帖最后由 523066680 于 2018-2-20 23:49 编辑 [/i]

很好,之前想做一个语音报时闹钟,现在可以直接获取音频了。

523066680 发表于 2018-2-21 12:38

来段绕口令,笑死我了[code]化肥会挥发
黑化肥发灰,灰化肥发黑
黑化肥发灰会挥发;灰化肥挥发会发黑
黑化肥挥发发灰会花飞;灰化肥挥发发黑会飞花
黑灰化肥会挥发发灰黑讳为花飞;灰黑化肥会挥发发黑灰为讳飞花
黑灰化肥灰会挥发发灰黑讳为黑灰花会飞;灰黑化肥会会挥发发黑灰为讳飞花化为灰
黑化黑灰化肥灰会挥发发灰黑讳为黑灰花会回飞;灰化灰黑化肥会会挥发发黑灰为讳飞花回化为灰[/code]

ivor 发表于 2018-2-22 20:13

[b]回复 [url=http://www.bathome.net/redirect.php?goto=findpost&pid=206722&ptid=47372]5#[/url] [i]523066680[/i] [/b]

这个更搞笑
    [quote]《卧春》      
    暗梅幽闻花,   
    卧枝伤恨底,   
    遥闻卧似水,   
    易透达春绿。   
    岸似绿,      
    岸似透绿。 [/quote]

页: [1]

Powered by Discuz! Archiver 7.2  © 2001-2009 Comsenz Inc.