AWS for WrodPressのプラグインで自動音声再生と翻訳
Contents
AWS for WordPress
WordPressのプラグインでAWS(Amazon Web Services)のDeep Learningを使ったホームページの音声読み上げや他言語への自動翻訳を行うプラグインを試した時の備忘録。
ブログをAWSのEC2にWordPressをインストールして書いている事もあり、以前からAWS関連のプラグインを試してみたいと思っていた。
今回ちょっと機会があったのでプラグインをインストールしてみた。
環境
尚、このブログの環境は以下の通り。
Server | AWS(Amazon Web Services) EC2(Elastic Compute Cloud) |
OS | Ubuntu Server 18.04 LTS |
PHP | PHP 7.4 |
CMS | WordPress Ver5.5 |
テーマ | Hueman Ver 3.6.6 |
作業手順
おおまかな作業手順は以下の通り。
- AWSアカウントの作成
- プラグインのインストール
- プラグインの設定
AWSアカウントの作成
元々使っているアカウントだと権限が大きすぎて余計なリソースまでアクセスできてしまうので今回のプラグイン用に権限を絞ったAWSのアカウントを作成する。
AWSコンソール
AWSコンソールにログインをしてサービス一覧からIAM(Identity and Access Management)を選択する。
ユーザの追加
左のメニューから”ユーザ”をクリックする。
「ユーザを追加」ボタンをクリックする。
- ユーザ名:任意の名前
- プログラムによるアクセス:チェック
- AWS マネジメントコンソールへのアクセス:未チェック
「次のステップ アクセス制御」ボタンをクリックする。
ポリシーをアタッチ
アクセス許可の設定で「既存のポリシーを直接アタッチ」ボタンを選択する。
ポリシーのフィルター欄に”wordpress”を入力するとAWSForWordPressPluginPolicyが現れるのでチェックして「次のステップ:タグ」ボタンをクリックする。
タグの設定
必要に応じてタグ(e-mailなどのユーザ情報)を追加して「次のステップ:確認」ボタンをクリックする。
自分はタグは設定していない。
確認&作成
確認画面が表示されるので「ユーザの作成」ボタンをクリックする。
キーの保存
アクセスキーIDとシークレットアクセスキーが表示されるので保存しておく。
シークレットアクセスキーはこの画面でしか表示されないので忘れずに保存しておく必要がある。
作成された
AWS for WordPress用のアカウントが作成された。
プラグインのインストール
WordPressにAWS for WordPressのプラグインをインストールする。
WordPressの管理画面の左側のメニューからプラグイン、新規追加、プラグインの検索欄で”AWS for WordPress”を検索して表示する。
該当のプラグインが表示されたら「今すぐインストール」ボタンをクリックする。
インストールが終了したら「Activate」(有効化)ボタンをクリックする。
設定
プラグインがインストールされるとWordPressの管理画面の左のメニューにAWSメニューが表示されるようになるので各種設定を行う。
メニューからAWSー>Generalを選択する。
General
ここでは基本的な設定を行う。
- AWS access key:先程保存したアクセスキーID
- AWS secret key:先程保存したシークレットアクセスキー
- AWS Region:US East(N. Virginia)を選択した
東京リージョンだと現時点(2020年10月)ではテキストの日本語音声での読み上げ(Amazon Polly)には対応しているのだが他言語への翻訳( Amazon Translate)に対応していないので米国リージョンを選択している。
Text to Speech
続いてText-to-Speechメニューを選択する。
この設定を行うと記事上部(表示位置は指定可能)に音声再生用のプレイヤーが表示されて再生ボタンを押すと記事を読み上げてくれる。
使用用途は主に目の不自由な人向けの機能だと思うが後述する翻訳と組み合わせる事により、記事を翻訳して他言語で読み上げるなどの使い方ができるようになる。
設定画面
Amazon Polly(ディープラーニングを使用したテキスト読み上げサービス)に関する設定を行う。
設定値の説明
Source language | 記事の言語 Japanese(日本語)を設定した |
Enable text-to-speech support | text-to-speechを有効にするかどうか この項目をチェックして「変更を保存」することで以下の項目が表示されて設定可能になる |
Voice name | デフォルトではJapanese:Takumi(男性)とJapanese:Mizuki(女性)が選択できる 上記の2人であれば無料枠の対象になるが他の音声の場合は最初から有料になる |
Neural Text-To-Speech Newscaster Style Conversational Style | デフォルトの音声エンジンでは設定不可なのだがエンジンにニューラルを設定すると使用可能になる模様(未検証) ニュースキャスター風の発音スタイルや会話風の発音スタイル(自然かつフレンドリーに聞こえるらしい)が設定できる模様 |
Sample rate | サンプルレートは22050Hzを設定した 22050Hz、16000Hz、8000Hzが設定可能でサンプルレートを下げると音質が低下する |
Automated breaths | 自動息継ぎ(チェックした) チェックをすると適当な所(恐らく句読点)で息継ぎをする |
Enable SSML support | SSMLの有効化(チェックした) SSML(Speech Synthesis Markup Language)を使うことで強調や読み上げ速度、イタリア風の発音など様々なタグが用意されている |
Lexicons | 語彙集を登録する(未検証) 例えばW3Cを「World Wide Web Consortium」でレキシコンを登録しておけば登録された内容で発音してくれる 専門用語が多いサイトなどでは効果があるのだと思われる |
Audio speed [%] | 音声の再生スピート デフォルトの100%だと若干遅く感じたので120%に設定した |
Player position | 再生プレーヤーの表示位置
が選択できる |
Player label | プレーヤーの上部中央にラベルを表示させることが出来る |
New post default | 新規投稿時にAmazon Pollyをデフォルトで有効にするかどうか
が選択可能でdisabled(無効)を選択している |
Autoplay | 自動再生(未チェック) チェックするとページが読み込まれた時に自動で音声が再生される |
Bulk update all posts | 全ての過去の投稿を含めて一括でAmazon Pollyの設定を変更する機能の様だがこのプラグインのバージョンでは機能が無効になっている |
Add post title to audio | 記事のタイトルを読み上げるかどうか 有効にしている |
Add post excerpt to audio | 記事の抜粋の表示 有効にすると各オーディオファイルの冒頭に投稿の抜粋が表示されるとあるが正直良くわからなかった |
Enable Media Library support | 他のメディアプレーヤーにしたい時に選択するのだと思われる ローカルストレージを有効にする必要があり未検証 |
Skip tags | 正直使い方が分からなかった ここで指定したタグはSSMLで指定してもスキップされるのかも |
Enable download audio | チェックをするとプレーヤーの右にダウンロードメニューが表示されて音声のダウンロードが可能になる |
Store audio in Amazon S3 | チェックをするとAmazon S3上にmp3形式でオーディオファイルが保存される |
Post types | WordPressでの投稿タイプ 初期値でpostが設定されていたが使い方は良くわからなかった |
Amazon CloudFront (CDN) domain name | Amazon CloudFrontを使ってコンテンツの配信を高速化したい時にドメイン名を指定する 自分は利用していないので未設定 |
Display “Powered by AWS” | チェックをするとプレーヤーの右下に”Voiced by Amazon Polly”と表示される |
Enable logging | ログを有効化するかどうか |
料金体系
Amazon Pollyの最新の料金体系はこちらを参照して欲しい。
現時点(2020年10月)では最初のリクエストから12ヶ月間は1ヶ月あたり500万文字までの無料枠がある。
無料枠を超えた場合は100万字に対して4.00ドル、またTakumiとMizuki 以外のニューラル音声の場合は100万文字に対して16.00ドルとなっていた。
Translate
ここでは他言語への翻訳に関する設定を行う。
この機能は現時点(2020年10月)ではUS East (N. Virginia)、 US East (Ohio)、 US West (Oregon)、EU (Ireland)のリージョンしか使用できないので最初のGeneralで上記のいずれかのリージョンを指定する必要がある。
設定画面
Amazon Translate(ディープラーニングテクノロジーをベースとした翻訳サービス)に関する設定を行う。
下記の画面ショットは言語が多いので途中を省略している。
設定値の説明
Enable translation support | チェックをするとAmazon Translateが有効になり他言語への自動翻訳が可能になる |
Source language | ページの元の言語 “Japanese”を選択した |
Enable audio for translations | チェックをするとオーディオへの変換が有効になる(チェックをした) |
Target languages | 変換先言語 チェックをした言語が対象になるので試しにEnglish、French、Russianをチェックしてみた 現時点(2020年10月)で使用可能な言語は以下の通り
|
Voice | 言語によっては複数の音声をプルダウンから選択する事ができる 以下はEnglishの例 |
Label | 表示の際のラベル |
Display | プレイヤーに表示する際の表示方法
が指定可能 |
Post types | WordPressでの投稿タイプ |
Enable logging | ログを有効化するかどうか |
翻訳の実行
上記の設定をすると投稿画面の下部にAmazon Pollyの設定が表示されるようになるので、Enable Text-To-Speech (Amazon Polly)にチェックをして「Translate」ボタンを押すと翻訳が開始される。
Enable Text-To-Speechのチェックボックスなのだが記事毎に設定をすることが出来る。
ただ自分の環境ではチェックを外して更新したのにも関わらず勝手にチェックが入ってしまう現象が発生している。
プラグインのサイトの掲示板を見たのだが同じ様な投稿は見当たらなかったので自分の環境だけかも知れないのでもう少し様子を見てみることにした。
翻訳後のページ
数分後に翻訳が終了すると投稿ページのプレイヤーの上部に日本、イギリス、フランス、ロシアの国旗が表示された。
それぞれの国旗を押すとページがその国の言語に自動翻訳されるのとプレイヤーの再生ボタンを押すと記事をその国の言語で読み上げてくれる。
以下の動画で確認してみて欲しい。
料金体系
Amazon Translateの最新の料金体系はこちらを参照して欲しい。
現時点(2020年10月)の料金体系は最初の翻訳リクエストから12ヶ月間は1ヶ月200万文字までの無料枠がある。
無料枠を超えた場合は100万文字あたり15.00ドルとなっていた。
Podcast
Amazon Pollycastは標準のポッドキャストアプリケーションを使用して音声コンテンツを再生する事ができる。
今回は設定をしなかったがいずれ設定をしたら記事に追記したいと思う。
Alexa Integration
上記のPodcastの設定を行うとAmazon Echo(アレクサ)から再生をする事ができる。
こちらもいずれ試したら記事にしたいと思う。
CloudFront
遅延の少ないグローバルコンテンツ配信用のネットワーク (CDN) サービス。
動画や写真、音声など容量が大きいコンテンツを配信する際に遅延の少ないネットワークで配信してくれるのでコンテンツが早く表示されるメリットがあるのだが、自分は設定していない。
料金体系
CloudFrontの最新の料金体系はこちらを参照して欲しい。
現時点(2020年10月)では最初の12ヶ月間は1ヶ月に50GBのデータ送信と200万件のHTTPリクエスト分が無料になっていた。
以上で今回の記事は終了とする。
この記事が何処かで誰かの役に立つことを願っている。
尚、当記事中の商品へのリンクはAmazonアソシエイトへのリンクが含まれています。Amazonのアソシエイトとして、当メディアは適格販売により収入を得ていますのでご了承ください。
最近のコメント