Amazon Polly+ios shourtcut 활용하기

오늘의 날씨 정보를 들어보자

JC
Museion
3 min readJan 15, 2021

--

날씨 정보를 듣기 위해 ios shortcut을 이용해왔었다. ios의 기상 정보를 이용해 현재 위치의 기상 정보를 가져오고, siri로 말하기 기능을 이용해 이 목소리를 듣는 것이다.

아쉽지만 ios의 siri는 발전이 더디고 어색하다. 더 좋은 음성을 듣는 방법이 뭐가 있을까 며칠 고민하다가 AWS의 Polly를 생각했다.

Amazon Polly

Amazon Polly는 Amazon에서 공개한 음성합성 서비스이다. 텍스트를 입력하면 음성으로 응답을 해준다. 유사한 기능으로는 Clova Voice, Kakao Speech API가 있다. 두 서비스는 한국어 구사가 기본이고 매력적인 목소리도 있지만(유인나, 오상진 등) 사용하려면 별도의 신청을 해야한다. 가볍게 사용하기에는 Amazon Polly가 좋다. 그리고 AWS 행사에 가면 Polly가 안내방송을 하는 것을 들을 때 신기하면서 한 번 써보고 싶었다.

How to use

사용법은 무척 간단한데 Amazon Polly 기능 페이지 내용만 확인해도 될 정도다. 나는 AWS Lambda와 API Gateway, S3를 이용해 개발하기로 했다. S3가 꼭 필요한가 싶은데 음성을 바로 실행하는 방법을 모르겠어서 가이드 문서에 있는 내용으로 사용했다.

우선 Polly가 작동하는 Lambda 함수를 만들었다. 위 링크에 있는 코드만 가지고도 준비가 된다. 내용 중에 JoannaSeoyeon으로 변경했다.

이렇게 생성한 음성 파일을 S3에 저장해야 한다. 위 코드를 포함해 내가 사용한 Lambda 함수를 정리하면 아래와 같다(나는 python 개발자가 아니라서 코드에 부족한 내용이 있을 수 있다).

이 Lambda 함수를 API Gateway와 연결해야 한다. 이 과정은 인터넷에 많이 있기에 생략한다.

Complete

iOS의 shortcut은 내가 좋아하는 서비스인데 (5분 일기(5min journals)를 shortcuts(workflow)으로 남기기 ) 이를 활용하기로 했다. 기상 상태를 가져오고 텍스트 정보를 정리해 위 API를 호출하면 S3에 텍스트를 변환한 음성 파일이 speak.mp3로 저장된다. 이 내용을 바로 실행하면 완성이다. 아래는 실제 활용 영상이다.

--

--

JC
Museion

책 읽는 개발자. 아빠. 생산성, 책, 개발에 관한 글을 남깁니다.