사전 설정(Preset)된 서비스로 원하는 텍스트만 선택해서 듣기


서비스 사전 설정(Preset) 관련 부분은 AwesomeTTS 홈페이지에서 이 부분을 참조한 내용이니 참조하시기 바랍니다. 


가끔 전체 텍스트가 아니라 어떤 특정한 텍스트만 오디오 사운드를 재생해서 들을 필요가 있는 경우가 있다. 이런 경우에는 AwesomeTTS 설정에 들어가 오디오 사운드를 재생해줄 서비스들 중에서 원하는 것을 골라서 설정해두면 필요할 때마다 팝업메뉴를 통해서 해당 텍스트를 원하는 서비스에서 재생되게 할 수 있다. 


이 방법은 즉석 재생(On-the-fly) 방법과 마찬가지로 TTS를 데스크탑 환경에서만 사용하는 사람들에게 매우 유용하다. 하지만 모바일 기기(가령 AnkiDroid)나 AnkiWeb에서 Anki를 이용하는 사용자라면 [sound] 태그와 미디어 파일을 만들어 저장해서 데스크탑 외에서도 원활하게 공부하길 원할 수 있다. [sound] 태그를 생성하는 방법은 앞에서 노트 추가창(Note Editor)이나 카드 탐색기(Card browser)에서 [sound] 태그를 생성하고 저장하는 방법을 참조하기 바란다.



사전 설정(Preset)하여 사용하는 방법


1) 구성(Configuration) 화면 설정


도구 → AwesomeTTS 순으로 클릭하면 구성(Configuration) 화면이 나타난다.

구성(Configuration) 화면에서 Advanced 탭으로 이동하고

③ "Service Presets and Groups" 섹션을 찾아 [Manage Presets...] 버튼을 클릭한다. 




2) 서비스 구성


Manage Service Presets 대화상자가 나타난다. 


이번에는 앞서 배운 것과 마찬가지로 서비스와 해당 옵션들을 조정하여 원하는 서비스를 구성한다. 




3) 서비스 확인


Preview 아래의 공란에 간단한 샘플 문구를 넣고 [Preview] 버튼을 눌러 해당 사운드가 원하는 사운드인지 확인한다. 




4) 저장(Save)


오디오 사운드가 마음에 들었다면 Load Preset... 옆의 [Save] 버튼을 클릭하여 해당 서비스와 옵션을 저장한다. 




5) 사전 설정(Preset) 이름 설정


[Save] 버튼을 클릭하면 사전 설정(Preset)의 이름이 해당 서비스명과 목소리 등으로 자동으로 생성되어 기본적(Default)으로 제공된다. 만일 원하는 이름이 있다면 새로 이름을 짓고 제시된 사전 설정 이름이 마음에 들면 그대로 받아들이고 [확인]을 클릭한다. 



6) 사전 설정 화면 나오기


[확인]을 클릭하여 Manage Service Presets 화면에서 빠져나온다.




마찬가지로 [확인]을 클릭하여 구성(Configuration) 화면에서 빠져나온다. 




7) 사전 설정(Preset) 사용


이제, Anki의 카드를 열어서 다음처럼 듣고 싶은 문장을 지정하고 우클릭을 하면 팝업메뉴가 나타난다. AwesomeTTS → Say "Call me Please" w/ Microsoft Speech API COM (Microsoft Zira Desktop)을 클릭하면 해당 문장을 읽는 것을 들을 수 있다. 




그 외 알아둘만한 사항들... 



1) 사전 설정(Preset)은 어디서나 가능


사전 설정(Preset)을 구태여 꼭 구성(Configuation) 화면에서 할 필요는 없다. 서비스 구성을 할 수 있는 모든 대화상자에는 해당 사전 설정(Preset)을 구성할 수 있도록 [Save] 버튼이 달려 있으므로 AwesomeTTS를 노트 추가창, 카드 탐색기, 즉석 재생으로 추가할 때 해당 서비스 구성 화면에서 언제든지 사전 설정(Preset)을 구성할 수 있다.



2) 이 방법은 다른 곳에서도 사용 가능함

서비스를 사전설정 하고 원하는 텍스트만 선택해서 말하는 것 듣기는 꼭, 카드에서만 실행하는 것은 아니다. 노트 추가창에서 개별적으로 노트를 편집하면서 필드에 있는 텍스트를 지정해서 사정 설정된 서비스에 따라서 해당 텍스트를 들을 수도 있고, 카드 템플릿의 미리보기 부분의 텍스트를 지정해서 들을 수도 있다. 

아래는 노트 추가창에서 TEXT 필드에 있는 텍스트 color를 지정해서 사전 설정(Preset)된 서비스에 따라서 텍스트를 읽는 것을 듣는 모습이다. 



아래는 카드 템플릿의 미리보기에서 텍스트 color를 지정해서 사전 설정(Preset)된 서비스에 따라서 텍스트를 읽는 것을 듣는 모습이다. 



3) 사전 설정(Preset) 그룹화하기

최소 두 개의 서비스를 사전 설정(Preset)했다면 이를 그룹(Group)으로 묶어 사용할 수 있다. 


4) 즉석 재생(On-the-Fly)에 사용하기

즉석 재생(On-the-Fly)의 경우에도 서비스를 사전 설정해서 사용할 수 있다. 즉, 카드 템플릿에서 <tts> 태그에 속성(attribute)으로 preset을 붙일 수 있고 해당 preset 속성사전 설정된 서비스의 이름을 집어넣어주면 된다. 


카드 템플릿에서 즉석 재생(On-the-Fly)하기


이는 AwesomeTTS 홈페이지에서 이 부분을 참조한 내용이니 참조하시기 바랍니다.


