随手剪-多角色文字转语音的实现

随手剪-多角色文字转语音的实现

制作多人有声书、多人对话、情景剧等等

使用说明

2026-06-10_212329

1. 基本朗读

  • 在文本框中输入文字,点击“朗读文字”即可朗读。
  • 若文本框内容不含 [角色名] 格式,则使用默认角色(晓晓)进行单角色朗读。
  • 若内容包含 [角色名] 格式(如 [云希]你好),则自动进入多角色对话模式,每个角色使用对应的语音。

2. 多角色对话格式

  • 格式:[角色名] 说话内容
  • 示例:
    [云扬] 你好,我是云扬。
    [晓伊] 很高兴认识你!
  • 第一个角色前的内容会自动使用默认角色(晓晓)朗读。
  • 支持的角色列表见“语音角色介绍”标签页。

3. 语音参数调节

  • 语速:-50% ~ +50%,负数减慢,正数加快。模拟老年声音可-25%左右
  • 音量:-100% ~ +100%,负数降低,正数增大。
  • 音调:-500Hz ~ +500Hz,负数低沉,正数尖锐。模拟童声可+50Hz,老年声可-35Hz左右
  • 滑动滑块即时生效,下次朗读时应用。

4. 环境保存与加载

  • 保存环境:将当前文本框内容和三个参数保存为 JSON 文件。
  • 加载环境:从 JSON 文件恢复文本和参数,再次编辑输出。

5. 右键菜单

  • 在文本框内右键点击,可进行复制、粘贴、剪切、查找、替换、撤销、重做等操作。

6. 停止朗读

  • 点击“停止朗读”可立即中断当前播放的音频(包括正在生成的对话)。

7. 保存音频

  • 朗读完成后,“保存音频”按钮可用,可将最后生成的音频(单句或完整对话)保存为 MP3 文件。

8. 系统要求

  • 需要联网(Edge TTS 在线生成)。
  • 建议安装 FFmpeg(ffplay)以实现无窗口播放,否则将使用系统默认播放器。

9.🎙️ 支持的角色及特点

【云希】- 活泼年轻的男声,适合快节奏解说、短视频配音-中文语音
【晓伊】- 温柔知性的女声,适合情感类内容朗读-中文语音
【云扬】- 浑厚沉稳的男声,偏向传统播音腔,适合新闻播报-中文语音
【云健】- 稳重可靠的男声,质感偏实,适合产品介绍-中文语音
【云夏】- 质感实在的男声,音调转折明显-中文语音
【晓晓】- 标准女声,自然流畅,默认角色-中文语音
【晓北】- 东北话女声,亲切幽默
【晓妮】- 陕西话女声,韵味独特
【晓雨】- 台湾国语女声,柔和可爱
【慧敏】- 粤语女声(香港)
【云龙】- 粤语男声(香港)
【小艾】- 英文新闻女声(美国)
【小克】- 英文新闻男声(美国)
【小凯】- 德语女声(德国)
【小孔】- 德语男声(德国)
💡 提示:未在列表中的角色名将自动使用默认角色(晓晓)。

10. 基本原理
将不同角色逐个生成语音片段,通过pydub合并音频

import asyncio
from edge_tts import Communicate

async def text_to_speech():
    # 1. 准备纯净的中文文本,不要包含任何SSML标签
    text_content = "各位乡亲父老,想当年,我走南闯北的时候,还不是靠着一股子硬气!"

    # 2. 创建Communicate对象,将SSML属性直接作为参数传入
    # 注意参数用法:
    #   text: 要转换的纯文本
    #   voice: 音色 (建议使用"zh-CN-YunyangNeural")
    #   rate: 语速,此处降低20%以模拟老人语速
    #   pitch: 音调,此处降低25Hz使声音低沉
    #   volume: 音量,此处降低15%体现气息不足
    communicate = Communicate(
        text=text_content,
        voice="zh-CN-YunyangNeural",
        rate="-40%",
        pitch="-15Hz", 
        volume="-10%"
    )

    # 3. 保存音频文件
    await communicate.save("old_man_speech.mp3")
    print("语音生成成功!")

if __name__ == "__main__":
    asyncio.run(text_to_speech())

作者:高山羊止
反馈:https://www.cnblogs.com/igaoyuan/p/20403478

下载地址

x64版 v2.3
https://wwbur.lanzoul.com/ik60p3rkvaah

x86版
待上传

更新网盘:
https://www.123912.com/s/xntA-xcfbv

黄金问答

运行环境

  • x64版在x64Win10/11下测试正常
  • x86版在x64及x86的Win7/8/10/11运行正常
  • 360会对Python打包程序普遍性误报
  • 功能依赖edge-tts

posted on 2026-06-10 21:24  igaoyuan  阅读(26)  评论(0)    收藏  举报

导航