0

Android のように、Java スイング プログラムから Google Speech API にリクエストを送信できますか? 簡単なJavaプログラムでAndroidライブラリを使用する方法を意味します。たとえば、1 つの JFrame、jpanel、2 つのボタン (「開始」、「停止」、およびテキスト フィールド) だけです。はいの場合、何から始めなければならないか教えてください.b

4

1 に答える 1

4

答えはノーです。デスクトップ Java Swing プログラムから Android 音声認識ライブラリを使用することはできません。

代わりに、Google 音声認識 Web サービスを使用することもできますが、これは公式にはサポートされておらず、事前の通知なしに変更または削除される可能性があることに注意してください (ただし、Chrome ブラウザーが音声認識機能を提供するために使用するものであるため、その可能性はほとんどありません)。 .

Java から使用するには、FLAC でエンコードされたオーディオを含む HTTP リクエストを「 https://www.google.com/speech-api/v1/recognize 」に POST する必要があります。

リクエストを作成するための関連データ (サンプル値付き):

  • HTTP メソッド:POST
  • URL: " https://www.google.com/speech-api/v1/recognize?xjerr=1&client=chromium&lang=en-US&maxresults=10&pfilter=0 "
  • xjerrHTTP エラー コードとしてではなく、JSON の一部としてエラーを返すように音声サーバーに指示します。
  • client私の知る限り、実際には考慮されていませんが、「クロム」と言えば、リクエストがクロムから送信されているように見えるので安全です。
  • langスピーチの言語
  • maxresults返される仮説の最大数
  • pfilter「セーフ」フィルターのオン/オフを切り替える
  • "Content-Type:audio/x-flac; rate=16000"16000 を FLAC ファイルの周波数 (Hz) に置き換えます。

これにより、音声エンジンが見つけたさまざまな仮説 (代替案) を含む JSON を受け取ります。

Java から FLAC 形式でファイルをエンコードするには、jFLAC ( http://jflac.sourceforge.net/ )などのライブラリを使用できます。

于 2013-10-11T15:04:40.553 に答える