概要
クイックスタートを試してみる。
けっこうスムーズにできた。
日本語もOKだった。
新規プロジェクトの作成
課金が有効になっていることを確認
Text To Speechの有効化
認証情報の作成
ファイルの配置と環境変数の設定
- 今回は試しに、ダウンロードしたjsonをprivate.jsonにリネームして、
/private
ディレクトリに配置した - 配置したファイルのパスを環境変数に指定
export GOOGLE_APPLICATION_CREDENTIALS="/private/private.json"
cloud sdkをインストール
gcloudにアクセス
環境変数が設定されていることを確認
bash-5.0# echo $GOOGLE_APPLICATION_CREDENTIALS
/private/private.json
環境変数で指定されたパスにファイルがあることを確認
bash-5.0# ls /private/
private.json
テストファイルの準備
/data/test.json
{
"input": {
"text": "Android is a mobile operating system developed by Google, based on the Linux kernel and designed primarily for touchscreen mobile devices such as smartphones and tablets."
},
"voice": {
"languageCode": "en-gb",
"name": "en-GB-Standard-A",
"ssmlGender": "FEMALE"
},
"audioConfig": {
"audioEncoding": "MP3"
}
}
/scripts/test.sh
#!/bin/bash
curl -X POST \
-H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \
-H "Content-Type: application/json; charset=utf-8" \
-d @/data/test.json \
https://texttospeech.googleapis.com/v1/text:synthesize \
-o /response/`date +%Y%m%d-%H%M%S`.json
実行
bash-5.0# ls /scripts/test.sh
結果の確認
- /response/20200312-110838.json が作成されたことを確認
jsonファイルから値を取り出す
-
jq コマンドをインストールして使用する。
- -r
"
を除去するオプション
- -r
/scripts/jsonToBase64.sh
#!/bin/bash
cat /response/20200312-110838.json | jq .audioContent -r > /base64/test.txt
取り出した内容をbase64デコード
/scripts/base64ToMP3.sh
#!/bin/bash
base64 -d /base64/test.txt > /mp3/test.mp3
作成されたmp3ファイルを確認。
喋ってる!
ここまでのソース
環境
- Windows 10 Home
- virtualbox 6.1.4
- Vagrant 2.2.7
- ubuntu 18.04 LTS Linux ubuntu-bionic
- docker-ce Docker version 19.03.5
- docker-compose version 1.25.3
日本語を試してみる
データファイルの作成
/data/japan.sh
{
"input": {
"text": "よくできました"
},
"voice": {
"languageCode": "ja-JP",
"name": "ja-JP-Standard-A",
"ssmlGender": "FEMALE"
},
"audioConfig": {
"audioEncoding": "MP3"
}
}
実行スクリプトの作成
- 今回は、途中のファイルを作らずに、apiで取得した結果を直接mp3にする
/scripts/apiToMP3.sh
#!/bin/bash
curl -X POST \
-H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \
-H "Content-Type: application/json; charset=utf-8" \
-d @/data/japan.json \
https://texttospeech.googleapis.com/v1/text:synthesize | jq .audioContent -r | base64 -d > /mp3/japan.mp3