336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.



오늘은 iOS 에서 사용 되는 기본 TTS(Text-to_Speech)에 대한 사용 설명 입니다.

잘 되어 있는 오픈소스도 많지만 기본으로 제공 되는 프레임워크를 통해 쉽게 구현 하실 수 있습니다.

TTS를 기본적으로 사용 하실려면 'AVFoundation'라는 프레임워크를 임포트 시켜 주셔야 됩니다. 

이제 Objective-C를 내려놓고 Swift를 사용 하는 시점이기 때문에 Swift를 통해 설명을 해 드리겠습니다.


밑에 코드를 보시면 AvSpeechSynthesizer를 통해 초기화를 해주시고나서

AVSpeechUtterance를 통해 TTS로 읽어줄 텍스트와 각 언어별로 지정을 해주고 rate를 통해 속도를 조절합니다. 

(저 같은 경우에는 0.4가 적당한 수치라고 느껴지는데 한번 수치를 다양한게 변경시켜서 앱 성격에 맞게 조절 해주시면 됩니다.)

AvSpeechSynthesizer로 초기화한 synthesizer의 speakUtterance 메소드를 통해 설정 해 놓은 AVSpeechUtterance 출력 시키면 됩니다.


(Swift)

1
2
3
4
5
6
7
let synthesizer = AVSpeechSynthesizer()

let utterance = AVSpeechUtterance(string: "your String")        
utterance.voice = AVSpeechSynthesisVoice(language: "en-US")
utterance.rate = 0.4
        
synthesizer.speakUtterance(utterance)
cs


(Objective-C)

1
2
3
4
5
6
7
AVSpeechSynthesizer * synthesizer = [[AVSpeechSynthesizer alloc]init];
    
AVSpeechUtterance * utterance = [[AVSpeechUtterance alloc]initWithString:@"Your String"];
utterance.voice = [AVSpeechSynthesisVoice voiceWithLanguage:@"en-US"];
utterance.rate = 0.4f;
    
[synthesizer speakUtterance:utterance];
cs


(지원 가능한 언어 목록)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
Arabic (Saudi Arabia) - ar-SA
Chinese (China) - zh-CN
Chinese (Hong Kong SAR China) - zh-HK
Chinese (Taiwan) - zh-TW
Czech (Czech Republic) - cs-CZ
Danish (Denmark) - da-DK
Dutch (Belgium) - nl-BE
Dutch (Netherlands) - nl-NL
English (Australia) - en-AU
English (Ireland) - en-IE
English (South Africa) - en-ZA
English (United Kingdom) - en-GB
English (United States) - en-US
Finnish (Finland) - fi-FI
French (Canada) - fr-CA
French (France) - fr-FR
German (Germany) - de-DE
Greek (Greece) - el-GR
Hindi (India) - hi-IN
Hungarian (Hungary) - hu-HU
Indonesian (Indonesia) - id-ID
Italian (Italy) - it-IT
Japanese (Japan) - ja-JP
Korean (South Korea) - ko-KR
Norwegian (Norway) - no-NO
Polish (Poland) - pl-PL
Portuguese (Brazil) - pt-BR
Portuguese (Portugal) - pt-PT
Romanian (Romania) - ro-RO
Russian (Russia) - ru-RU
Slovak (Slovakia) - sk-SK
Spanish (Mexico) - es-MX
Spanish (Spain) - es-ES
Swedish (Sweden) - sv-SE
Thai (Thailand) - th-TH
Turkish (Turkey) - tr-TR
cs

출처 : http://susemi99.kr/981



'iOS 프로그래밍 > iOS' 카테고리의 다른 글

iOS)딕셔너리 키값 정렬 하기  (0) 2016.06.06
iOS)랜덤 함수  (0) 2016.05.26
iOS)iPhone 해상도  (0) 2016.05.09
iOS)단어 정의 사전으로 찾기  (0) 2016.05.04
iOS)App 설정으로 이동하기  (0) 2016.05.03

+ Recent posts