엔트리와 함께하는 인공지능 교실 > Chapter 1. 인공지능 블록 활용

[Session 02] 오디오 감지와 읽어주기 블록 활용하기

 오디오 감지와 읽어주기 블록 활용하기

인공지능 블록을 활용하지 않았을 때, 엔트리에서 활용할 수 있는 오디오 기능은 데이터베이스에 있는 소리를 재생하거나 소리를 추가하여 재생하는 기능이 전부였다. 인공지능 블록 중 오디오 감지와 읽어주기 블록은 컴퓨터 마이크나 노트북에 내장되어 있는 마이크를 이용하여 음성을 인식하고, 음성을 문자로 바꾸어 주는 기능을 제공한다. 엔트리는 읽어주기(TTS, Text to Speech) 기능을 제공하며, 엔트리의 읽어주기 기능은 다양한 목소리와 속도, 음높이 설정 기능을 포함한다.


학습 목표 

엔트리의 오디오 감지와 읽어주기 블록을 이용해 코딩할 수 있다.

학습 준비물

마이크(노트북 또는 웹캠 내장 마이크 가능)



 2-1 오디오 감지 블록 활용하기

본 주제에서는 마이크가 연결되었는지 확인하고, 오디오 감지 블록을 활용해 기본적인 음성인식을 다루는 코딩을 한다.

1) 엔트리봇이 마이크가 연결되었는지 말하도록 코딩을 한다. 우선, ‘흐름’ 블록 꾸러미에서 [만일 참 이라면, 아니면] 블록을 가지고 와서, 인공지능 블록 꾸러미 중 ‘오디오 감지’ 부분의 [마이크가 연결되었는가?] 블록과 합쳐 준다. 만약 마이크가 연결되었거나 내장 마이크의 사용이 정상적으로 가능하다면, 엔트리봇이 현재 마이크에 인식되고 있는 소리 크기가 얼마인지 말해 주도록 한다. ‘계산’ 블록 꾸러미의 [안녕 과(와) 엔트리를 합치기] 블록을 사용하면, 마이크 소리크기와 같은 입력값을 포함한 문장을 엔트리봇이 말하도록 할 수 있다. 마이크의 사용이 정상적으로 가능하지 않다면, ‘마이크가 연결되지 않았습니다. 마이크 연결을 확인해 주세요.’ 라고 말하도록 한다.


 

2) 이제 본격적으로 마이크를 활용해 음성 인식을 시작한다. 시작하기 버튼을 클릭했을 때, [음성 인식하기] 블록을 가지고 와서 음성을 인식하고, [음성을 문자로 바꾼 값] 블록을 이용해 엔트리봇이 인식한 음성을 말하도록 코딩한다.


 

3) 시작하기 버튼을 눌러 실행했을 때, [음성 인식하기] 블록을 사용했다면 엔트리봇 위에 마이크 그림이 나타나며 음성 인식을 시작한다. 음성 인식이 완료되었다고 판단하면 저절로 다음 단계로 넘어간다.


 

4) [음성을 문자로 바꾼 값] 블록과 ‘판단’ 블록 꾸러미의 [10 = 10] 블록을 사용하여 암호를 인식하는 코딩을 할 수 있다. 특정 암호를 설정하고, 인식한 음성을 문자로 바꾼 값이 암호값과 같다면 엔트리봇이 특정한 반응을 보일 수 있다.



 2-2 읽어주기 블록 활용하기

본 주제에서는 엔트리의 읽어주기 블록이 제공하는 다양한 기능을 살펴보고 암호를 인식하는 기능을 코딩해 만들어 본다.

 

1) ‘읽어주기’ 블록에서 다양한 설정을 할 수 있다. 기본적으로 [여성 목소리를 보통 속도 보통 음높이로 설정하기] 블록에서, 여성과 남성, 친절한 목소리 등 7가지의 목소리 종류를 설정할 수 있고 1~5단계로 속도와 음높이를 설정할 수 있다.

 

2) 위 그림과 같이, ‘자료’ 블록 꾸러미의 [~을(를) 묻고 대답 기다리기] 블록과 [대답]값을 이용해 대답을 듣고 어떤 목소리로 설정할지 결정하는 코딩도 할 수 있다.


★ 남자와 여자 두 종류의 목소리를 설정하는 코딩

기본 설정된 목소리를 알려주고, 묻고 대답 기다리기 블록을 사용해 남자와 여자 목소리를 각각 설정하였다. 이와 같은 방법으로 목소리, 속도, 음높이를 각각 설정할 수 있으며, 설정된 목소리가 어떤 목소리인지 읽어주어 확인할 수 있다.

읽어주기 블록과 읽어주고 기다리기 블록의 차이는 무엇일까?

‘a’키를 눌렀을 때에는 ‘엔트리’ ‘인공지능입니다’ 글자를 동시에 말해 준다. 그러나 ‘b’키를 눌렀을 때는 ‘엔트리’ ‘인공지능입니다’ 글자를 차례대로 말해 준다. 긴 문구를 입력할 때 읽어주고 기다리기 블록을 추가하면 쉽게 프로그래밍 할 수 있다.