palmtts / start.sh
Thursday88's picture
Upload 3 files
9e763fd verified
Raw
History Blame Contribute Delete
924 Bytes
#!/usr/bin/env bash
set -euo pipefail
VOICES_DIR="${VOICES_DIR:-/voices}"
HF_BASE="https://huggingface.co/rhasspy/piper-voices/resolve/main"
mkdir -p "${VOICES_DIR}"
# Medium-quality voices — much more natural than "low".
declare -A VOICES=(
["en_GB-alan-medium.onnx"]="en/en_GB/alan/medium/en_GB-alan-medium.onnx"
["en_GB-alan-medium.onnx.json"]="en/en_GB/alan/medium/en_GB-alan-medium.onnx.json"
["ar_JO-kareem-medium.onnx"]="ar/ar_JO/kareem/medium/ar_JO-kareem-medium.onnx"
["ar_JO-kareem-medium.onnx.json"]="ar/ar_JO/kareem/medium/ar_JO-kareem-medium.onnx.json"
)
for fname in "${!VOICES[@]}"; do
out="${VOICES_DIR}/${fname}"
if [[ ! -s "${out}" ]]; then
echo "Downloading ${fname}..."
curl -fsSL "${HF_BASE}/${VOICES[$fname]}" -o "${out}"
fi
done
echo "Voices ready in ${VOICES_DIR}:"
ls -lh "${VOICES_DIR}"
exec uvicorn app:app --host 0.0.0.0 --port "${PORT:-7860}"