카드에 TTS를 더하는 가장 쉽고 빠른 방법은 카드 템플릿에서 사운드로 재생되기를 원하는 텍스트를 HTML 태그인 <tts>로 감싸주는 것이다. <tts> 태그로 감싼 부분이 카드에서 즉석으로 재생되는데, 태그로 감싼 부분을 어떻게 보이게 할지에 대해서는, 일반적으로 Anki의 카드 템플릿에서 기본적으로 제공하는 상태로 보여줄 수 있고 또는 다른 힌트가 나타나게 하거나 아무것도 나타나지 않게 할 수도 있다. 이 방식을 잘 활용하면 영어 듣기 훈련용 카드에서 이를 잘 활용할 수 있을 것이다.

 

Anki를 데스크탑에서만 사용한다면 이 즉석 재생(On-the-Fly) 방법과 사전설정(Presets) 방법이 매우 유용하다. 하지만 모바일 기기(가령, AnkiDroid)AnkiWeb에서 Anki를 이용하는 사용자라면 [sound] 태그와 미디어 파일을 저장해서 데스크탑 외에서도 원활하게 공부하길 원할 수 있다. [sound] 태그를 생성하는 방법은 앞에서 노트 추가창(Note Editor)이나 카드 탐색기(Card browser)에서 [sound] 태그를 생성하고 저장하는 방법을 참조하기 바란다.

 


즉석 재생(On-the-Fly) 실행방법


1) 카드 템플릿창 열기


노트 추가창(Note Editor)을 열었거나 카드 브라우저에서 특정 카드를 선택한 경우 [카드...] 버튼을 클릭하여 해당 노트의 카드 템플릿 창으로 들어간다.

 

다음은 노트 추가창(Note Editor)에서 [카드...] 버튼을 클릭한 모습이다.


 

다음은 카드 탐색기(browser)에서 특정 카드를 선택한 후 [카드...] 버튼을 클릭한 모습이다.




2)  [Add TTS] 버튼을 클릭


앞에서 [카드...] 버튼을 클릭하면 해당 노트의 카드 템플릿이 나온다. 일단, 현재 카드 템플릿을 확인하고 아래의 버튼에서 [Add TTS] 버튼을 클릭한다.

 



3) 서비스와 옵션 선택


앞에서 [Add TTS] 버튼을 클릭하면 즉석 재생(On-the-Fly)을 위해 <tts> 태그를 템플릿에 더하는 다양한 옵션을 가진 대화상자가 나타난다 일단, 원하는 서비스와 옵션들을 선택한다.



4) 오디오 사운드 확인


서비스와 옵션을 선택했으면 Preview 아래의 공란에 간단한 문구를 작성하고 [Preview] 버튼을 클릭하여 생성될 오디오의 사운드가 원하는 것인지 확인한다.




 

5) 사운드로 전환할 텍스트 결정


AwesomeTTS가 특정 필드의 텍스트를 읽어 오디오를 만들기 원한다면 Field의 드롭다운 목록에서 해당 필드를 선택하라.

 

보통 customize the tag's content 항목은 <tts> 태그에 오디오 사운드로 전환하고 싶어하는 텍스트나 필드를 넣는 것이다. 하지만 특정 필드를 오디오 사운드로 전환하길 원할 경우에는 아래의 사진에서 Field 항목의 드롭다운 목록을 펼쳐 나타나는 현재 노트 유형이 가진 필드(Field)에서 원하는 필드를 선택하면 된다. 



6) visibility 선택


TTS 태그로 둘러싼 부분을 숨기고 싶다면(가령, 듣기 연습일 경우 소리를 듣고 단어를 떠올려야 하는데 텍스트가 화면에 보이면 당연히 공부가 되지 않을 것이다.) visibility의 드롭다운 목록에서 원하는 옵션을 선택하면 된다.




Hide just this tag w/ inline CSS 항목을 선택하면 지금 추가하고 있는<tts> 태그만 화면에 표시하지 말고 CSS로 스타일링을 한다. 당연히 이 카드에만 적용된다.

add rule to hide any TTS tag for note type 항목을 선택하면 현재 노트유형(Note type)에서 <tts> 태그로 감싼 부분은 전부 가려서 화면에 표시되지 않는다


7) 사운드를 재생할 카드의 앞뒷면 선택


카드의 어느 쪽(앞면이나 뒷면)에서 AwesomeTTS가 오디오를 재생할지 선택한다.


8) <tts> 태그를 카드 템플릿에 삽입


[Insert] 버튼을 클릭하여 <tts> 태그를 카드 템플릿에 삽입한다.


아래는 <tts> 태그가 카드 앞면에 삽입된 경우이다. 태그 내부에는 아직 텍스트나 필드가 있지 않으므로 원하는 필드나 텍스트를 우리가 직접 넣어야 한다. 




9) <tts> 태그 내에 넣을 텍스트와 필드 정리


카드 템플릿에서 <tts> 태그의 내부에 오디오 사운드로 소리가 나게 하려는 텍스트나 필드를 넣어 원하는 카드를 만든다. 아래의 사진에서는 앞면을 의미하는 {{Front}} 필드를<tts> 태그 내부에 집어넣어 Front 필드에 적힌 텍스트를 즉석 재생하도록 한 것이다.


 



특정 카드에서만 선택적으로 TTS로 송출되는 사운드를 수정하거나 사용하지 않을 수 있는가?


TTS를 하다보면 특정 노트에 적힌 구문이나 텍스트를 TTS로 전환한 사운드의 품질이 매우 좋지 않을 수 있다. 이 경우 해당 TTS를 사용하지 않거나 직접 만들어낸 사운드로 대체하는게 나을 수 있다. 


TTS를 더 이상 사용하고 싶지 않다면 노트 유형에 "No TTS" 필드를 추가하고 그 필드에 "1"을 기입한다. 그리고 템플릿을 다음과 같이 수정한다. 


{{^No TTS}}<tts service="espeak" voice="en">{{/No TTS}}

   {{Front}}

{{^No TTS}}</tts>{{/No TTS}}


