File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ import os
2+
3+ from roboy_cognition_msgs .msg import RecognizedSpeech
4+ from roboy_cognition_msgs .srv import RecognizeSpeech
5+
6+ from asr_interface import IAsr
7+ import rclpy
8+ from rclpy .node import Node
9+
10+
11+ class SonoscoROS2 (Node ):
12+ def __init__ (self ):
13+ super ().__init__ ('stt' )
14+ self .publisher = self .create_publisher (RecognizedSpeech , '/roboy/cognition/speech/recognition' )
15+ self .srv = self .create_service (RecognizeSpeech , '/roboy/cognition/speech/recognition/recognize' , self .asr_callback )
16+ print ("Ready to /roboy/cognition/speech/recognition/recognize" )
17+ print (f"Roboy Sonosco running with PID: { os .getpid ()} " )
18+ self .i = IAsr ()
19+ print (f"Status: Speech recognition is ready now!" )
20+ print ("Roboy Sonosco is ready!" )
21+
22+ def asr_callback (self , request , response ):
23+ response .success = True
24+ self .get_logger ().info ('Incoming Audio' )
25+ msg = RecognizedSpeech ()
26+ self .i .inference_audio (request )
27+ self .publisher .publish (msg )
28+ return response
29+
30+
31+ def main (args = None ):
32+ rclpy .init (args = args )
33+
34+ stt = SonoscoROS2 ()
35+
36+ while rclpy .ok ():
37+ rclpy .spin_once (stt )
38+
39+ rclpy .shutdown ()
40+
41+
42+ if __name__ == '__main__' :
43+ main ()
You can’t perform that action at this time.
0 commit comments