mcpField
E
elevenlabs-tts

elevenlabs-tts

github.com/jechearte创意与媒体179 次安装36 周前更新
代码仓库

关于 elevenlabs-tts

elevenlabs-tts 可通过 ElevenLabs API 将文本生成语音音频,面向需要合成旁白或文档音频的用户。它提供 Python 脚本,可选默认或指定音色,并将结果保存为音频文件。

主要功能

  1. 01文本转语音生成
  2. 02使用默认或自定义音色 ID
  3. 03将音频保存到指定路径
  4. 04通过环境变量或参数提供 API 密钥

适用场景

  1. 01制作视频旁白
  2. 02将 Markdown 或文本转换为音频
  3. 03为不同内容片段分别生成音频

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/jechearte/skills --skill elevenlabs-tts

安装后在 Claude Code 中输入/elevenlabs-tts确认已加载。

附带文件scripts/generate_audio.py

详细介绍

ElevenLabs 文本转语音

使用 ElevenLabs API 将文本转换为高质量音频。

前提条件

  1. ElevenLabs API 密钥:必须设置为环境变量 ELEVEN_API_KEY

  2. Python requests 库:如有需要,使用 pip install requests --break-system-packages 安装

快速开始

使用提供的脚本,通过默认语音生成音频:

python scripts/generate_audio.py "Your text here" output.mp3

该脚本已预先配置为使用你偏好的语音(ID:dq5fzy66iCKSIQWm5YMU)。

使用其他语音

如果需要使用其他语音,请通过 --voice 参数指定:

python scripts/generate_audio.py "Hello world" output.mp3 --voice "voice_id_here"

常见工作流

视频配音
  1. 准备脚本文本
  2. 为内容选择合适的语音
  3. 生成音频文件
  4. 在视频编辑软件中使用音频

示例:

# Read script from file and generate audio
python scripts/generate_audio.py "$(cat video_script.txt)" voiceover.mp3
多个片段

对于较长的内容或不同场景,可分别生成音频文件:

# Intro
python scripts/generate_audio.py "Welcome to our channel" intro.mp3

# Main content
python scripts/generate_audio.py "$(cat main_script.txt)" main.mp3

# Outro
python scripts/generate_audio.py "Thanks for watching" outro.mp3
从 Markdown 或文本文件生成

将文档转换为音频:

# Extract text from markdown (remove formatting)
python scripts/generate_audio.py "$(cat article.md | sed 's/#//g')" article.mp3

高级用法

自定义语音 ID

如果你可以使用自定义语音,或想使用特定的语音 ID:

python scripts/generate_audio.py "Text" output.mp3 --voice "your_voice_id_here"
直接提供 API 密钥

无需设置环境变量,直接提供 API 密钥:

python scripts/generate_audio.py "Text" output.mp3 --api-key "your_api_key"

脚本参数

generate_audio.py 脚本接受以下参数:

  • text(必填):要转换为语音的文本
  • output(必填):输出文件路径(例如,output.mp3)
  • --voice(可选):自定义语音 ID(默认值:dq5fzy66iCKSIQWm5YMU)
  • --api-key(可选):API 密钥(优先于 ELEVEN_API_KEY 环境变量)

最佳实践

  1. 文本长度:为获得最佳效果,单次请求的文本不要超过 2,500 个字符
  2. 字符限额:留意每月字符额度,避免服务中断
  3. 文件命名:使用描述性名称(例如,intro_v2.mp3、scene1_narration.mp3)
  4. 测试:先生成一段简短样例,在处理长文本前确认质量
  5. 标点:正确使用标点,以改善语音的自然节奏和停顿

故障排除

API 密钥错误:确保已正确设置 ELEVEN_API_KEY:

echo $ELEVEN_API_KEY  # Should display your key

找不到模块:安装 requests:

pip install requests --break-system-packages

速率限制:免费套餐有使用限制。请间隔发送请求或升级套餐。

音频质量较差:尝试不同的语音,或调整文本(添加标点、拆分为较短的句子)。

资源

评论

支持 Markdown