🎤

Node.jsでGoogle Text-to-Speech を使ってテキストを音声に変換する方法【デモ動画あり】

2022/06/08に公開

この記事について

この記事ではNode.jsでGoogle Cloud Platform (GCP)のCloud Text-to-Speechを使ってテキストを音声に変換する方法について紹介します。関連リソースを下記に示します。

https://www.youtube.com/watch?v=OTIQBAx_D24

おおまかな手順

おおまかな手順を下記に示します。

  1. コーディングの準備
  2. コーディング
  3. 動作確認

コーディングの準備

下記のコマンドを実行してコーディングの準備をします。

mkdir gcp-text-to-speech
cd gcp-text-to-speech
npm init -y
npm install --save @google-cloud/text-to-speech
touch input.txt main.mjs

コーディング

main.mjs

エディタでmain.mjsを開いて下記の内容を入力します。

input.txt

エディタでindex.txtを開いて音声に変換したいテキストの内容を入力します。例を下記に示します。

動作確認

下記のコマンドを実行してGCPのAPIにアクセスできるようにします。

gcloud auth application-default login

下記のコマンドを実行してテキストを音声に変換します。

node main.mjs

音声はoutputディレクトリに出力されます。

おわりに

JavaScriptで動画を撮影する方法のデモ動画 を作成する時にGoogle Text-to-Speechを使って動画の中で使用する音声を生成しようとしたのですが、CLI(gcloudコマンド)やGUI(Webコンソール)から利用できないと知った時は少し驚きました。一応 コマンドラインを使用してテキストから音声を作成する ドキュメントはあるのですが、curlコマンドを実行してAPIのエンドポイントにHTTPリクエストを送信する方法でかえって手間がかかりそうだったのでNode.jsのクライアントライブラリを使った方が手っ取り早いと思いソースコードを作成しました。その時に作成したソースコードを元にこの記事が誕生しました。

GitHubで編集を提案

Discussion