언리얼 [음성인식]
음성인식 플러그인 SpeechRecognition사용하기
해당 링크에서 플러그인을 다운을 받는다.
SpeechRecognition 폴더를 프로젝트 디렉토리의 Plugins 폴더에 옮긴다.
model도 압축을 푼 후 model 폴더를 프로젝트에 Content 폴더에 옮긴다.
프로젝트의 플러그인에 다음 사진과 같이 플러그인이 추가되어 있다.
다음 사진과 같이 SpeechRecognitionGameStateBase를 상속하는 GameState를 만듭니다.
그 후 게임모드에서 GameState를 방금만든 GameState로 바꿔준다.
사진과 같이 GameState를 들어가보면 Audio 탭에 언어를 설정할 수 있고, 언어 인식을 위한 문구를 변수를 통해 추가할 수 있다.
음성이 잘 인식되는지 추가해보자 Tolerance값은 낮을수록 정확도가 낮아도 인식이 된다 그래서 V6~7로 설정해 주는게 좋다.
캐릭터에 다음 그림과 같이 만들어 기능이 작동되는지 확인해보자.
예시 동영상
언리얼에 Audio Capture 플러그인을 활성화 해준다. 원하는 액터나 캐릭터 등에 AudioCapture 컴포넌트를 추가해준다.
그 후 해당 그림처럼 자동활성화를 켜준다. 그럼 마이크 입력을 받아주게된다.
(이 변수를 특정 키를 눌렀을 때 활성화하거나 비활성화 하는 식으로 해주면 무전이나 마이크 on/off 기능이다)
그림 처럼 해당 컴포넌트에 이벤트를 이용해 마이크 입력 값을 확인해보도록 하겠다.
그림처럼 마이크 입력이 없으면 0에 가깝고 마이크 입력을 받으면 소리에 따라 값이 점점 높아진다.
그림에 있는 변수로 값을 매끄럽게 만들 수 있습니다. 시작 시간의 값을 늘리면 입력을 받는 속도가 느려 밸류 값이 늦게 증가하고 릴리즈 시간은 오래 밸류값이 유지된다.