generate.sh.in
1.9 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
#!/usr/bin/env bash
# Copyright 2025 Xiaomi Corp. (authors: Fangjun Kuang)
#
# Auto generated! Do NOT edit!
set -ex
log() {
# This function is from espnet
local fname=${BASH_SOURCE[1]##*/}
echo -e "$(date '+%Y-%m-%d %H:%M:%S') (${fname}:${BASH_LINENO[0]}:${FUNCNAME[1]}) $*"
}
wget -qq https://github.com/k2-fsa/sherpa-onnx/releases/download/tts-models/espeak-ng-data.tar.bz2
tar xf espeak-ng-data.tar.bz2
rm espeak-ng-data.tar.bz2
mkdir -p release
{% for model in model_list %}
name={{ model.name }}
kind={{ model.kind }}
lang={{ model.lang }}
model_name={{ model.model_name }}
text="{{ model.text }}"
num_speakers={{ model.ns }}
sample_rate={{ model.sr }}
{{ model.cmd }}
echo "files"
ls -lh
echo "---"
python3 ./add_meta_data.py \
--name $name \
--kind $kind \
--lang $lang
dst=vits-piper-$lang-$name-$kind
dst_int8=vits-piper-$lang-$name-$kind-int8
dst_fp16=vits-piper-$lang-$name-$kind-fp16
mkdir -p $dst
mv -v tokens.txt $dst/
mv -v MODEL_CARD $dst/ || true
mv -v README $dst/ || true
mv -v README.md $dst/ || true
mv -v LICENSE.txt $dst/ || true
mv -v *.json $dst/
cp -a ./espeak-ng-data $dst/
cp -a $dst $dst_int8
cp -a $dst $dst_fp16
mv -v *.onnx $dst/
python3 ./dynamic_quantization.py \
--input $dst/$model_name \
--output-int8 $dst_int8/$model_name \
--output-fp16 $dst_fp16/$model_name >/dev/null 2>&1
echo "---fp32---"
ls -lh $dst
echo "---int8---"
ls -lh $dst_int8
echo "---fp16---"
ls -lh $dst_fp16
tar cjf ${dst}.tar.bz2 $dst
tar cjf ${dst_int8}.tar.bz2 $dst_int8
tar cjf ${dst_fp16}.tar.bz2 $dst_fp16
if [ -d hf ]; then
mkdir -p hf/piper/mp3/$lang/vits-piper-$lang-$name-$kind
for i in $(seq $num_speakers); do
i=$((i-1))
python3 ./generate_samples-$dst-$i.py
done
ls -lh hf/piper/mp3/$lang/vits-piper-$lang-$name-$kind
fi
mv $dst release
mv $dst_int8 release
mv $dst_fp16 release
ls -lh release/*
{% endfor %}