import websocket
import json
import os
def on_message(ws, message):
if isinstance(message, str):
if message == 'EOS':
print('Synthesis complete')
ws.close()
elif message.startswith('ERR:'):
print('Error:', message)
else:
# Binary audio data
print('Received audio chunk:', len(message), 'bytes')
# Process audio
def on_open(ws):
print('Connected to Lokutor')
# Send synthesis request
request = {
"text": "Hello, this is Lokutor!",
"voice": "M1",
"lang": "en",
"speed": 1.05,
"steps": 5,
"version": "versa-1.0",
"visemes": False # Optional: Enable for lipsync data
}
ws.send(json.dumps(request))
ws = websocket.WebSocketApp(
f"wss://api.lokutor.com/ws?api_key={os.environ['LOKUTOR_API_KEY']}",
on_message=on_message,
on_open=on_open
)
ws.run_forever()