Skip to content

koth/kokoro.cpp

Repository files navigation

Kokoro C++ 推理

基于 ONNX Runtime 的 Kokoro TTS 模型的高性能轻量级 C++ 推理实现。本项目目前支持中英文混合合成。

特性

  • 🚀 快速推理:由 ONNX Runtime 驱动。
  • 🌏 双语支持:原生支持中文和英文。

依赖环境

  • CMake (3.14+)
  • C++ 编译器 (需要支持 C++17)
  • 可选: Python 3 (用于数据准备脚本)

数据准备

在编译之前,你需要准备模型和语音文件。

1. 下载语音包

本项目使用紧凑的二进制格式存储语音风格。你需要下载语音数据。

请从这里下载 voices-v1.1-zh.bin

2. 下载模型

下载 ONNX 模型文件。

请从这里下载 kokoro-v1.1-zh.onnx

编译

mkdir build
cmake -B build  -S .
cmake --build build --config Release

使用方法

运行 kokoro_demo 可执行文件,指定模型、语音文件和输入文本。

./kokoro_demo <模型路径> <语音文件路径> <"要朗读的文本">

示例

./build/kokoro_demo models/kokoro-v1.1-zh.onnx models/voices-v1.1-zh.bin "你好啊,这是一个测试。Hello world"

因为依赖相关词典,需要在项目根目录运行! 输出的音频将保存为当前目录下的 output.wav

项目结构

  • Kokoro.cpp/h: 主要的 TTS 类。
  • ZHFrontend.cpp/h: 中文前端(G2P、变调)。
  • scripts/: 数据处理辅助脚本。
  • dict/: G2P 字典文件(Jieba、拼音)。

许可证

MIT