Initial commit for TTS project

This commit is contained in:
Ben
2026-01-19 10:27:41 +08:00
commit a9abd3913d
160 changed files with 11031 additions and 0 deletions

80
scripts/character_init.py Normal file
View File

@@ -0,0 +1,80 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
角色初始化脚本
为播客中的各个角色进行初始化设置
"""
import os
class PodcastCharacter:
def __init__(self, name, role, accent, voice_model, description):
self.name = name
self.role = role
self.accent = accent
self.voice_model = voice_model
self.description = description
def __str__(self):
return f"{self.name} ({self.role}): {self.description}\n 推荐语音: {self.voice_model}\n 风格: {self.accent}\n"
# 定义所有角色
characters = [
PodcastCharacter(
name="Sonia",
role="Host (主持人)",
accent="冷静、客观、甚至带点冷幽默",
voice_model="Edge TTS 的 en-GB-RyanNeural或 en-US-JennyNeural",
description="主持人,负责引导对话"
),
PodcastCharacter(
name="Graham",
role="硅谷",
accent="典型的 American Tech Bro语速快自信",
voice_model="Edge TTS 的 en-US-GuyNeural 或 en-US-ChristopherNeural",
description="硅谷科技人士视角"
),
PodcastCharacter(
name="Dmitri",
role="俄罗斯",
accent="深沉,重音在后",
voice_model="Edge TTS 没有原生俄式英语。替代方案:用 en-IE-ConnorNeural爱尔兰音",
description="俄罗斯视角"
),
PodcastCharacter(
name="Amita",
role="印度",
accent="语速快,清晰的印度口音",
voice_model="Edge TTS 的 en-IN-NeerjaNeural或 en-IN-PrabhatNeural",
description="印度视角"
),
PodcastCharacter(
name="穆罕默德",
role="中东",
accent="沧桑,缓慢",
voice_model="en-EG-SalmaNeural埃及英语或其他深沉男声",
description="中东视角"
),
PodcastCharacter(
name="Author",
role="作者",
accent="分析性,权威性",
voice_model="Edge TTS 的 en-US-GuyNeural",
description="本书作者,提供深入分析"
)
]
def initialize_characters():
"""初始化所有角色"""
print("=== 播客角色初始化 ===\n")
for i, character in enumerate(characters, 1):
print(f"{i}. {character}")
print()
print("=== 初始化完成 ===")
print("\n所有角色已根据 chapter8.md 中的设定完成初始化。")
print("音频模型已指定,可根据需要生成对应语音。")
if __name__ == "__main__":
initialize_characters()