Ai_Assistant/server/process/tts_func/elevenlabs_ping.py
2026-05-24 13:31:30 +02:00

40 lines
1.1 KiB
Python

import os
import requests
from dotenv import load_dotenv
load_dotenv()
def elevenlabs_gen(text: str, output_wav_pth: str):
# Hol dir den API-Key aus deiner .env Datei
api_key = os.getenv("ELEVENLABS_API_KEY")
# TRAGE HIER DEINE GEWÜNSCHTE STIMMEN-ID EIN!
voice_id = "aFueGIISJUmscc05ZNfD"
url = f"https://api.elevenlabs.io/v1/text-to-speech/{voice_id}"
headers = {
"Accept": "audio/mpeg",
"Content-Type": "application/json",
"xi-api-key": api_key
}
data = {
"text": text,
"model_id": "eleven_v3",
"voice_settings": {
"stability": 0.5,
"similarity_boost": 0.75
}
}
response = requests.post(url, json=data, headers=headers)
if response.status_code == 200:
# ElevenLabs schickt Audio, wir speichern es direkt auf die Platte
with open(output_wav_pth, 'wb') as f:
f.write(response.content)
print(f"[ElevenLabs] Audio erfolgreich generiert -> {output_wav_pth}")
else:
print(f"[ElevenLabs] FEHLER: {response.text}")