본편 : 1편 2편 2.5편


0. 들어가며

이번 글은 번외편으로 포먼트 측정에 대해 얘기해 볼게. 포먼트를 정확하게 측정하기 위해서는 푸리에 변환한 그래프의 포락선(Envelope)을 구해야 돼. 포락선이란 아래와 같이 각 진동수의 봉우리에 모두 접하는 곡선을 뜻 해. 이렇게 구한 포락선의 봉우리들이 공명에 의해 증폭되는 진동수, 즉, 포먼트를 의미함. 이것을 구하려면 선형 예측 부호화(Linear Predictive Coding, LPC) 라는 수학적인 테크닉이 필요한데, 그것을 쉽게 할 수 있도록 도와주는 것이 Praat과 같은 음성 분석 프로그램이야.


                         

                                                                                                                            그래프 출처


그런데 Praat은 모바일에서 사용이 불가능하고 반드시 PC에 설치해서 사용해야 하기 때문에 나 같이 귀차니즘이 심한 트붕이들에게는 진입 장벽이 있어. 그래서 이번 글에서는 구글 계정만 있으면 모바일과 PC에서 설치 없이 웹 브라우저를 통해 간단하게 포먼트를 측정하는 방법을 소개할까 해.


이름하야 달토끼의 포먼트 측정기!


맞아... Praat 설치하고 매뉴얼 보기 귀찮아서 그냥 직접 코드 짜서 만들어 봤어. 너무 보잘것없기에 사용이 간단함.

그럼 거두절미하고 바로 설명 들어갈게.


1. 준비물

1.1 구글 계정

구글 계정이 필요한 이유는 Colab을 통해 코드를 실행하기 때문이야. Colab은 구글에서 제공하는 코드 편집기야. 구글 계정만 있으면 누구나 웹브라우저를 통해 간단하게 코드를 편집하고 실행할 수 있어. 웹브라우저를 이용하기 때문에 모바일에서도 크롬이나 사파리 앱을 통해 사용 가능해. 그리고 이렇게 편집한 코드를 공유하거나 공동으로 수정할 수 있음.


1.2 음성 녹음 파일

실시간 측정이 아니기 때문에 녹음 파일이 필요해. 지난 글에서 설명한 것처럼 포먼트는 모음에 따라 달라지기 때문에 동일한 모음으로 2-3초간 발음하여 녹음하면 됨. 문장을 녹음하면 평균 포먼트가 측정되는데, 이건 비교가 쉽지 않을거야. 녹음 파일 확장자는 WAV, M4A 등 상관은 없지만, 이왕이면 무손실 무압축 포맷인 WAV를 사용하는게 좋긴 함.


2. 포먼트 측정 (링크)

2.1 음원 업로드 및 실행 파일 불러오기

먼저 위 링크로 접속하면 아래와 같은 화면이 보일거야. 좌측의 창은 폴더 모양 아이콘을 누르면 펼쳐짐. 여기서 업로드 아이콘을 눌러 음성 녹음 파일을 업로드하자. PC의 경우 드래그 앤 드롭 방식으로도 업로드가 가능해. 다음으로 우측 창의 파일 불러오기 아래의 코드 실행 버튼을 눌러주면 Github에서 포먼트 측정에 필요한 코드가 담긴 파일을 가져올거야. 실행 버튼 위치에 숫자가 표시되면 불러오기가 끝났으니 다음으로 넘어가면 됨.



2.2 설정 및 실행

다음으로 간단한 설정 후 포먼트 측정을 실행할 거야. 우선 'audio_file_name'에 음원 파일명을 입력함. 그림처럼 확장자까지 정확하게 입력해주면 돼. 그 다음 시작 시간(start_time)과 지속 시간(duration)이 있는데, 언제부터 시작해서 얼마나 측정하는지 초 단위로 적어주면 돼. 기본값인 0과 None을 그대로 두면 처음부터 끝까지 측정함. 그러니 녹음 시작과 끝 부분의 잡음을 잘라내고 정확하게 포먼트 측정을 하고 싶을 때 입력해주면 될거야. 설정을 마쳤으면 마찬가지로 좌측의 코드 실행 버튼을 클릭하자.



2.3 결과 확인

그러면 이렇게 결과가 좌르륵 나온다. 참 쉽죠?

결과에서 가장 위에 있는 표를 보면 기본진동수(F0)와 포먼트(F1, F2, F3, F4)를 확인할 수 있어. 각 모음 별 남녀 포먼트는 2.5편에 첨부된 표를 참조하길 바래. 표 아래의 그래프는 포먼트의 위치와 함께 상대적인 세기를 확인하고 싶을 때 보면 됨. 그리고 그 옆의 스펙트로그램은 포먼트가 일정하게 유지되는지 보여주는 지표임. 마지막으로 포먼트 분석한 부분의 소리를 듣고 싶을 땐 그래프 아래의 플레이 버튼을 눌러주자.



3. 마치며

원래 입원 전에 2.5편과 함께 작성하던 글인데.. 퇴원하고 이래저래 다시 쓰기 귀찮아서 이제야 올림. 늦었지만 포먼트에 관심 있는 트붕이들에게 도움이 되길 바라며 글 마칠게.



+ 위 결과의 목소리는 누구일까요~? 맞추는 트붕이에게는 무한한 사랑을 드림ㅎㅎ