또, 직접 생성한 사운드를 사용하려면 노트 유형에 "Sound" 필드를 추가하고 오디오 파일을 해당 필드에 [sound:xxx] 형식으로 삽입한다(페이퍼 클립 표시를 눌러 해당 파일을 첨부하면 된다.). 그리고 템플릿을 다음과 같이 수정한다. 


{{Sound}}


{{^Sound}}<tts service="espeak" voice="en">{{/Sound}}

   {{Front}}

{{^Sound}}</tts>{{/Sound}}


위와 같이 수정하다보면 템플릿이 너무 복잡해지므로 복잡해지는 것을 피하고 싶다면 즉석 재생의 <tts> 태그를 사용하지 않는 새로운 노트 유형을 만들어서 필요한 노트들은 새로운 노트 유형으로 옮기는 방식도 나쁘지 않다.



그 외 사항들(Other Hints)


1) 즉석 재생 기능이 제대로 작동하는지 앞면 미리보기나 뒷면 미리보기에서 테스트해볼 수 있다. 해당 창에 우클릭을 하면 해당 메뉴가 나오므로 그것을 눌러 사운드를 확인한다.




2) <tts> 태그를 자동으로 재생하는 것을 바꾸거나 단축키를 바꿀려면 구성(Configuration) 화면에서 재생(playback) 탭으로 가서 조절하면 된다. 


3) AwesomeTTS에서는 자동으로 특정한 텍스트를 필터해서 제외할 수 있다. 가령 괄호 속에 있는 텍스트는 오디오 사운드로 소리내지 않을 수 있다. 어떻게 필터링할지 조절하고 싶다면 구성(Configuration) 화면에서 Text 탭으로 가서 조절하면 된다. 


4) 만일, 즉석 재생(On-the-Fly) 방법에서 사전설정(Preset)된 서비스를 이용하고 싶다면 다음과 같이 TTS 태그에 preset 속성을 붙여서 사용하면 된다. 

   <tts preset="My eSpeak Preset">apple</tts>


5) 마찬가지로 그룹(Group)을 적용하고 싶다면 마찬가지로 다음과 같이 <tts> 태그group 속성을 붙여서 사용하면 된다. 

   <tts group="Male English">automobile</tts>


6) 템플릿에서 변수로 사용하는 필드들을 태그의 속성(attribute)처럼 사용할 수 있다. 

   <tts group="{{group}}">{{text}}</tts>


7) <tts> 태그를 중첩(nest)시켜 동일한 텍스트를 여러 개의 다양한 서비스를 이용하여 소리를 재생할 수도 있다.




영어 듣기 연습 카드 만들기


앞서 카드 탐색기에서 AwesomeTTS를 사용하는 방법을 포스팅했다. 그런데 단순히 사용법만 이야기하면 조금 뜬구름 잡는 이야기처럼 들릴 것 같아 구체적인 사례를 드는 편이 좋겠다는 생각이 들었다. 마찬가지 이유로 카드 형식을 스스로 만들어서 사용하는 것데 대한 실제 사례도 포스팅할 필요가 있다 싶어서 이번에는 영어 듣기 연습 카드라는 간단한 카드들을 만들어서 실제로 사용하는 사례를 포스팅해보려고 한다.


영어는 언어이므로 눈으로 글자를 보는 것보다 귀로 소리를 듣는 것이 더 영어공부에 필요한 과정인 것 같다. 따라서 영어 단어 공부도 귀로 들으면서 하는 편이 언어에 익숙해지는데 도움이 될 것 같다. , Anki로 영어 듣기를 훈련하고 싶은 것이다. 이런 경우라면 어떤 형식으로 학습이 이루어져야 할까?

 

일단, 떠오르는 것은 이런 것이다. 카드가 펼쳐짐과 동시에 어떤 영단어를 듣게 된다. 나는 속으로 들은 단어가 무엇인지 생각하고 정답확인을 누른다. 그리고 그 정답을 보고 스스로 제대로 영단어를 들었는지 확인하고 난이도를 평가한 후 다음 카드로 넘어간다. , 영단어를 듣고 이를 확인한다. 매우 기본적인 기능만 하지만 꽤 쓸만할 것 같다. 이런 형식의 카드들을 만들어 카드 뭉치에 넣고 공부를 해보자. 



1) 카드 뭉치(Deck) 만들기


우선 가장 먼저 영어 듣기 연습을 위한 카드뭉치를 만든다. 보통, 영어 듣기는 Listen Comprehension 이라고 하므로 카드 뭉치 제목도 Listen Comprehension이라고 하자. 


메인 화면에서 아래의 [뭉치 만들기] 버튼을 누른 후 카드 뭉치 이름에 Listen Comprehension 이라고 적고 확인을 누른다. 






2) 카드 뭉치에 노트 추가


만들어진 Listen Comprehension 카드 뭉치를 클릭하면 해당 카드 뭉치 화면으로 들어간다. 카드 뭉치에 아직 카드가 하나도 없으므로 모든 카드를 공부했다는 메시지가 떠 있는 상태다. 상단의 [추가]를 클릭해서 노트 추가창(Noet Editor)을 열어보자.




현재 노트 유형은 Basic으로 되어 있고 뭉치는 Listen Comprehension으로 되어 있다.

 

Basic 노트 유형은 오직 FrontBack의 두 가지 필드만 있어 영어 듣기 연습용으로 적합해 보이지 않는다. 영어 듣기에 사용하기 좋은 새로운 노트 유형을 만들 필요가 있다.(노트 유형 추가에 대해서는 08_(학습자료추가)_카드와_노트_추가하기_Anki_2.0_유저_매뉴얼 참조)

 

[노트 유형]을 클릭해서 노트 유형 선택 창으로 넘어가


[관리]를 클릭하여 노트 유형 관리 창을 연다




새로운 노트를 추가할 것이므로 [추가]를 클릭하여 노트 유형 추가창을 연다.

노트 유형 추가창에서 추가: 기본을 선택하고 확인을 클릭하면 새로운 노트유형의 이름을 기입할 수 있는 창이 열린다.

