Azure AI Speech to Text API を使用する

完了

Azure AI 音声サービスは、2 つの REST API を介して音声認識をサポートしています。

  • 音声テキスト変換 API。音声認識を実行する主要な方法です。
  • 音声テキスト変換 (短いオーディオ) API。短いオーディオ ストリーム (最大 60 秒) 用に最適化されています。

音声入力の予想される長さに応じて、いずれかの API をインタラクティブな音声認識に使用できます。 "バッチ文字起こし" に音声テキスト変換 API を使用して、バッチ操作として複数のオーディオ ファイルをテキストに変換することもできます。

REST API の詳細については、Speech to Text REST API のドキュメントを参照してください。 実際には、インタラクティブな音声対応アプリケーションのほとんどは、(プログラミング) 言語固有の SDK を介して音声サービスを使用します。

Azure AI 音声 SDK の使用

具体的な詳細は、使用する SDK (Python、C# など) によって異なります。音声テキスト変換 API を使用するための一貫したパターンがあります。

A diagram showing how a SpeechRecognizer object is created from a SpeechConfig and AudioConfig, and its RecognizeOnceAsync method is used to call the Speech API.

  1. SpeechConfig オブジェクトを使用して、Azure AI 音声リソースへの接続に必要な情報をカプセル化します。 具体的には、その "場所" と "キー" です。
  2. 必要に応じて、AudioConfig を使用して、変換される音声の入力ソースを定義します。 既定では、これが既定のシステムのマイクですが、音声ファイルを指定することもできます。
  3. SpeechConfigAudioConfig を使用して、SpeechRecognizer オブジェクトを作成します。 このオブジェクトは、音声テキスト変換 API のプロキシ クライアントです。
  4. SpeechRecognizer オブジェクトのメソッドを使用して、基になる API 関数を呼び出します。 たとえば、RecognizeOnceAsync() メソッドは、Azure AI 音声サービスを使用して、1 つの発話を非同期的に文字起こしします。
  5. Azure AI 音声サービスからの応答を処理します。 RecognizeOnceAsync() メソッドの場合、結果は次のプロパティを含む SpeechRecognitionResult オブジェクトになります。
    • Duration
    • OffsetInTicks
    • プロパティ
    • 理由
    • ResultId
    • Text

操作が成功した場合、Reason プロパティには列挙値の RecognizedSpeech があり、Text プロパティに音声テキストが含まれます。 他に考えられる Result の値は、NoMatch (オーディオが正常に解析されたが、音声が認識されなかったことを示す)、またはエラーが発生したことを示す Canceled などです (この場合、CancellationReason プロパティの Properties コレクションを確認すると、何が問題なのかを判断できます)。