ElevenLabs-compatible text-to-speech API backed by qwen3-tts-rs.
QUDIO_FFMPEG_PATH)docker compose up -d
export DATABASE_URL="postgres://qudio:qudio@localhost:5432/qudio_dev"
export QUDIO_MODEL_DIR="/path/to/qwen3-tts-model"
export QUDIO_BIND_ADDR="0.0.0.0:3000" # optional
export QUDIO_FFMPEG_PATH="ffmpeg" # optional
cargo run
curl -X POST "http://localhost:3000/v1/text-to-speech/default?output_format=wav_24000" \
-H "Content-Type: application/json" \
-d '{"text":"Hello world"}' \
--output out.wav
http://localhost:3000/docshttp://localhost:3000/openapi.jsonMake sure the test database is running, then:
TEST_DATABASE_URL="postgres://qudio:qudio@localhost:5433/qudio_test" cargo test
6 commits
Rust
100.0%
ElevenLabs-compatible text-to-speech API backed by qwen3-tts-rs.
QUDIO_FFMPEG_PATH)docker compose up -d
export DATABASE_URL="postgres://qudio:qudio@localhost:5432/qudio_dev"
export QUDIO_MODEL_DIR="/path/to/qwen3-tts-model"
export QUDIO_BIND_ADDR="0.0.0.0:3000" # optional
export QUDIO_FFMPEG_PATH="ffmpeg" # optional
cargo run
curl -X POST "http://localhost:3000/v1/text-to-speech/default?output_format=wav_24000" \
-H "Content-Type: application/json" \
-d '{"text":"Hello world"}' \
--output out.wav
http://localhost:3000/docshttp://localhost:3000/openapi.jsonMake sure the test database is running, then:
TEST_DATABASE_URL="postgres://qudio:qudio@localhost:5433/qudio_test" cargo test
6 commits
Rust
100.0%