새로운 노트 유형의 이름으로 "영어 듣기 훈련"이라고 기입하고

[확인]을 클릭한다.



그리고 다시 노트 추가창으로 돌아와서 유형이 "영어 듣기 훈련"으로 되어 있는지 확인한다. 보면 알겠지만 기존의 Basic 노트와 크게 달라진 것이 없다.

 

이제 카드를 어떻게 만들지 생각해보아야 한다. 카드는 어차피 앞면과 뒷면만 있다. 그 앞면은 학습할 내용을 제시하므로 앞면에서는 영어 단어를 읽어줘야 한다. 그런데 아무것도 없이 영어단어만 읽어주게 되면 조금 생뚱맞을 수 있으므로 간단한 지시사항을 "방금 들은 단어를 맞추시오."와 같이 카드 앞면에 적어주어서 이 카드를 공부할 순서가 되면 영어단어를 듣고 지시사항에 따라서 문제를 풀 수 있게 한다. 그리고 정답 확인 버튼을 누르면 실제 영단어를 글자로 확인힐 수 있어야 한다.

 

그렇다면 몇 개의 필드가 필요할까? 일단, 3 정도가 필요해 보인다. 

 

하나는 우리가 공부할 단어를 텍스트로 기입한 "TEXT" 필드이고, 그 다음은 우리가 들을 영단어 오디오 사운드의 [sound] 태그를 삽입할 "SOUND" 필드다. 마지막으로 카드 앞면에 쓸 지시사항 문구를 적어놓을 "EXPLANATION" 필드를 만들려고 한다.

 

우선, [필드...] 버튼을 클릭하여 현재 노트 유형의 필드를 편집한다.

 

아직은 노트 유형 Basic과 동일하므로 현재는 "앞면""뒷면"의 두 개의 필드만 있다. 각각의 필드를 지정하고 [이름 변경] 버튼을 눌러 "앞면" 필드의 이름을 "TEXT"로 수정하고 "뒷면" 필드의 이름을 "SOUND"로 수정한다.





"앞면""뒷면" 필드를 "TEXT""SOUND"로 수정했으면 이번에는 [추가] 버튼을 눌러 "EXPLANATION" 필드를 추가하고 닫는다.



 

그럼, 이제 노트 유형이 영어 듣기 훈련인 노트에는 3개의 필드가 생겨나 있다. 이번에는 이 노트를 카드로 바꿔 보자. [카드...] 버튼을 눌러 템플릿 창을 연다.



그럼 다음과 같은 카드 템플릿이 나타난다.

 

이 템플릿은 이렇게 읽는다.

 

이 노트는 하나의 카드를 만든다.(카드 1 뿐이므로)

"TEXT" 필드의 내용이 카드 앞면에 나타난다.

뒷면에는 앞면에서 아래에 선을 하나 그어 "SOUND" 필드를 보여준다.




전혀 우리가 원하는 카드가 아니므로 이를 아래와 같이 수정해보자아래 템플릿의 모양은 미리보기를 통해 확인할 수 있다.



템플릿이 완성되었으니 이제 모든 준비가 완료되었다. 본격적으로 노트와 카드를 만들어보자.


color, boy, girl, student, school

 

이 다섯 단어에 대한 카드를 만들어 보자. 각각, "TEXT" 필드에 입력하면 된다. "EXPLANATION" 필드에는 "방금 들은 단어를 맞추시오."라고 입력해둔다. (필드 버튼을 눌러 "EXPLANATION필드에 이전에 입력한 내용 유지 체크 박스에 체크해 두면 해당 내용은 계속 유지된다.)

 


3) 카드 탐색기(Browser)로 들어가서 카드를 확인


왼쪽 사이드 바에 Listen Comprehension 카드 뭉치가 보인다color, boy, girl, student, school의 다섯 개의 단어가 카드로 만들어져 있는 것을 확인할 수 있다. 이 카드 뭉치의 노트에 있는 텍스트를 AwesomeTTS로 오디오 사운드로 전환해 [sound]태그를 "SOUND" 필드에 삽입할 것이다


 

4) 카드 탐색기에서 AwesomeTTS를 이용하여 오디오 사운드를 생성

 

카드 탐색기에서 오디오를 생성할 노트에 속하는 카드들을 선택한다.

 



브라우저 상단의 메뉴에 "AwesomeTTS메뉴에서 "Add Audio to Selected"를 선택


 

 원하는 서비스와 옵션을 구성한다.

 

 사운드 확인

Preview의 입력 필드에 간단한 문장을 타이핑하고 [Preview] 버튼을 클릭하여 원하는 오디오 사운드가 생성되는지 확인하라.

 

 소스필드(Source Field) 선택


이제 소스 필드(Source Field)의 드롭다운 목록에서 AwesomeTTS가 텍스트를 읽어 오디오 사운드로 바꿀 때 어떤 필드에서 텍스트를 읽어올지 선택하라.


 목적 필드(destination field) 선택


생성된 [sound] 태그나 파일경로가 입력될 목적 필드(destination field)를 드롭다운 목록에서 선택하라.


 목적 필드(dsetination field)에 생성될 오디오 사운드를 첨가(Append)할 것인지 덮어쓸(Overwrite) 것인지 선택


만일입력할 목적 필드에 있는 텍스트를 그대로 유지하길 원한다면 첨가(append)를 선택하고전체 텍스트를 지우고 사운드로 대체할 것이라면 덮어쓰기(overwrite)를 선택하면 된다. 


첨가(Append)할 경우,

기존에 있던 [sound] 태그를 지울지 말지를 "remove existing옵션을 체크하여 결정할 수 있다체크하면 기존의 [sound] 태그를 지우고 새로운 [sound] 태그를 첨가할 것이고체크를 해제하면 기존에 있던 [sound] 태그를 지우지 않고 거기에 추가적으로 [sound] 태그를 더한다.


