当前位置: 首页 > news >正文

文字转语音 edge_tts

1、前沿

这是一款微软语音转文字的项目,不要电脑配置因为他是通过类爬虫方式把文字转语音,跟官方比起来速度会慢一点但是基本够用

https://github.com/rany2/edge-tts

2、代码封装

默认是通过命令行的方式不适合集成到我们自己的项目通过封装成接口的方式使用

@router.get("/text-to-speech", tags=["语音合成"], summary="文字转语音")
async def text_to_speech(text: str):try:file_path = await edge_tts_async(text)return FileResponse(path=file_path, media_type="audio/mp3", filename=os.path.basename(file_path))except Exception as e:return {"error": f"转换失败: {str(e)}"}import edge_ttsasync def edge_tts_async(text):num = random.randint(1, 100000000)static_dir = "static/audio"os.makedirs(static_dir, exist_ok=True)file_path = os.path.join(static_dir, f"{num}.mp3")# 从配置获取代理设置(如果有)proxy = Noneif "proxies" in GLOBAL_CONFIG and "proxy" in GLOBAL_CONFIG["proxies"]:proxy = GLOBAL_CONFIG["proxies"]["proxy"]try:# 使用edge_tts.Communicate类进行文字转语音communicate = edge_tts.Communicate(text,"zh-CN-XiaoyiNeural",proxy=proxy,connect_timeout=20,receive_timeout=60)# 保存音频文件await communicate.save(file_path)return file_pathexcept Exception as e:log_error(f"文字转语音失败: {str(e)}")raise Exception(f"TTS conversion failed: {str(e)}")
http://www.xdnf.cn/news/1284517.html

相关文章:

  • Docker概述与安装Dockerfile文件
  • 大数据技术入门精讲(Hadoop+Spark)
  • 【密码学】9. 可证明安全
  • 链动 3+1 模式:重构商业增长逻辑的新引擎
  • Mac M1探索AnythingLLM+Ollama+知识库问答
  • 支持任意 MCP 协议的客户端
  • 数据可视化交互深入理解
  • 最终章【1】Epson机器人篇
  • 如何提升需求分析能力
  • maven项目打包成sdk后在别的项目使用
  • 企业级高性能WEB服务器Nginx
  • 编程技能:递归
  • B 树与 B + 树解析与实现
  • SSE流式输出分层与解耦、用户自动结束语错误处理
  • 【13-向量化-高效计算】
  • 【Redis的安装与配置】
  • 高性能Web服务器
  • CSS预处理器之Sass全面解析与实战指南
  • HTML应用指南:利用GET请求获取全国一加授权零售店位置信息
  • C5.3:发射极偏置和LED驱动电路
  • 【07-AGI的讨论】
  • 使用纯NumPy实现回归任务:深入理解机器学习本质
  • golang 基础案例_01
  • Redis 01 数据结构
  • Pytest项目_day11(fixture、conftest)
  • 【PyTorch学习笔记 - 01】 Tensors(张量)
  • C++11的历史和统一的初始化列表
  • Linux中配置DNS
  • Day01_QT编程20250811
  • MaixPy开发环境简介