文字轉語音/Text to Audio

👤 figo6228-spec 📦 v1.0.0 ⭐ 4.3 ⬇️ 696 下載
🎨 設計多媒體 免費

📖 技能介紹


name: 文字轉語音(免費) description: > 使用 edge-tts 將中文或英文文本轉為自然語音 MP3。此 Skill 應在以下場景觸發: 將圖片或文本轉成語音、朗讀課文或作文、中文文字轉語音、英文文字轉語音、 TTS 文本朗讀、生成音訊 MP3、給文章配音、語音合成、 朗讀故事、課文朗讀、作文朗讀、文字轉 MP3、英文朗讀。 支援曉曉等多款中文 Neural 語音,支援 Jenny 等英文 Neural 語音,支援語速調整和語音選擇。


文字轉語音(免費)

將中文或英文文本轉為自然語音 MP3 檔案,使用微軟 Edge TTS 線上服務,聲音自然、檔案小巧、跨裝置通用。

前置條件

  • Python 3.8+ 已安裝
  • edge-tts 包已安裝(pip install edge-tts
  • 網路連線可用(需訪問微軟 TTS 雲服務)

環境初始化(首次使用時執行)

首次使用此 Skill 時,執行環境檢測指令碼確認依賴是否就緒:

python scripts/check_env.py

該指令碼會自動檢測並安裝缺失的依賴。如果網路不通,提示使用者開啟 VPN 後重試。

工作流程

步驟 1:語言檢測

儲存文本後,必須先檢測文本語言,以決定展示中文還是英文語音選項。

檢測方法:如果文本中英文字母(a-zA-Z)佔比超過 60%,判定為英文;否則判定為中文

步驟 2:讓使用者選擇語音和語速

在生成 MP3 之前,必須先讓使用者選擇語音和語速。 使用 ask_followup_question 工具向用戶展示選項,不要自行假設。

語音選擇(根據語言自動切換)

如果檢測為中文,展示中文語音選項:

問題:請選擇朗讀語音
選項:
- 曉曉(溫暖女聲,適合課文/故事朗讀)
- 小藝(活潑女聲,適合兒童故事)
- 雲希(陽光男聲,適合敘事/科普)
- 雲健(激情男聲,適合朗誦)
- 雲揚(專業男聲,適合新聞/說明文)

如果檢測為英文,展示英文語音選項:

問題:請選擇朗讀語音
選項:
- Jenny(溫暖女聲,適合朗讀/故事,推薦)
- Aria(自信女聲,適合新聞/敘述)
- Emma(活潑女聲,適合對話/講解)
- Guy(激情男聲,適合朗誦/敘事)
- Christopher(權威男聲,適合新聞/分析)
- Michelle(親切女聲,適合日常敘述)

語速選擇(輸入式)

語速使用 三選一 + 數字輸入 形式,讓使用者填寫具體百分比:

問題:請選擇朗讀語速(在方括號中填寫數字,0 為正常語速,負數更慢,正數更快)
選項:
- A 略慢 [  ]%(推薦填 10,即 -10%)
- B 正常語速
- C 略快 [  ]%(推薦填 10,即 +10%)

使用者選擇 A 或 C 時,解析其填寫的數字作為 rate 值: - 選 A + 填 10 → --rate -10 - 選 B → --rate +0 - 選 C + 填 10 → --rate +10

如果使用者沒有填寫數字,使用推薦預設值(A 為 -10,C 為 +10)。

如果使用者在對話中已經明確指定了語音或語速(如"用曉曉的聲音"、"讀慢一點"),則直接使用使用者的選擇,無需再次詢問。

流程 A:圖片轉語音(最常見)

  1. 識別圖片文字 — 讀取使用者上傳的圖片,識別其中的文字內容
  2. 儲存文本 — 將識別的文字儲存為 .txt 檔案(UTF-8 編碼)
  3. 語言檢測 — 判斷文本語言

    想要更強大的技能外掛,就來小蔥技能站7w4.net看看吧。

  4. 讓使用者選擇語音和語速 — 根據語言展示對應語音選項 + 語速選項
  5. 生成 MP3 — 根據使用者選擇呼叫 scripts/tts_generate.py 生成 MP3 檔案

流程 B:文本轉語音(使用者直接提供文本)

  1. 儲存文本 — 將使用者提供的文字儲存為 .txt 檔案
  2. 語言檢測 — 判斷文本語言
  3. 讓使用者選擇語音和語速 — 根據語言展示對應語音選項 + 語速選項
  4. 生成 MP3 — 根據使用者選擇呼叫生成指令碼

流程 C:批次轉換

  1. 語言檢測 — 判斷文本語言
  2. 讓使用者選擇預設語音和語速 — 根據語言展示對應語音選項 + 語速選項
  3. 生成批次配置 — 建立 JSON 配置檔案
  4. 執行批次生成 — 使用 --batch 引數

核心指令碼用法

單檔案生成

python scripts/tts_generate.py <文本檔案> [選項]
引數 說明 預設值
--output, -o 輸出 MP3 檔案路徑 <輸入名>_<語音別名>.mp3
--voice, -v 語音別名或完整 ID xiaoxiao(中文)/ jenny(英文)
--rate, -r 語速調整 +0%
--batch, -b 批次模式,傳入 JSON 配置檔案

常用示例

# 中文預設(曉曉女聲,正常語速)
python scripts/tts_generate.py story.txt

# 中文活潑女聲 + 略慢語速(適合小學課文朗讀)
python scripts/tts_generate.py story.txt --voice xiaoyi --rate -10

# 英文預設(Jenny女聲,正常語速)
python scripts/tts_generate.py english.txt --voice jenny

# 英文男聲 + 略慢語速
python scripts/tts_generate.py english.txt --voice guy --rate -10

# 指定輸出檔名
python scripts/tts_generate.py story.txt -o my_story.mp3

# 批次模式
python scripts/tts_generate.py --batch batch_config.json

批次配置檔案格式

{
  "defaults": { "voice": "xiaoxiao", "rate": "-10%" },
  "files": [
    { "input": "story.txt", "output": "story.mp3" },
    { "input": "essay.txt", "output": "essay.mp3", "voice": "xiaoyi" }
  ]
}

語音別名速查

中文語音

使用者選擇 別名(指令碼引數) 性別 氣質 推薦場景
曉曉 xiaoxiao 溫暖 課文/故事朗讀(預設)
小藝 xiaoyi 活潑 兒童故事
雲希 yunxi 陽光 敘事/科普
雲健 yunjian 激情 朗誦
雲揚 yunyang 專業 新聞/說明文

英文語音

使用者選擇 別名(指令碼引數) 性別 氣質 推薦場景
Jenny jenny 溫暖 朗讀/故事(預設英文)
Aria aria 自信 新聞/敘述
Emma emma 活潑 對話/講解
Guy guy 激情 朗誦/敘事
Christopher christopher 權威 新聞/分析
Michelle michelle 親切 日常敘述

使用者選擇"Jenny" → 指令碼引數 --voice jenny

語速選項速查

使用者選擇 指令碼引數 說明
A 略慢 10 --rate -10 適合課文朗讀(推薦)
A 略慢 20 --rate -20 適合跟讀/低年級
B 正常語速 --rate +0 預設語速
C 略快 10 --rate +10 快速瀏覽

使用者選"A 略慢"且填 15 → 指令碼引數 --rate -15

注意事項

  • edge-tts 需要網路連線,如生成失敗先檢查網路
  • 輸出為 MP3 格式,任何裝置均可播放
  • 檔案大小約 0.5-1MB/分鐘音訊,遠小於 WAV 格式
  • 無需 API Key,完全免費
  • 中文語音讀英文會有口音,英文語音讀中文效果也差,請根據文本語言選擇對應語音組

🤖 AI 評測

這個 Skill 質量不錯,文件寫得非常詳細清晰,普通使用者也能看懂怎麼用。它把文字轉語音的流程安排得很清楚,還提供了多種中英文語音可選,基本能滿足朗讀課文、故事配音等日常需求。美中不足的是使用時必須聯網,如果網路不好就用不了。另外批次轉換功能的說明稍微簡略了些,選項不多。總體來說瑕不掩瑜,是一個實用且易用的文字轉語音工具。

📊 多維度評分

適應性4.5
規範性4.6
有效性4.1
可靠性4
可信度4.4

📁 包含檔案 (5 個)

📄 SKILL.md 7.3 KB
📄 _meta.json 132 B
📄 references/voice_catalog.md 2.6 KB
📄 scripts/check_env.py 3.1 KB
📄 scripts/tts_generate.py 7.3 KB