덮어쓸(overwriting) 경우

"wrap the filename옵션의 체크를 해제하여 오디오의 [sound] 태그 대신 노출 경로를 저장하도록 할 수 있다.

 

 [Generate] 버튼을 클릭하여 처리과정을 시작한다필요하다면 중간에 처리과정을 중단할 수도 있다.




 

5) 실제 카드를 확인


실제로 카드를 열자마자 소리가 들리고 [답 보기] 버튼을 클릭하니 해당 단어가 나타난다잘 작동하는 것 같다.




6) 모바일(AnkiDroid)에서 잘 작동하는지 확인


모바일(안드로이드폰)에서도 잘 작동한다. 그리고 데스크탑에서와는 달리 플레이 버튼이 제공되어서 계속 반복해서 해당 소리를 들을 수 있게끔 되어 있다. 






카드 탐색기(Browser)


카드 탐색기는 카드를 통합적으로 관리하고 편집하기 위한 탐색기(Browser)이다.

 

메인 메뉴에서 탐색을 누르면 카드 탐색기(Browser)가 나타난다.



앞서 노트 추가창(Note Editor)를 이용하여 AwesomeTTS를 사용했을 때는 노트 하나하나에 오디오 사운드 파일을 만들고 [sound] 태그를 만들어 필드에 삽입했다. 하지만 AwesomeTTS는 카드 탐색기에서 오디오 생성을 원하는 노트와 카드를 모두 선택해서 한꺼번에 오디오 파일을 생성할 수 있어 대량의 작업을 매우 수월하게 마칠 수 있다.

 


카드 탐색기에서 AwesomeTTS 사용하기


 카드 탐색기에서 오디오 사운드를 생성할 노트에 속하는 카드들을 지정한다. 



 

 브라우저 상단의 메뉴에 "AwesomeTTS" 메뉴에서 "Add Audio to Selected..."를 선택한다




 원하는 서비스와 옵션을 구성한다.

 

 사운드 확인

Preview의 입력 필드에 간단한 문장을 타이핑하고 [Preview] 버튼을 클릭하여 원하는 오디오 사운드가 생성되는지 확인하라.

 

 소스필드(Source Field) 선택


이제 소스 필드(Source Field)의 드롭다운 목록에서 AwesomeTTS가 텍스트를 읽어 오디오 사운드로 바꿀 때 어떤 필드에서 텍스트를 읽어올지 선택하라.


 목적 필드(destination field) 선택


생성된 [sound] 태그나 파일경로가 입력될 목적 필드(destination field)를 드롭다운 목록에서 선택하라.


 목적 필드(dsetination field)에 생성될 오디오 사운드첨가(Append)할 것인지 덮어쓸(Overwrite) 것인지 선택


만일, 입력할 목적 필드에 있는 텍스트를 그대로 유지하길 원한다면 첨가(append)를 선택하고, 전체 텍스트를 지우고 사운드로 대체할 것이라면 덮어쓰기(overwrite)를 선택하면 된다. 


첨가(Append)할 경우,

기존에 있던 [sound] 태그를 지울지 말지를 "remove existing옵션을 체크하여 결정할 수 있다. 체크하면 기존의 [sound] 태그를 지우고 새로운 [sound] 태그를 첨가할 것이고, 체크를 해제하면 기존에 있던 [sound] 태그를 지우지 않고 거기에 추가적으로 [sound] 태그를 더한다.


덮어쓸(overwriting) 경우

"wrap the filename옵션의 체크를 해제하여 오디오의 [sound] 태그 대신 노출 경로를 저장하도록 할 수 있다. , 노출 경로를 사용하도록 하는 옵션은 구버전과 호환되도록 하기 위해서 제시한 것일 뿐 별로 추천하지 않는다. 만일, 노출 경로를 사용하면 Anki는 사용중인 미디어 파일을 자동으로 찾지 못하게 된다.

 

 [Generate] 버튼을 클릭하여 처리과정을 시작한다. 필요하다면 중간에 처리과정을 중단할 수도 있다.



AwesomeTTS노트 추가창이나 카드의 탐색기에서 오디오 사운드를 만드는 방법은 해당 노트의 필드에 [sound] 태그를 삽입하고 Anki 컬렉션에 오디오 파일을 만들어 저장하는 것이다. 이 때 만들어진 태그들은 Anki에서 원래 사용하는 것이어서 모든 버전에서 자체적으로 인식할 수 있는 것이기 때문에 일단 한번 만들어지면 AwesomeTTS가 없이도 재생이 가능하다.


그 외 알아두면 좋은 사항들


1) 카드 앞뒷면에서 오디오 사운드 재생

카드 앞뒷면에서 동일한 오디오 사운드를 재생되게 하려면 [sound] 태그가 있는 필드가 카드의 앞뒷면에 모두 배치되어 있어야 한다. 따라서 사운드나 TTS를 위한 특정 필드를 만들어 카드 템플릿에서 앞면과 뒷면에 해당 필드를 배치하AwesomeTTS로 오디오 사운드를 만들 때 목적 필드(destinaton field)를 이 특정 필드로 지정해주면 된다.

 

2) 소스 필드목적 필드가 없는 경우

만일, 카드 브라우저에서 선택한 다양한 카드와 노트 중에서 오디오를 생성할 텍스트를 가진 소스 필드와 생성된 사운드를 집어넣을 목적 필드가 없는 카드와 노트가 선택되어 있을 경우 해당 노트와 카드에서는 오디오 사운드를 생성하지 않고 그냥 건너뛰게 된다.


3) 텍스트 필터링

AwesomeTTS는 작업을 수행하면서 특정 텍스트를 자동으로 필터링할 수 있다. 가령 괄호 속에 있는 텍스트 같은 것들 말이다. 빈칸 카드에서 이 빈칸을 어떻게 다룰지는 경우에 따라서 조정할 수 있다. 이 설정에 대한 자세한 사항은 구성(Configuration) 화면에서 텍스트 탭으로 가라.

 

