728x90
반응형
SMALL
Temi's Speech flow
- Wake Up("Hey Temi!")
- ASR(Automatic Speech Recognition) 자동 음성 인식
- NLP(Natural language processing) 자연어 처리
- TTS(Text to Speech)
WakeUp
Wake up은 "Hey, Temi" 했을 때 말하기 모드, 또는 테미의 청취 모드가 켜지는 상황이다.
void wakeup() |
Temi를 Wake Up 시킨다. |
robot.wakeup();
String wakeupWord() |
Temi를 Wake Up 시키는 단어를 얻는다. |
String wakeWord = robot.wakeupWord();
- Hey, temi
- Ding Dang
- Alexa
wakeup word를 얻는 또다른 방법은 onWakeupWord 매서드에서 wakeupWord를 출력해보면 된다.
void onWakeupWord(String wakeupWord, int direction) |
Wake up시 WakeupWordListener에 의해 들어오는 매서드 |
@Override
public void onWakeupWord(String wakeupWord, int direction) {
Log.d("onWakeupWord", "wakeupWord = " + wakeupWord);
}
- direction은 어디서 단어가 들렸는지를 나타낸다. (0-360의 각도)
- 0:앞, 90:왼쪽, 180:뒤, 270:오른쪽
ASR(Automatic Speech Recognition)
ASR로 테미에게 말 한 단어를 볼 수 있다.
void onAsrResult(@NonNull String asrResult) |
Wake up후 테미에게 말했을 때 AsrListener에 의해 들어오는 매서드. 테미에게 말 한 단어를 볼수 있다. <meta-data android:name="@string/metadata_kiosk" android:value="TRUE" /> <meta-data android:name="@string/metadata_override_nlu" android:value="TRUE" /> AndroidMenifest에 위 두줄 추가 해야함 |
@Override
public void onAsrResult(@NonNull String asrResult){
Log.d("onAsrResult", "asrResult = " + asrResult);
if(asrResult.contains("날씨")){ //특정 단어가 들렸을 때 프로그래밍 가능
robot.speak(TtsRequest.create("날씨가 좋네요.", true));
}
}
NLP(Natural language processing)
TTS(Text to Speech)
void onTtsStatusChanged(TtsRequest ttsRequest) |
테미가 TTS를 한 후 들어오는 매서드. 사용자간의 대화가 아닌, robot.speak(TtsRequest.create("speechMsg",trueorfalse));를 통해 tts를 거쳤을 때 들어온다. |
@Override
public void onTtsStatusChanged(TtsRequest ttsRequest) {
// Do whatever you like upon the status changing. after the robot finishes speaking
Log.d("TtsStatusChanged","tts 상태 변화");
}
728x90
반응형
LIST
'로봇 > Temi' 카테고리의 다른 글
Temi 로봇 Users&Telepresence API (0) | 2020.04.24 |
---|---|
Temi 로봇 UI 관련 API (0) | 2020.02.21 |