tts_server_simple.py 452 B

12345678910111213
  1. from fastapi import FastAPI, Query
  2. from fastapi.responses import FileResponse
  3. from TTS.api import TTS
  4. import tempfile
  5. app = FastAPI()
  6. tts = TTS(model_name="tts_models/en/ljspeech/vits", gpu=True)
  7. @app.get("/api/tts")
  8. def synth(text: str = Query(...)):
  9. tmp = tempfile.NamedTemporaryFile(delete=False, suffix=".wav")
  10. tts.tts_to_file(text=text, file_path=tmp.name)
  11. return FileResponse(tmp.name, media_type="audio/wav", filename="speech.wav")