4) 작업 취소

작업을 하다가 실수할 수 있다. 이런 경우 카드 브라우저 상단의 편집(Edit) 메뉴에 들어가면 AwesomeTTS Batch Update 취소를 선택하여 이를 취소할 수 있다.

 

5) 사용 트래픽 제한에 따른 조치

대량으로 오디오를 생성할 때 대부분의 서비스들은 그 사용 트래픽이 제한되어 있다. 이 사용 트래픽 제한은 서비스당으로 설정되어 있으므로 하나의 서비스만 이용하지 말고 서비스들을 그룹으로 묶어서 요청을 분산시킬 수 있게 하는 것이 바람직하다.

 

6) 여러 노트에서 한번에 오디오를 삭제하고 싶다면 카드 브라우저 상단의 메뉴에 AwesomeTTS메뉴에서 "Remove Audio from Selected"를 선택하면 된다. 





노트 추가창(Note Editor)


노트 추가창(Note Editor)은 원하는 노트를 하나하나 편집하여 추가하는 가장 기본적인 창이다.

 

메인 메뉴 상단의 추가 버튼을 클릭하면 노트 추가창(Note Editor)이 나타난다.




이렇게 열린 노트 추가 창에서는 AwesomeTTS를 이용하여 오디오 파일들을 하나하나 더하거나 업데이트할 수 있다.




AwesomeTTS 사용하여 노트 추가창에 오디오 삽입하기



1) 노트 추가창에서 오디오 [sound] 태그를 두고 싶은 입력 필드를 활성화한다.


필드란 우리가 공부할 내용을 기입할 수 있는 공간으로 아래에서 빨간 테두리로 나타낸 곳들이 전부 필드이다. 만약, 새로운 필드를 만들고 싶으면 [필드...] 버튼을 눌러 필드를 추가하면 된다.


 


 


2) 도구 상자에서 스피커 모양의 아이콘을 클릭하면 바로 AwesomeTTS오디오를 노트에 추가할 수 있는 대화상자가 열린다.





3) 원하는 서비스를 선택하고 옵션들을 구성한다.

 

서비스에 대해서는 앞서 포스팅한 03 AwesomeTTS에서 제공하는 TTS 서비스에 대해서... 를 참조하여 마음에 드는 서비스를 찾아보면서 실험해보길 바란다. 이 경우에는 자주 쓰이는 Google Translate를 이용하였다. 



4) 입력된 구문이 제대로 입력되었다는 것을 최종확인하고 [Preview] 버튼을 클릭하여 소리가 잘 나오는지 확인한다.


TTS로 사운드로 전환할 텍스트Preview and Record 박스 안에 나타난다. 그리고 이 박스 안에는 우리가 TTS를 입력하기 위하여 스피커 모양의 버튼을 눌렀을 때 커서가 있던 필드의 텍스트가 그대로 입력되어 있을 것이다(그래서 위의 사진에는 아무런 텍스트도 기입되어 있지 않다). 다른 텍스트를 사운드로 전환하려면 해당 박스에 원하는 내용을 기입하면 된다.

 

가령, 아래와 같이 사운드로 바꿀 텍스트를 korea로 바꾸고 사운드를 확인해보자




[Preview] 버튼을 누르면 korea를 읽는 Google Translate 사운드를 들을 수 있다.



5) 마지막으로 [Record] 버튼을 눌러 오디오 클립을 필드에 삽입한다.

 

[Preview] 버튼을 눌러 확인한 사운드가 마음에 들었다면 [Record] 버튼을 눌러 오디오 클립을 필드에 삽입한다.



[Record] 버튼을 누른 후에는 Front 필드korea라는 텍스트를 읽어낸 오디오 클립이 [sound]태그 형태로 필드에 삽입된다.

 



이 때, [Record] 버튼을 누른 후 해당 오디오 파일이 생성되어 미디어 컬렉션에 저장되고 이 생성된 오디오를 [sound] 태그로 호출하는 형식이므로 Anki의 모든 버전에서 자체적으로 인식이 가능하고 일단 한번 만들어지면 AwesomeTTS가 없어도 해당 오디오 파일을 재생하는데 전혀 문제가 없다.

 


그 외 알아두면 좋은 사항들


1) 텍스트 자동 인식

 AwesomeTTS를 사용하기 위해서 스피커 모양의 아이콘을 클릭하면 대화상자(Add TTS Audio to Note)가 나타나는데 이 대화상자에는 입력필드에 있는 텍스트를 자동으로 오디오로 전환하려고 하는 텍스트로 인식한다만일 입력필드가 비어있다면 AwesomeTTS클립보드에 임시로 저장되어 있는 텍스트를 자동으로 오디오로 전환하려고 하는 텍스트로 인식한다. 이 부분의 옵션은 구성(Configuration) 화면의 텍스트(Text) 에서 조정하면 된다.

 

2) 오디오 삭제

노트에 추가한 오디오들이 마음에 들지 않을 때, 카드 탐색기를 이용하면 한꺼번에 오디오를 삭제할 수 있다.

 

3) 단축키

노트 추가창에서 AwesomeTTS를 실행하는 단축키는 Ctrl+T(또는 Mac OS X에서는 Cmd+T)이다. 그런데 이 단축키는 LaTex의 단축키를 덮어쓰게 되므로 LaTex의 단축키를 보존하고 싶다면 AwesomeTTS구성(Configuration)에서 이를 조정하면 된다.



 

AwesomeTTS 서비스 형식


AwesomeTTS는 자체적으로 텍스트를 스피치 사운드로 변환시키는 것이 아니라 이미 온라인이나 OS 등에서 제공하는 TTS 서비스에 텍스트를 스피치 사운드로 변환시켜 달라는 요청을 보내고 그 응답을 받는 형식의 소프트웨어다.


