Edge-tts

来自泡泡学习笔记
BrainBs讨论 | 贡献2023年8月3日 (四) 07:15的版本 (创建页面,内容为“ <code>edge-tts</code> 是一个可以让你在Python代码中使用Microsoft Edge的在线文本到语音服务的Python模块,或者使用提供的 <code>edge-tts</code> 或 <code>edge-playback</code> 命令进行操作。 == 安装 == 要安装它,请运行以下命令: <pre>$ pip install edge-tts</pre> 如果你只想使用 <code>edge-tts</code> 和 <code>edge-playback</code> 命令,最好使用 pipx: <pre>$ pipx install edge-tts</pre> == 使…”)
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳到导航 跳到搜索

edge-tts 是一个可以让你在Python代码中使用Microsoft Edge的在线文本到语音服务的Python模块,或者使用提供的 edge-ttsedge-playback 命令进行操作。

安装

要安装它,请运行以下命令:

$ pip install edge-tts

如果你只想使用 edge-ttsedge-playback 命令,最好使用 pipx:

$ pipx install edge-tts

使用方法

基本用法

如果你想使用 edge-tts 命令,只需运行以下命令即可:

$ edge-tts --text "Hello, world!" --write-media hello.mp3 --write-subtitles hello.vtt

如果你希望立即播放带有字幕的语音,可以使用 edge-playback 命令:

$ edge-playback --text "Hello, world!"

请注意,以上命令需要安装 mpv 命令行播放器。

所有的 edge-tts 命令在 edge-playback 中也都可以使用。

更改语音

如果你想更改语音的语言或者更一般地说,更改语音。

你首先可以通过 --list-voices 选项检查可用的语音:

$ edge-tts --list-voices
名称: Microsoft Server Speech Text to Speech Voice (af-ZA, AdriNeural)
简称: af-ZA-AdriNeural
性别: 女性
区域设置: af-ZA

名称: Microsoft Server Speech Text to Speech Voice (am-ET, MekdesNeural)
简称: am-ET-MekdesNeural
性别: 女性
区域设置: am-ET

名称: Microsoft Server Speech Text to Speech Voice (ar-EG, SalmaNeural)
简称: ar-EG-SalmaNeural
性别: 女性
区域设置: ar-EG

名称: Microsoft Server Speech Text to Speech Voice (ar-SA, ZariyahNeural)
简称: ar-SA-ZariyahNeural
性别: 女性
区域设置: ar-SA

...

$ edge-tts --voice ar-EG-SalmaNeural --text "..." --write-media hello_in_arabic.mp3 --write-subtitles hello_in_arabic.vtt

更改语速和音量

可以对生成的语音进行轻微的更改。

$ edge-tts --rate=-50% --text "Hello, world!" --write-media hello_with_rate_halved.mp3 --write-subtitles hello_with_rate_halved.vtt
$ edge-tts --volume=-50% --text "Hello, world!" --write-media hello_with_volume_halved.mp3 --write-subtitles hello_with_volume_halved.vtt

此外,必须使用 --rate=-50% 而不是 --rate -50%(注意等号的缺失),否则 -50% 将被解释为另一个参数。

关于 edge-playback 命令的注意事项

edge-playback 只是围绕 edge-tts 的一个包装器,用于播放生成的语音。它接受与 edge-tts 选项相同的参数。


参数

-h, --help

显示帮助信息。


-t TEXT, --text TEXT

输入文本。


-f FILE, --file FILE

输入文本文件。


-v VOICE, --voice VOICE

使用的声音。默认为en-US-AriaNeural。


-l, --list-voices

显示可用的声音。


--rate RATE

声音速率。默认为+0%。


--volume VOLUME

声音音量。默认为+0%。


--words-in-cue WORDS_IN_CUE

单条字幕的包含的单词个数。默认为10。


--write-media WRITE_MEDIA

输出音频到指定文件中。


--write-subtitles WRITE_SUBTITLES

输出字幕到指定文件中。


--proxy PROXY

使用指定代理。