speech
Loading...
Searching...
No Matches
espeakClientExample.py
1#!/usr/bin/env python3
2
3
7
8import argparse
9import yarp
10import roboticslab_speech as speech
11import time
12
13parser = argparse.ArgumentParser(description='create a client connection with a remote Espeak service')
14parser.add_argument('--remote', default='/tts', type=str, help='remote server port')
15args = parser.parse_args()
16
17yarp.Network.init()
18
19if not yarp.Network.checkNetwork():
20 print('Please start a yarp name server first')
21 raise SystemExit
22
23client = yarp.RpcClient()
24
25if not client.open('/tts/client/rpc:c'):
26 print('Unable to open client port %s' % client.getName())
27 raise SystemExit
28
29if not yarp.Network.connect(client.getName(), args.remote + '/rpc:s'):
30 print('Unable to connect to remote server port %s' % args.remote)
31 raise SystemExit
32
33tts = speech.SpeechSynthesis()
34tts.yarp().attachAsClient(client)
35
36tts.setLanguage('mb-en1')
37tts.setSpeed(150) # Values 80 to 450.
38tts.setPitch(60) # 50 = normal
39
40print('Using speed %d' % tts.getSpeed())
41print('Using pitch %d' % tts.getPitch())
42
43tts.say('Hello, my name is Teo. I want to follow you. Please, tell me. Ok, I will follow you. Ok, I will stop following you.')
44
45while not tts.checkSayDone():
46 time.sleep(0.1)