그러다 보니 어떤 TTS 서비스를 사용할 것인지가 스스로 알아보고 찾아둘 필요가 있다



사용자 컴퓨터에 설치된 TTS 소프트웨어(Local Software)


Anki 사용 중에 AwesomeTTS의 오디오 생성 대화상자를 처음 열었을 때, 사용자의 시스템에 TTS 서비스가 설치되어 있고 해당 TTS 서비스가 AwesomeTTS가 지원하는 형식일 경우 AwesomeTTS는 자동으로 해당 TTS 서비스를 찾아서 서비스 목록에 등록한다. 만일, 어떤 서비스가 본인의 AwesomeTTS 서비스 항목의 드롭다운 메뉴에 나타나지 않는다면, 이는 AwesomeTTS가 그 서비스를 찾지 못했거나 사용할 수 없는 것이다.

 

AwesomeTTS와 같이 사용할 새로운 소프트웨어를 설치하기로 결정했다면 AwesomeTTS가 새로 설치된 소프트웨어를 인식하기 전에 Anki를 다시 시작할 필요가 있다는 점을 주의하라.

  

아래 서비스 항목은 간략하게 정리한 것이다. 아래 정리된 내용은 사용자 컴퓨터에 설치하여 사용할 수 있는 그저 몇 가지 주요 TTS 서비스를 정리해둔 것이다. 서비스의 상세한 내용은 링크를 따라 홈페이지를 참조하길 바란다.

 

§Ekho


한국어와 몇 가지 중국어 방언(WindowsLinux)


§eSpeak


광범위하게 많은 언어들에서 TTS 서비스를 제공(WindowsLinux)

 

§Festival


기본적으로 영어를 지원하고 다른 언어들도 별도로 설치가 가능하다. (Linux만 가능)

 

§iSpeech


다양한 언어에 대한 고품질의 소리를 제공하는 API를 제공하지만 유료


§Microsoft Speech API (SAPI)


윈도우의 데스크탑 소프트웨어에서 TTS 재생이 가능하도록 구축된 인터페이스


§OS X Speech Synthesis Manager


시스템 환경설정을 통해서 많은 언어들을 설치할 수 있다. Mac OS X에 구축되어있다.


§RHVoice


러시아어, 조지아어, 영어 그리고 에스페란토어에 대하여 서비스를 제공해준다. Linux는 기본적으로 설치되어 있고 Windows에서는 SAPI를 통해서 제공된다.


§SVOX Pico


Android 운영체제에서 사용되는 음성 합성기


위에서 몇가지 서비스에 대해서 언급하고 있지만 결국 주로 온라인 TTS 서비스인 Google Translate를 많이 사용하고, 윈도우즈 사용자라면 대부분 Microsoft Speech API (SAPI), 맥 계열일 경우 OS X Speech Synthesis Manager를 주로 사용하는 것으로 알고 있다. 그 외에, 온라인에서 NAVER translate에서 제공하는 서비스도 볼 수 있다. 다양한 서비스를 실험해보고 사용자들이 마음에 드는 서비스를 골라볼 필요가 있다.







AwesomeTTS 설치하기


일단, AwesomeTTS를 설치해보자.

 

Anki를 실행하고 아래와 같이 메인 메뉴에서 도구 추가 기능(A) 둘러보고 설치하기를 클릭한다.


 



그러면 설치 코드를 기입할 수 있는 대화창이 아래와 같이 나타난다. AwesomeTTS 설치 코드를 알면 해당 코드를 집어넣고 확인을 클릭하고 코드를 모르면 탐색을 눌러 추가 기능을 볼 수 있는 웹페이지로 이동한다.




추가 기능 페이지의 가장 상단에 AwesomeTTS가 나타나 있다. 이를 클릭한다



 

그러면 AwesomeTTS에 대한 설명과 소개가 있는 화면이 나타나고 그 아래에는 설치 코드가 표시된다. 코드를 복사한다.




 복사한 코드를 다시 추가 기능 설치 대화창의 코드 부분에 붙여넣고 확인을 클릭한다.





그러면 다음과 같은 설치 성공 메시지가 나타난다.


 


Anki를 다시 시작한 후에 도구 추가 기능(A)을 눌러보면 아래와 같이 AwesomeTTS가 설치되어 있는 것을 확인할 수 있다.


 




AwesomeTTS 란 무엇인가?


매우 Awesome(끝내주는) TTS(Text to speech)라는 의미로 읽고 있다.

 

, 간단하게 말하면 컴퓨터가 텍스트를 소리내어 읽어주는 끝내주는 추가 기능인 셈이다.

 

그럼 정말 끝내주는 추가기능일까?


1) 이미 사용자들에게 인정받은 추가 기능


내가 2015년 말부터 Anki를 들여다보기 시작했는데, 그 때부터 지금까지 추가 기능(Add-on)의 순위에서 거의 항상 부동의 1위를 유지할 정도로 Anki에서는 사람들에게 사랑받고 있는 추가 기능이다.

 

2) TTS 서비스 사용에 있어 편의성을 극대화


직접 사용해보니, 일단 몇 가지만 파악하면 AwesomeTTSAnki 카드에 너무나 쉽게 오디오 사운드를 집어넣을 수 있고 상황에 따라서 다양하게 사용할 수 있어 정말 쓸만하.

 

또, 좋은 점은 다양한 TTS 서비스를 Anki에 쉽게 사용할 수 있다는 점이다. 우리가 TTS 서비스를 이용하여 카드를 만들려면 우선, 다양한 TTS 서비스를 찾아서 공부하고자 하는 언어를 읽을 수 있는지 그 품질이 좋은지 확인해야 한다. 그리고 해당 TTS 서비스를 통해서 얻은 오디오 파일을 다시 조작하고 카드에 붙여넣는 작업을 전부 손으로 해야 한다. 하지만 AwesomeTTS를 설치하면 사용 가능한 대부분의 TTS 서비스를 찾을 필요 없이 그 자리에서 바로 실행해보고 오디오 품질을 확인할 수 있다. 뿐만 아니라 카드에 바로 해당 사운드 오디오를 삽입하는 과정이 거의 자동으로 이루어지므로 그 편안함이 이루 말할 수 없다.

 


