go-chromecast を使って Google Home に喋らせる

September 06, 2021

google home に喋らせる

vishen / go-chromecastを用いて Linux マシンから 手軽に GoogleHome に WaveNet 音声で喋らせた。

下記のようにワンライナーで喋らせることができる。

~/go/bin/go-chromecast  --device-name shosai tts "こんばんは" --google-service-account=home-hogehoge.json --voice-name ja-JP-Wavenet-B --speaking-rate 1.05 --pitch 0.9

日本語サポート

サポートされている音声と言語

音声名 性別
ja-JP-Wavenet-A 女性
ja-JP-Wavenet-B 女性
ja-JP-Wavenet-C 女性
ja-JP-Wavenet-D 女性

go-chromecast インストール

$ go get -u github.com/vishen/go-chromecast

Google Cloud Text-to-Speech を使うための設定

Cloud Text-to-Speechの画面に移動。

[有効にする]を選択する。

次に go-chromecast から Text-to-Speech を使えるように API キーを作成する。

認証情報を作成する

使用する API の設定

認証情報を作成する

アカウント詳細。ここでは特に何も設定せず、完了を押した。

認証情報を作成する

サービスアカウントをクリックして、そのサービスアカウント用の秘密鍵を作成する。

認証情報を作成する

秘密鍵がダウンロードされた。

認証情報を作成する

秘密鍵を Linux マシンにコピーして鳴らす

go-chromecast コマンドで家の中にある Google Home をリスト化、その Google Home を鳴らす。

~/go/bin/go-chromecast ls

下記のような出力。この device_name を用いて指定する。

1) device="Google Home Mini" device_name="shosai" address="10.10.254.29:8009" uuid="674cb9e729653e7cb3c225bcddbbcfd1"
2) device="Chromecast" device_name="living" address="10.10.254.26:8009" uuid="0cc09e13c76eb01518e46afb56de4c0a"
3) device="Google Home Mini" device_name="\\227\\131\\170\\227\\131\\147\\227\\131\\179\\227\\130\\176" address="10.10.254.7:8009" uuid="a1ea9b590daec85c9e4c7f398dd96f17"

—google-service-account には上記で作成したサービスアカウントの認証情報の json ファイルを指定。

~/go/bin/go-chromecast  --device-name shosai tts "こんばんは" --google-service-account=home-hoge-hoge.json --voice-name ja-JP-Wavenet-B

Profile picture

Written by tin-machine 技術関連のメモ Twitter