앱인벤터 음성인식 컴포넌트
앱인벤터의 컴포넌트들을 이해와 실제 예제를 통해 실습을 통해 모바일 앱 개발에 활용도를 높이고자 한다.
이번 시간에는 미디어에서 음성인식 컴포넌트에 대해 이해하고 실습을 하고자 한다. 음성인식 컴포넌트는 스마트폰의 마이크를 활용하여 소리를 인식하여 글자로 변환시켜준다.
. 음성인식 컴포넌트
미디어 팔레트에서 음성인식 컴포넌트는 스마트폰에 마이크를 활용하여 말하는 소리를 인식하여 텍스트로 변환하여 주는 컴포넌트이다. 음성인식 컴포넌트는 보이지않는 컴포넌트이다.
간단한 음성인식 앱을 위해 버튼 컴포넌트 1개와 레이블 컴포넌트 1개를 추가하여 버튼을 클릭하면 음성인식을 하고, 음성인식이 완료되면 레이블에 음성인식한 텍스트를 출력하는 앱을 만들 것이다.
팔레트
녹음기 컴포넌트는 팔레트에 “미디어”에 있다. 녹음기 컴포넌트를 오른쪽 뷰어에 Drag&Drop하면 추가된다. 본 예제에서는 녹음기 컴포넌트를 동작시키기 위해 버튼 컴포넌트 1개와 레이블 컴포넌트 1개를 추가하여 음성인식 및 텍스트를 출려갈 것이다.
뷰어
추가했을 때, 기본적으로 사각형이 뷰어 화면에 출력된다.
버튼에 '소리재생' 텍스트로 수정하였고, 버튼을 클릭하면 소리가 재생되는 간단한 앱이다.
컴포넌트
컴포넌트에는 Screen1아래에 음성인식 컴포넌트, 버튼 컴포넌트 그리고 레이블 컴포넌트가 있으며 버튼을 클릭하면 “플레이어1”의 음성인식 컴포넌트에서 음성을 인식한 후에 레이블에 텍스트를 출력한다.
음성인식 속성값
음성인식 속성값은 아래 그림과 같다.
'UseLegacy' 이 체크가 되면, 이전의 방식으로 마이크창을 띄워 소리를 수신하지만, 체크해제가 되면 별도의 창없이 소리를 수신하며, '텍스트를가져오기전에' 블록과 'Stop'블록을 사용할 수 있다. 'UseLegacy' 선택사양은 이전 사용자를 위한 것으로 추후에는 체크 해제되어 사용하는 것이 보편화될 것으로 예상된다.
음성인식기 컴포넌트 이벤트 블럭들
음성인식 컴포넌트 이벤트 블럭에는 '텍스트가져온후에', '텍스트가져오기전에' 블럭이 있다.
'텍스트가져온후에' 블럭은 음성인식이 종료된 후에 실행이되며, 인자값으로 '결과'와 'Partial' 값을 음성인식 컴포넌트로부터 수신하게 된다. 'Partial'값은 음성인식 컴포넌트가 소리를 수신 중이면 true, 수신상태가 끝나면 false값을 출력한다.
'텍스트가져오기전에' 블럭은 소리를 수신하기 시작하면(음성을 글자로 변환하기 전) 실행되는 블럭이다. 이 블럭 호출은 'UseLegacy'가 false인 경우에만 호출이 된다.
간단한 예제로 음성인식하여 레이블에 변환한 텍스트를 출력하는 예제 블럭이다.
음성인식 컴포넌트 호출 블럭들
음성인식 컴포넌트 호출 블럭에는 '텍스트가져오기', '정지' 블럭이 있다. 음성인식 컴포넌트에서 음성인식을 시작할 때 및 정지할 때 사용되는 호출블럭들이다.
간단한 예제로 음성인식하여 레이블에 변환한 텍스트를 출력하는 예제 블럭이다.
음성인식 컴포넌트 가져오기/지정하기 블럭들
. 음성인식 컴포넌트 언어 블럭
음성인식하고자 하는 언어를 지정하고 지정된 언어를 가져오는 블럭이다.
언어값은 https://en.m.wikipedia.org/wiki/List_of_ISO_639-1_codes#BM 에서 ISO 639-1 코드를 사용한다.
* ISO 639-1 코드 예제
지금까지 음성인식 컴포넌트의 블럭들에 대해 살펴보았다.
간단한 음성인식하여 레이블에 출력하는 전체 블럭은 아래와 같다.
음성인식 버튼을 클릭했을 때, 음성인식 컴포넌트에서 '텍스트가져오기' 블럭을 호출하여 음성인식을 시작시키고, 완료가 되면 '텍스트가져온후에' 블럭이 호출이 된다. 이 때 레이블에 '결과'를 레이블의 텍스트에 지정해주면 된다.
눈으로 보는 것과 직접 실행하며 하는 것은 완전히 달라요.
간단하지만 직접 해보면 이해하고 자신감이 생길거에요...
Just Do It!!!
Just Drag&Drop It!!!
감사합니다
'앱인벤터 > 앱인벤터 컴포넌트' 카테고리의 다른 글
앱인벤터 비디어플레이어 컴포넌트 (0) | 2022.02.19 |
---|---|
앱인벤터 음성변환 컴포넌트 (0) | 2022.02.18 |
앱인벤터 녹음기 컴포넌트 (0) | 2022.02.16 |
앱인베터 소리 컴포넌트 (0) | 2022.02.15 |
앱인벤터 플레이어 컴포넌트 (0) | 2022.01.17 |
댓글