Use piper-phonemize to convert text to token IDs (#453)
This commit is contained in:
1
nodejs-examples/.gitignore
vendored
1
nodejs-examples/.gitignore
vendored
@@ -1,2 +1,3 @@
|
||||
node_modules
|
||||
lib
|
||||
package-lock.json
|
||||
|
||||
@@ -42,15 +42,14 @@ In the following, we demonstrate how to run text-to-speech.
|
||||
## ./test-offline-tts-en.js
|
||||
|
||||
[./test-offline-tts-en.js](./test-offline-tts-en.js) shows how to use
|
||||
a VITS pretrained model
|
||||
[VCTK](https://k2-fsa.github.io/sherpa/onnx/tts/pretrained_models/vits.html#vctk-english-multi-speaker-109-speakers)
|
||||
[vits-piper-en_US-amy-low.tar.bz2](https://github.com/k2-fsa/sherpa-onnx/releases/download/tts-models/vits-piper-en_US-amy-low.tar.bz2)
|
||||
for text-to-speech.
|
||||
|
||||
You can use the following command to run it:
|
||||
|
||||
```bash
|
||||
wget -q https://github.com/k2-fsa/sherpa-onnx/releases/download/tts-models/vits-vctk.tar.bz2
|
||||
tar xvf vits-vctk.tar.bz2
|
||||
wget -q https://github.com/k2-fsa/sherpa-onnx/releases/download/tts-models/vits-piper-en_US-amy-low.tar.bz2
|
||||
tar xvf vits-piper-en_US-amy-low.tar.bz2
|
||||
node ./test-offline-tts-en.js
|
||||
```
|
||||
|
||||
|
||||
@@ -4,9 +4,9 @@ const sherpa_onnx = require('sherpa-onnx');
|
||||
|
||||
function createOfflineTts() {
|
||||
const vits = new sherpa_onnx.OfflineTtsVitsModelConfig();
|
||||
vits.model = './vits-vctk/vits-vctk.onnx';
|
||||
vits.lexicon = './vits-vctk/lexicon.txt';
|
||||
vits.tokens = './vits-vctk/tokens.txt';
|
||||
vits.model = 'vits-piper-en_US-amy-low/en_US-amy-low.onnx'
|
||||
vits.tokens = './vits-piper-en_US-amy-low/tokens.txt';
|
||||
vits.dataDir = './vits-piper-en_US-amy-low/espeak-ng-data'
|
||||
|
||||
const modelConfig = new sherpa_onnx.OfflineTtsModelConfig();
|
||||
modelConfig.vits = vits;
|
||||
@@ -18,10 +18,11 @@ function createOfflineTts() {
|
||||
}
|
||||
|
||||
const tts = createOfflineTts();
|
||||
const speakerId = 99;
|
||||
const speakerId = 0;
|
||||
const speed = 1.0;
|
||||
const audio =
|
||||
tts.generate('Good morning. How are you doing?', speakerId, speed);
|
||||
const audio = tts.generate(
|
||||
'“Today as always, men fall into two groups: slaves and free men. Whoever does not have two-thirds of his day for himself, is a slave, whatever he may be: a statesman, a businessman, an official, or a scholar.”',
|
||||
speakerId, speed);
|
||||
audio.save('./test-en.wav');
|
||||
console.log('Saved to test-en.wav successfully.');
|
||||
tts.free();
|
||||
|
||||
Reference in New Issue
Block a user