• 从今天开始学习Python了,昨天晚上我创作了我的第一个python程序.我将记录我的学习之路,将我学习的内容分享在这里,

  • 其实我做网站没有其他特别的意思,就是爱好,也不想写什么东西进去,但就是想留下,不想让网站丢掉,这是什么鬼,从现在开始我就记录一些技术上的东西,方便自己用了来取

  • 由于许多工作原因,没有更多的时间监控网站文件上传这块,网站现在停止论坛功能,给网友和会员带来不便敬请谅解!

  • 网站域名备案成功!

  • 直到现在网站所有数据恢复正常!

  • 网站域名已经更换成现在的,原来的yxlz8.com将停止使用!

  • 网站备案中.....

  • 本站入住阿里云服务器,催动于阿里云oss云储存,打开本站任何一个页面可以感觉到打开的速度!

  • 微信终于可以扫码登陆了点击这里体验

  • 最近有小伙伴说付费音乐无法下载,希望弄一个免费下载付费音乐的工具,经过这段时间的辛苦终于个大家见面了,可以输入歌曲名称或者地址即可在线播放或者下载!直达飞机票

利用电脑的API sapi spvoice让文字转语音

文章 海峰博客 7个月前 (03-07) 426次浏览 已收录 0个评论 扫描二维码

好多的小伙伴问我文字转语音如何转,现在提供两种方法,第一种就是用VB程序来实现,可以直接保存为MP3格式,第二中就是不需要编程技术,直接在电脑本地很简单的建立一个,有点就是不能保存MP3格式!

先看第一种

1.新建一个VB标准工程1并保存,名字自己随便写
2.建立一个text1的文本框用来放置需要转语音的文字
3.建立两个按钮,将其名称caption改为转换语音和保存MP3,按钮的文件将保持不变,如Command1/2
4.将其摆放好位置,大体界面如下图

5.鼠标双击转换语音按钮进入代码界面,在end sub 上面一行写上如下代码

    Dim o As Object
    Set o = CreateObject("sapi.spvoice")
    k = o.Speak(Text1.Text)

6.返回主界面,鼠标双击保存MP3按钮进入后台代码界面,在end sub上面写上如下代码

Const SSFMCreateForWrite = 3
strText = Text1.Text '这里输入要输出的声音
Set objVoice = CreateObject("SAPI.SpVoice")
Set objFile = CreateObject("SAPI.SpFileStream.1")
objFile.Open "D:\文字转语音.mp3", SSFMCreateForWrite '输出路径
Set objVoice.AudioOutputStream = objFile
objVoice.Rate = 1
objVoice.Volume = 100 '音量
objVoice.AllowAudioOutputFormatChangesOnNextSet = False
objVoice.Speak strText
objFile.Close
Set objVoice.AudioOutputStream = Nothing
Set objVoice = Nothing
MsgBox "语音文件已经为你保存在电脑的D盘下", 0, "温馨提示你"

完整代码

至此大功告成,运行测试,在文本框中写入文字点击转换语音,神奇的效果很不错吧,比其他网站上转换的要逼真吧,下面是完整的代码

Private Sub Command1_Click()
    Dim o As Object
    Set o = CreateObject("sapi.spvoice")
    k = o.Speak(Text1.Text)
End Sub
'以下是保存MP3
Private Sub Command2_Click()
Const SSFMCreateForWrite = 3
strText = Text1.Text '这里输入要输出的声音
Set objVoice = CreateObject("SAPI.SpVoice")
Set objFile = CreateObject("SAPI.SpFileStream.1")
objFile.Open "D:\文字转语音.mp3", SSFMCreateForWrite '输出路径
Set objVoice.AudioOutputStream = objFile
objVoice.Rate = 1
objVoice.Volume = 100 '音量
objVoice.AllowAudioOutputFormatChangesOnNextSet = False
objVoice.Speak strText
objFile.Close
Set objVoice.AudioOutputStream = Nothing
Set objVoice = Nothing
MsgBox "语音文件已经为你保存在电脑的D盘下", 0, "温馨提示你"
End Sub

别忘记了,看代码就知道文件是保存在D盘的根目录下的文字转语音.MP3

来看下第二种

1.新建记事本功能,文件名随便写
2.在记事本里面写上如下代码

CreateObject("SAPI.SpVoice").Speak "I LOVE YOU"

3.保存后退出
4.修改记事本的文件后缀为vbs
5.打开听效果吧!

想要第一种的文档可以在留言簿给我留下你的邮箱,我免费发给你哦!


海峰博客 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:利用电脑的API sapi spvoice让文字转语音
喜欢 (2)
[]
分享 (0)

您必须 登录 才能发表评论!