iOS How to use Text To Speech(TTS)

운영 체제: macOS Ventura 13.2.1
사용 버전: Xcode 14.3, Swift, SwiftUI
​

iOS How to use Text To Speech(TTS)를 알아보겠습니다.

​
오늘은 iOS에서 Text To Speech(TTS)를 사용하는 방법을 알아보겠습니다.
​
Text To Speech는 글자를 읽어주는 기능입니다. iOS 내부에는 Voice Over라는 기능이 있습니다. 이러한 기능을 사용하면 자동으로 글을 읽어주는데요. 오늘 다룰 내용은 이 Voice Over가 아닌 AVSpeechSynthesizer(), AVSpeechSynthesisVoice(), AVSpeechUtterance()를 사용할 겁니다.
​
​
Speech Synthesis 문서는 아래에 있습니다.
https://developer.apple.com/documentation/avfoundation/speech_synthesis

버튼을 누르면 말을 하게 만들 거라서 버튼을 하나 만듭니다.






9 번째 줄처럼 import AVFoundation을 적어줍니다.






16 번째 줄처럼 AVSpeechUtterance를 사용합니다. string에는 말하고 싶은 내용을 넣습니다. 저는 스타워즈의 포스가 함께 하길(May the Force be with you)를 적어봤습니다.







AVSpeechUtterance에는 몇 가지 조정할 수 있는 설정들이 있습니다.

18 번째 줄의 rate는 말하는 속도.

19 번째 줄의 pitchMultiplier는 음 높낮이.

20 번째 줄의 postUtteranceDelay는 여러 음성이 실행되기를 기다릴 때, 그 사이의 간격.

21 번째 줄의 volume은 소리의 크기.







다음은 목소리를 설정합니다.

AVSpeechSynthesisVoice를 사용합니다.

language에는 BCP 47 코드가 사용됩니다.

ko-KR은 한국, en-GB는 영국, en-US는 미국 등입니다.








25 번째 줄처럼 utterance에 voice를 넣어줍니다.







27 번째 줄처럼 AVSpeechSynthesizer를 정의합니다.

29 번째 줄처럼 utterance를 speak 합니다.








자, 실행하면 돼야 하는데... 왜 실행이 안 될까요?

​

12 번째 줄처럼 synthesizer를 밖으로 빼줍니다.







이제, 실행이 됩니다.

​

​

​

끝.

​

카테고리: iOS

댓글

이 블로그의 인기 게시물

음악 총보(Score), 파트보(Part)

Python urllib.parse.quote()

KiCad 시작하기 6 (FreeRoute 사용하기 1)

Kivy 시작하기 12 (Pyinstaller로 exe 파일 만들기)

일본어 문장부호

Android 특정 SDK Version 설정하기

KiCad 시작하기 4 (기존 회로도 수정 및 추가)

Android Compose Hilt

KiCad 시작하기 7 (FreeRoute 사용하기 2)

Python urllib.request.urlopen()