TTS训练数据高效准备指南
针对数据准备的完整链路优化方案:
自动化采集
- 语音切割:使用PyAnnote切分长音频:
from pyannote.audio import Pipeline
pipeline = Pipeline.from_pretrained('pyannote/voice-activity-detection') - 文本清洗:正则表达式过滤特殊字符
import re
re.sub(r'[^ws]', '', text)
质量管控
- 三阶质检法:
1. 自动过滤信噪比<30dB的音频
2. 用Librosa检测静音片段占比
3. 人工抽查10%样本 - 标注工具链:推荐使用Audacity+JSON标注的配套方案
数据增强
- 参数化增强:使用torchaudio动态调整:
torchaudio.sox_effects.apply_effects_file('input.wav', effects=[
['speed', '0.9'], ['pitch', '50']])
推荐将数据预处理脚本封装为Pipeline,支持增量更新。
本答案来源于文章《Spark-TTS:生成自然语音的文本转语音工具》