그 외에도 Anki 카드를 만들어 사용하는 과정에서 다양한 방식으로 오디오 사운드를 삽입하고 제거할 수 있는 등 그 편의성이 뛰어나고 다양한 설정을 적용할 수 있다는 점도 장점이다.


3) 어학 공부에 있어 TTS의 필요성

 

어학을 공부할 때, 글자를 익히고 단어를 외우는 과정은 반드시 필요하다 하지만 단순히 글자로만 어학을 공부하게 되면 언어를 귀로 듣고 이해하는 과정이 없어 공부의 질과 효율이 좋을 수 없다. 

 

물론, TTS는 컴퓨터가 읽어주는 것이므로 사람의 목소리만큼 생동감이 있지는 않다. 따라서 복잡한 감정이 표현되는 문장을 TTS로 읽을 때는 어색함이 느껴질 수밖에 없다. 하지만 단순한 단어는 그 발음과 악센트를 명확하게 읽어주기 때문에 단순히 글자와 발음기호를 눈으로 보는 것과는 비교할 수 없을만큼 효율적인 단어 학습이 가능해지게 된다.

 

4) 오디오를 이용한 짜투리 시간 활용성 극대화


또한, 이를 응용하면 이제껏 눈으로 보고 확인하던 학습에서 귀를 이용한 학습을 할 수 있게 만들어준다. , 카드를 볼 필요 없이 음성을 제공해주므로 지하철의 이동구간이나 산책, 운동을 하면서도 일일이 카드를 볼 필요 없이 학습을 지속할 수 있게 되므로 짜투리 시간을 활용한 학습을 가능하게 해주는 것이다



Anki는 그 자체로도 매우 유용하지만 추가 기능(add-on)을 사용하면 더욱 다채롭고 편하게 활용할 수 있다. 


이 추가 기능에 대한 전체적인 설명은 Anki 매뉴얼의 103_(Miscellanea)_기타 참조하기 바란다. 


또, 앞서 소개한 바 있는 퀴즐렛(Quizlet) 학습자료 가져오기도 매우 유용한 추가 기능 중 하나이다. 


추가 기능은 전 세계의 다양한 Anki 유저들이 직접 만들어서 배포하는 것이어서 매우 전문적으로 잘 만들어진 것부터 간단한  것까지 매우 다양하게 만들어져 배포되고 있다. 추가 기능들은 다음의 추가 기능(Add-on) 페이지를 통해서 확인할 수 있다. 


https://ankiweb.net/shared/addons/




추가 기능(Add-on)들이 무척 많아 어떤 추가 기능을 사용하는 것이 좋은지 판단하기 어려워 보이지만 기본적으로 오른쪽에 등급(rating)과 함께 제시되기 때문에 다행히 어떤 추가 기능(Add-on)들이 선호되고 있는지 파악하기 쉽다.


이런 점을 참고해서 많은 추가 기능을 둘러보고 인터넷 검색도 해본 결과 다음 두 가지 추가 기능은 알아두면 크게 쓸모가 있을 것으로 보인다. 

 

- AwesomeTTS (text-to-speech playback / recording)

- Image Occlusion Enhanced

 

모든 추가 기능들을 소개하긴 어렵고 필요할 때마다 이 카테고리에서 여러 가지 추가 기능들을 소개할 계획이다. 그리고 우선적으로는 위에 언급한 두 가지 추가 기능의 사용법을 알아보도록 하겠다. 

기초 사용법 마무리



이제껏 vim에 대해서 기초적인 것들은 대부분 언급한 것 같다. 이 다음 단계는 vim의 각종 플러그인을 사용해보고vim 프로그래밍 스크립트를 작성하는 것이다.

 

스스로의 공부를 위해서 공부할 내용을 짧고 간결하게 제시하고 이를 앙키(Anki)로 정리하여 첨부한 것이 Ankilog. 그리고 vim을 익히려면 우선적으로 어느 정도 수준으로는 사용할 수 있게 만들어놓아야 그 때부터 실제 작업에 vim을 사용하면서 시행착오를 겪고 발전해나갈 수 있게 될 것이라고 판단했다. 그래서 잘 모르는 부분이라도 일단, 기초적인 사용법을 숙지하는 것에 초점을 두고 Ankilog를 작성해왔다.

 

그런데 해보니 역시 IT에 대한 기초가 없이 많이 부족한 자신과 마주치게 되었다. 간단한 텍스트 에디터의 사용법을 파악하는데도 이해하기 어려운 맥락이 많이 보이고, 원문 기술서들은 영어는 알아먹겠는데 그 내용이 전혀 이해가 되지 않는 이상한 현상을 자주 겪었다. 아마도 내 무지로 인하여 vim에 대해서 그 동안 올린 것들도 일부 틀린 것이 존재할 것이라고 생각한다.

 

그래서 원래, 계획은 플러그인이나 스크립트에 대해서도 공부를 할 생각이었지만 지금의 내 실력으로는 도저히 역부족으로 보여서 이제는 잠깐 접고 내공을 기르기 위하여 다른 공부를 하려고 한다. 오히려 다른 IT 공부를 하면서 지금까지 배운 vim을 적극 활용해서 개발도 해보고 프로그래밍도 공부하면서 시행착오를 겪어가면서 vim을 직접 사용하는 것에 중점을 두어야 할 시기라는 생각이다.

 

그리고 이제껏 공부했던 vimAnki를 하나로 모아서 아래에 첨부하니 필요한 분은 사용하시기 바란다. 



Anki 파일


아래는 그 동안 올렸던  vim의 Anki를 하나로 모아놓은 Anki 파일입니다. 참고하시기 바랍니다. 








+ Recent posts