用Python解锁微软Edge的文本转语音服务

本文涉及的产品
语音服务,语音通知 50分钟
简介: 近来,TTS模型工具给大家也分享了不少,对于一些小白或有需要的人是提供了一个额外的选项。但作为编程人员/研发人员,或者需要集成TTS服务的人来说,好像又有点麻烦。今天就为大家分享一个非常有趣的项目—edge-tts。

近来,TTS模型工具给大家也分享了不少,对于一些小白或有需要的人是提供了一个额外的选项。


但作为编程人员/研发人员,或者需要集成TTS服务的人来说,好像又有点麻烦。


今天就为大家分享一个非常有趣的项目—edge-tts。

1720592624437.jpg

这个项目其实是一个 Python 三方模块,允许你使用 Microsoft Edge 的在线文本转语音服务,可以通过Python 代码进而使用提供的edge-tts和edge-playback命令。

可能你们会问,为什么要用这个模块?


简单来说,这个模块的效果媲美 ChatTTS,并且支持多种方言,比如粤语、陕西话和台湾话等,非常实用。


最主要的是,使用 edge-tts 不需要安装 Microsoft Edge 浏览器 或 借助Windows系统,也不需要 API 密钥。这意味着无论你用什么操作系统,只要有 Python 环境,就可以轻松上手。


项目地址在下方,有兴趣的朋友可以直接去 GitHub 查看项目详情。


GitHub项目地址:https://github.com/rany2/edge-tts

1720592706855.jpg

我们生活在一个信息爆炸的时代,每天都有大量的信息涌入我们的视野。如何高效地获取和处理这些信息,成为了每个人都需要面对的问题。


这里,文本转语音技术就派上了用场。从 AI 到人性化,试想一下,当你开车、跑步或者做家务时,能够通过耳朵获取信息,是不是大大提高了效率?这不仅仅是科技的进步,更是生活方式的改变。


而 edge-tts 更是将这种便捷性提升到了一个新的高度。我们不再需要复杂的配置,不再需要担心平台的兼容性,只需要简单的几行代码,就可以将文字转化为生动的语音。

而且,支持多种方言的特性,更是让它在实际应用中如虎添翼。想象一下,用陕西话给你的亲朋好友读一段文字,或者用粤语播放一则新闻,这种体验是非常独特且贴近生活的。


最开始的时候,可以试着用它来转换一些简单的文本。比如,将一些文章转化为语音,然后在跑步的时候听。这种体验非常新颖,感觉就像是有一个私人播音员随时随地为我们服务。


随着使用的深入,我开始尝试一些更复杂的应用场景。比如,将集成到我的一些自动化脚本中,帮助我在完成某些任务后,自动播报结果。当然我相信,edge-tts 的潜力远不止于此。

如何在 Python 代码中使用 edge-tts 模块?

1.安装 edge-tts 模块:

pip install edge-tts

2.在代码中导入 edge-tts 模块:

import edge_tts

3.创建 Communicate 对象:

communicate = edge_tts.Communicate()

4.使用 say() 方法将文本转换为语音:

communicate.say("你好,这是一个 edge-tts 的示例。")

5.如果需要将语音保存为音频文件,可以使用 save() 方法:

communicate.save("output.mp3", "你好,这是一个保存为音频文件的示例。")

6.如果需要立即播放语音,可以使用 play() 方法:

communicate.play("你好,这是一个立即播放的示例。")

当然,官方建议我们直接使用edge-tts和edge-playback两种命令行工具。


edge-playback: 将文本转换为语音并立即播放。


edge-tts: 将文本转换为语音并保存为音频文件。


比如使用edge-tts命令保存为MP3音频

$ edge-tts --text "走啊,出去吃火锅吧!" --write-media demo.mp3 --write-subtitles demo.vtt

比如使用edge-playback命令直接生成结果并播放音频

$ edge-playback --text "走啊,出去吃火锅吧!"

