open_jtalk实现日语语音系统

33 篇文章 0 订阅
#coding: utf-8
import subprocess
from datetime import datetime
import winsound

def jtalk(t):

    OPENJTALK_BINPATH = 'C://open_talk/open_jtalk-1.11/bin'
    OPENJTALK_DICPATH = 'C://open_talk/open_jtalk-1.11/dic'
    OPENJTALK_VOICEPATH = 'C://open_talk/open_jtalk-1.11/voice/nitech_jp_atr503_m001.htsvoice'
    open_jtalk=[OPENJTALK_BINPATH + '/open_jtalk.exe']
    mech=['-x',OPENJTALK_DICPATH]
    htsvoice=['-m',OPENJTALK_VOICEPATH]
    speed=['-r','1.0']
    outwav=['-ow','open_jtalk.wav']
    cmd=open_jtalk+mech+htsvoice+speed+outwav

    c = subprocess.Popen(cmd,stdin=subprocess.PIPE)

    # convert text encoding from utf-8 to shitf-jis
    c.stdin.write(t.encode('shift-jis'))
    c.stdin.close()
    c.wait()

    winsound.PlaySound('open_jtalk.wav', winsound.SND_FILENAME)


def say_datetime(): 
    text = "今晩は月綺麗ですね"
    print (text)
    jtalk(text)

if __name__ == '__main__':
    say_datetime()

结果:成功输出语音文件。
OPENJTALK_VOICEPATH ,可以切换模型。

配置:https://blog.csdn.net/CSDN_71560364126/article/details/102510419
下载:https://sourceforge.net/projects/open-jtalk/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

佐倉

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

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

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

打赏作者

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

抵扣说明:

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

余额充值