当前位置: 首页 > 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.lryc.cn/news/618257.html

相关文章:

  • 微内核与插件化设计思想及其在前端项目中的应用
  • PostgreSQL 范围、空间唯一性约束
  • 用 Apache Iceberg 与 Apache Spark 在 Google Cloud 打造高性能、可扩展的数据湖仓
  • Flink运行时的实现细节
  • SQL 语言分类
  • Spark 运行流程核心组件(一)作业提交
  • 数据量暴涨时,抓取架构该如何应对?
  • 开发npm包【详细教程】
  • Bevy渲染引擎核心技术深度解析:架构、体积雾与Meshlet渲染
  • C++Linux八股
  • 08--深入解析C++ list:高效操作与实现原理
  • K8S 节点初始化一键脚本(禁用 SELinux + 关闭 swap + 开启 ipvs 亲测实用)
  • 微前端架构:原理、场景与实践案例
  • 前端JS处理时间,适用于聊天、操作记录等(包含刚刚、x分钟前、x小时前、x天前)
  • Windows已经安装了一个MySQL8,通过修改配置文件的端口号跑2个或多个Mysql服务方法,并注册为系统服务
  • lesson36:MySQL从入门到精通:全面掌握数据库操作与核心原理
  • 嵌入式系统学习Day17(文件编程)
  • 项目实战2——LAMP_LNMP实践
  • 智能化评估体系:数据生产、在线化与自动化的三重奏
  • 解锁 Appium Inspector:移动端 UI 自动化定位的利器
  • 【论文阅读】一种基于经典机器学习的肌电下肢意图检测方法,用于人机交互系统
  • Secure CRT做代理转发
  • 【element树组件】el-tree实现连接线及hover编辑效果
  • ip归属地批量查询脚本
  • 视频输入输出模块介绍和示例
  • 【Node.js从 0 到 1:入门实战与项目驱动】2.1 安装 Node.js 与 npm(Windows/macOS/Linux 系统的安装步骤)
  • history命令增强记录执行时间与登录IP
  • 线性代数 · 矩阵 | 最小多项式
  • 【debug 解决 记录】stm32 debug模式的时候可以运行,但是烧录没法执行
  • Mac如何安装telnet命令