当前位置:   article > 正文

使用Gradio+TTS制作文本转语音web工具_gradio 语音

gradio 语音

需求

使用Gradio + TTS 生成文本转语音工具,TTS生成的.wav文件存储在本地,然后通过librosa工具读取文件并返回给Gradio。

主要问题

尝试了很多个语音工具,只有librosa返回的数据格式能够很好地与Gradio兼容。

librosa.load()返回:data:音频时间序列 sr :音频的采样率
https://librosa.org/doc/latest/tutorial.html
在这里插入图片描述

代码

import gradio as gr
from TTS.api import TTS
import librosa

title = "文本转语音"

def generateAudio(text):
    #由于TTS无法很好地处理回车符和空格,需要对text里的回车符进行替换
    text = text.replace("\n",",")
    text = text.replace(" ","")
    tts = TTS(model_name="tts_models/zh-CN/baker/tacotron2-DDC-GST", progress_bar=True, gpu=False)
    tts.tts_to_file(text,file_path="output.wav") 
    
    audio, sr = librosa.load(path="output.wav")
    
    return  sr,audio

app = gr.Interface(
    fn=generateAudio, 
    inputs="text", 
    outputs="audio", 
    title=title,
    examples=[os.path.join(os.path.dirname(__file__),"output.wav")]
    )

app.launch()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26

效果

在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/黑客灵魂/article/detail/837198
推荐阅读
相关标签
  

闽ICP备14008679号