个别的参数说明:

  • --write-media:用于指定将生成的语音音频文件保存到哪个位置。
  • --write-subtitles:用于生成与语音同步的字幕文件。字幕文件默认为 .vtt 格式,可以用于视频播放器中显示字幕。
  • --language:指定语音,中文就在后面跟着写"zh-CN"
  • --gender:可设置男女音色, "female"/"male"。
  • --pitch:音高,取值范围为 -1.0 到 1.0。


像一些音量高低,速率大小等参数也可以进行自定义设置。

使用VoicesManager的动态语音(完整代码例子):

基础使用例子:

利用 edge-tts,可以做很多场景下的事情,不论做提效,还是做延伸产品,都是OK的。


上手很容易,无论你是技术小白,还是经验丰富的开发者,都可以从中找到乐趣和实用的价值。

相关文章
|
12天前
|
数据采集 算法 数据可视化
基于Python的k-means聚类分析算法的实现与应用,可以用在电商评论、招聘信息等各个领域的文本聚类及指标聚类,效果很好
本文介绍了基于Python实现的k-means聚类分析算法,并通过微博考研话题的数据清洗、聚类数量评估、聚类分析实现与结果可视化等步骤,展示了该算法在文本聚类领域的应用效果。
|
2天前
|
机器学习/深度学习 人工智能 自然语言处理
【自然语言处理】python之人工智能应用篇——文本生成技术
文本生成是指使用自然语言处理技术,基于给定的上下文或主题自动生成人类可读的文本。这种技术可以应用于各种领域,如自动写作、聊天机器人、新闻生成、广告文案创作等。
17 8
|
10天前
|
存储 自然语言处理 数据可视化
【python】python水浒传小说文本分析词云可视化(源码+文本+报告)【独一无二】
【python】python水浒传小说文本分析词云可视化(源码+文本+报告)【独一无二】
|
10天前
|
自然语言处理 数据可视化 数据挖掘
【python】python新闻文本数据统计和聚类 (源码+文本)【独一无二】
【python】python新闻文本数据统计和聚类 (源码+文本)【独一无二】
|
21天前
|
数据采集 网络协议 数据挖掘
网络爬虫进阶之路:深入理解HTTP协议,用Python urllib解锁新技能
【7月更文挑战第30天】网络爬虫是数据分析和信息聚合的关键工具。深入理解HTTP协议及掌握Python的urllib库对于高效爬虫开发至关重要。HTTP协议采用请求/响应模型,具有无状态性、支持多种请求方法和内容协商等特点。
21 3
|
22天前
|
机器学习/深度学习 数据挖掘 TensorFlow
🔍揭秘Python数据分析奥秘,TensorFlow助力解锁数据背后的亿万商机
【7月更文挑战第29天】在数据丰富的时代,Python以其简洁和强大的库支持成为数据分析首选。Pandas库简化了数据处理与分析,如读取CSV文件、执行统计分析及可视化销售趋势。TensorFlow则通过深度学习技术挖掘复杂数据模式,提升预测准确性。两者结合助力商业决策,把握市场先机,释放数据巨大价值。
34 4
|
1月前
|
机器学习/深度学习 自然语言处理 TensorFlow
使用Python实现深度学习模型:文本生成与自然语言处理
【7月更文挑战第14天】 使用Python实现深度学习模型:文本生成与自然语言处理
44 12
|
1月前
|
供应链 数据挖掘 数据处理
聚合数据,洞察未来!Python聚合术,解锁数据背后的商业密码!
【7月更文挑战第19天】数据聚合整合分散数据,揭示隐藏模式,助力企业决策。Python的Pandas与NumPy库简化了这一过程,提供高效的数据处理。例如,通过Pandas的groupby和agg函数,可以按产品ID和日期聚合销售数据,计算每日销量和收入。聚合后,企业可洞察产品销售趋势、季节性变化,优化策略,预测需求。Python丰富的资源和活跃社区支持各层次用户进行数据探索。
44 7
|
6天前
|
SQL 分布式计算 算法
【python】python指南(三):使用正则表达式re提取文本中的http链接
【python】python指南(三):使用正则表达式re提取文本中的http链接
6 0