このページでは、同期音声認識を使用して、短い音声ファイルをテキストに変換する方法を説明します。
同期音声認識は、短い音声(60 秒未満)で認識されたテキストを返します。60 秒を超える音声の音声認識リクエストを処理するには、非同期音声認識を使用します。
音声コンテンツは、ローカル ファイルから Speech-to-Text に直接送信できます。また、Speech-to-Text では Google Cloud Storage バケットに保存された音声コンテンツを処理できます。同期音声認識リクエストの制限については、割り当てと上限のページをご覧ください。
ローカル ファイルで同期音声認識を実行する
ローカル音声ファイルに対して、同期音声認識を実行する例を次に示します。
REST
詳細については、speech:recognize
API エンドポイントをご覧ください。リクエスト本文の構成について詳しくは、RecognitionConfig のリファレンス ドキュメントをご覧ください。
リクエスト本文に含まれる音声コンテンツは、Base64 でエンコードされている必要があります。音声を Base64 でエンコードする方法について詳しくは、Base64 エンコード音声コンテンツをご覧ください。content
フィールドの詳細については、RecognitionAudio をご覧ください。
リクエストのデータを使用する前に、次のように置き換えます。
- LANGUAGE_CODE: 音声クリップで使用されている言語の BCP-47 コード。
- ENCODING: 文字変換する音声のエンコード。
- SAMPLE_RATE_HERTZ: 文字変換する音声のサンプルレート(ヘルツ単位)。
- ENABLE_WORD_TIME_OFFSETS: 単語の開始時間と終了時間のオフセット(タイムスタンプ)を返す場合に、このフィールドを有効にします。
- INPUT_AUDIO: 文字変換する音声データの Base64 エンコード文字列。
- PROJECT_ID: Google Cloud プロジェクトの英数字の ID。
HTTP メソッドと URL:
POST https://speech.googleapis.com/v1/speech:recognize
リクエストの本文(JSON):
{ "config": { "languageCode": "LANGUAGE_CODE", "encoding": "ENCODING", "sampleRateHertz": SAMPLE_RATE_HERTZ, "enableWordTimeOffsets": ENABLE_WORD_TIME_OFFSETS }, "audio": { "content": "INPUT_AUDIO" } }
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
{ "results": [ { "alternatives": [ { "transcript": "how old is the Brooklyn Bridge", "confidence": 0.98267895 } ] } ] }
gcloud
詳しくは、recognize
コマンドをご覧ください。
ローカル ファイルに対して音声認識を実行するには、Google Cloud CLI を使用してファイルのローカル ファイル パスを渡し、音声認識を実行します。
gcloud ml speech recognize PATH-TO-LOCAL-FILE --language-code='en-US'
リクエストが成功すると、サーバーは JSON 形式のレスポンスを返します。
{ "results": [ { "alternatives": [ { "confidence": 0.9840146, "transcript": "how old is the Brooklyn Bridge" } ] } ] }
Go
Speech-to-Text 用のクライアント ライブラリをインストールして使用する方法については、Speech-to-Text クライアント ライブラリをご覧ください。詳細については、Speech-to-Text の Go API リファレンス ドキュメントをご覧ください。
Speech-to-Text に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
Java
Speech-to-Text 用のクライアント ライブラリをインストールして使用する方法については、Speech-to-Text クライアント ライブラリをご覧ください。詳細については、Speech-to-Text の Java API リファレンス ドキュメントをご覧ください。
Speech-to-Text に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
Node.js
Speech-to-Text 用のクライアント ライブラリをインストールして使用する方法については、Speech-to-Text クライアント ライブラリをご覧ください。詳細については、Speech-to-Text の Node.js API リファレンス ドキュメントをご覧ください。
Speech-to-Text に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
Python
Speech-to-Text 用のクライアント ライブラリをインストールして使用する方法については、Speech-to-Text クライアント ライブラリをご覧ください。詳細については、Speech-to-Text の Python API リファレンス ドキュメントをご覧ください。
Speech-to-Text に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
その他の言語
C#: クライアント ライブラリ ページの C# の設定手順を行ってから、.NET の Speech-to-Text のリファレンス ドキュメントをご覧ください。
PHP: クライアント ライブラリ ページの PHP の設定手順を行ってから、PHP の Speech-to-Text のリファレンス ドキュメントをご覧ください。
Ruby: クライアント ライブラリ ページの Ruby の設定手順を行ってから、Ruby の Speech-to-Text のリファレンス ドキュメントをご覧ください。
リモート ファイルで同期音声認識を実行する
Speech-to-Text API は、リクエストの本文で音声ファイルのコンテンツを送信しなくても、Google Cloud Storage にある音声ファイルに対して直接同期音声認識を実行できるようになっています。
Cloud Storage に保存されたファイルに対して同期音声認識を実行する例を次に示します。
REST
詳細については、speech:recognize
API エンドポイントをご覧ください。リクエスト本文の構成について詳しくは、RecognitionConfig のリファレンス ドキュメントをご覧ください。
リクエスト本文に含まれる音声コンテンツは、Base64 でエンコードされている必要があります。音声を Base64 でエンコードする方法について詳しくは、Base64 エンコード音声コンテンツをご覧ください。content
フィールドの詳細については、RecognitionAudio をご覧ください。
リクエストのデータを使用する前に、次のように置き換えます。
- LANGUAGE_CODE: 音声クリップで使用されている言語の BCP-47 コード。
- ENCODING: 文字変換する音声のエンコード。
- SAMPLE_RATE_HERTZ: 文字変換する音声のサンプルレート(ヘルツ単位)。
- ENABLE_WORD_TIME_OFFSETS: 単語の開始時間と終了時間のオフセット(タイムスタンプ)を返す場合に、このフィールドを有効にします。
- STORAGE_BUCKET: Cloud Storage バケット。
- INPUT_AUDIO: 音声文字変換する音声データファイル。
- PROJECT_ID: Google Cloud プロジェクトの英数字の ID。
HTTP メソッドと URL:
POST https://speech.googleapis.com/v1/speech:recognize
リクエストの本文(JSON):
{ "config": { "languageCode": "LANGUAGE_CODE", "encoding": "ENCODING", "sampleRateHertz": SAMPLE_RATE_HERTZ, "enableWordTimeOffsets": ENABLE_WORD_TIME_OFFSETS }, "audio": { "uri": "gs://STORAGE_BUCKET/INPUT_AUDIO" } }
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
{ "results": [ { "alternatives": [ { "transcript": "how old is the Brooklyn Bridge", "confidence": 0.98267895 } ] } ] }
gcloud
詳しくは、recognize
コマンドをご覧ください。
ローカル ファイルに対して音声認識を実行するには、Google Cloud CLI を使用してファイルのローカル ファイル パスを渡し、音声認識を実行します。
gcloud ml speech recognize 'gs://cloud-samples-tests/speech/brooklyn.flac' \ --language-code='en-US'
リクエストが成功すると、サーバーは JSON 形式のレスポンスを返します。
{ "results": [ { "alternatives": [ { "confidence": 0.9840146, "transcript": "how old is the Brooklyn Bridge" } ] } ] }
Go
Speech-to-Text 用のクライアント ライブラリをインストールして使用する方法については、Speech-to-Text クライアント ライブラリをご覧ください。詳細については、Speech-to-Text の Go API リファレンス ドキュメントをご覧ください。
Speech-to-Text に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
Java
Speech-to-Text 用のクライアント ライブラリをインストールして使用する方法については、Speech-to-Text クライアント ライブラリをご覧ください。詳細については、Speech-to-Text の Java API リファレンス ドキュメントをご覧ください。
Speech-to-Text に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
Node.js
Speech-to-Text 用のクライアント ライブラリをインストールして使用する方法については、Speech-to-Text クライアント ライブラリをご覧ください。詳細については、Speech-to-Text の Node.js API リファレンス ドキュメントをご覧ください。
Speech-to-Text に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
Python
Speech-to-Text 用のクライアント ライブラリをインストールして使用する方法については、Speech-to-Text クライアント ライブラリをご覧ください。詳細については、Speech-to-Text の Python API リファレンス ドキュメントをご覧ください。
Speech-to-Text に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
その他の言語
C#: クライアント ライブラリ ページの C# の設定手順を行ってから、.NET の Speech-to-Text のリファレンス ドキュメントをご覧ください。
PHP: クライアント ライブラリ ページの PHP の設定手順を行ってから、PHP の Speech-to-Text のリファレンス ドキュメントをご覧ください。
Ruby: クライアント ライブラリ ページの Ruby の設定手順を行ってから、Ruby の Speech-to-Text のリファレンス ドキュメントをご覧ください。