Amazon PollyをAWS SDK for Rubyから使ってみる #reinvent

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

はじめに

僕は今、AWS re:Invent 2016からの帰り道、ロサンゼルス国際空港にいます。ラスベガスのMcCarran International Airportから移動してきて、ここでトランジットして成田国際空港に向かいます。待ち時間は3時間。長い...

この待ち時間を有効活用すべく、弊社でも早速盛り上がっているAmazon Pollyを、AWS SDKを使ってRubyで動かしてみました。

やってみた

前提条件

前提条件は以下の通りです。

  • Rubyの開発環境が整備されていること
  • gemで最新のaws-sdkがインストールされていること
  • aws configureが実行され、~/.aws/credentialsが作成されていること(参考)

ソースコード

PollyClientを作成し、synthesize_speechさせるだけです。textでマルチバイトを使う場合は# encoding: utf-8を忘れずに。

# encoding: utf-8

require 'aws-sdk'

polly = Aws::Polly::Client.new

SampleRate = "16000"

resp = polly.synthesize_speech({
  response_target: "/home/ec2-user/speech.mp3",
  output_format: "mp3",
  sample_rate: SampleRate,
  text: "<speak>今私はロサンゼルス国際空港にいます。</speak>",
  text_type: "ssml",
  voice_id: "Mizuki",
})

実行結果

さいごに

Pollyをプログラムや情報システムに組み込むのはすごく簡単です。今後様々な形で活用されていくのではないでしょうか。