使用Kotlin + JetPack Compose + Tensorflow Lite开发的TTS引擎,可以完全离线使用。
可选两种模型:FastSpeech和Tacotron,这两种模型均来自TensorFlowTTS
文字转拼音方法来自:TensorflowTTS_chinese
因为是实时推理输出音频,故对设备性能有一定要求。
其中FastSpeech速度较快,但生成的音频拟人效果较差,可以用于普通中端以上手机。
而Tacotron对性能要求较高,虽然总体效果更好,但因为速度很慢,故目前实用价值不大,仅供测试。
├─app/src/main/assets
│ baker_mapper.json
│ fastspeech2_quan.tflite
│ mb_melgan.tflite
│ tacotron2_quan.tflite
./gradlew assembleRelease
裁剪前后的arr文件大小对比:
$ git clone https://github.com/TensorSpeech/TensorFlowTTS.git
$ cd TensorFlowTTS
$ pip install .
$ pip install git+https://github.com/repodiac/german_transliterate.git
$ cd models-tf
$ python test-h5.py
$ python convert-tflite.py