My main use case for TTS and STT is from a small device (Raspberry Pi 4/5 or ideally Raspberry Pi Zero 2w)
On a larger Ubuntu machine I find that VOSK and Piper run fine locally, but the same service as a remote gives a not implemented error.
# speech from local Ubuntu client
speech_vosk = SpeechService.from_robot(robot, name="vosk")
speech_piper = SpeechService.from_robot(robot, name="piper")
# Quick test speech
print("Testing speech ouput")
piper_response = await speech_piper.to_speech("Hello, How can I help you?")
print(f"Piper response:- length: {len(piper_response)} type: {type(piper_response)} details: {piper_response}")
speech_text = await speech_vosk.to_text(speech=piper_response, format="wav")
print(f"Vosk response:- length: {len(speech_text)} type: {type(speech_text)} details: {speech_text}")
From a Raspberry Pi, I cannot access the service
# Setup vosk and piper for speech
speech_vosk = SpeechService.from_robot(robot, name="viamubuntulaptop2-main:vosk")
speech_piper = SpeechService.from_robot(robot, name="viamubuntulaptop2-main:piper")
The latter generates a not implemented error