おそらく知っているように、Android APIを使用すると、音声テキストを実装するのは簡単です。 APIの意図を呼び出すだけで、テキストが返されます。私のケースはちょっと違う、私はユーザーから録音してSDカードに保存されている、あらかじめ録音された3GPPサウンドファイルを持っている。私は他の音声認識のようにそれをテキストに転記することが可能かどうかを知りたい。 speech-to-text APIはあなた自身のサウンドファイルのアップロードを許可していますか?それともこれは不可能ですか?自分のサウンドファイルからのテキストへの音声翻訳
答えて
APIでは許可されていませんが、潜在的な回避策についてはthis blog post and its commentsを参照してください。また、ファイルには高品質の音声が含まれていることを確認してください(少なくとも16ビットと16 kHz)。
も参照してください:
私はサウンドファイルからの音声をテキストに持つようにうまく機能しているソリューションを得ました。ここでは、ソリューションの動作を示すために作成した簡単なAndroidプロジェクトへのlinkです。また、私はアプリを説明するためにいくつかのプリントスクリーンをプロジェクトの中に入れました。
私が使ったアプローチを簡単に説明しようとしています。 Google Speech APIとFlac録音の2つの機能を組み合わせました。
Google Speech APIは、HTTP接続を介して呼び出されます。 Mike Pultz APIの詳細については、
"(...)新しい[Google] APIは全二重ストリーミングAPIです。つまり、実際には2つのHTTP接続を使用しています「ライブ」チャンクストリームとしてのコンテンツ、結果にアクセスするための2番目のGETリクエストなど、より長いオーディオサンプルやストリーミングオーディオの方がはるかに理にかなっています。
ただし、このAPIは正常に動作するにはFLACサウンドファイルを受け取る必要があります。 Flacレコーディング
私はそのプロジェクトで、AudioBooというオープンソースのアプリケーションからコードとライブラリの一部を抜き出し、適応させることでFlacレコーディングを実装しました。 AudioBooはネイティブコードを使用してflac形式を記録し、再生します。
このように、flacサウンドを録音し、Google Speech APIに送信し、テキストを取得し、今録音されたサウンドを再生することができます。
私が作成したプロジェクトには、それを機能させるための基本原則があり、特定の状況で改善することができます。別のシナリオで動作させるには、Google Chromium-devグループの一部として取得したGoogle Speech APIキーを取得する必要があります。私はそのプロジェクトにただ1つの鍵を残して、それが機能していることを示していましたが、私はそれを最終的に削除します。誰かがそれについてのより多くの情報を必要とするなら、私はこのポストに2つ以上のリンクを置くことができないので私に知らせてください。
NDK、固定ロットのパスとインポートをインストールしましたが、あなたが提案するプロジェクトは動作しません。私は今までに全面的に廃止される可能性があるので、単にダウンボートしません... – Josh
現在のところ、自分のオーディオファイルをGoogleに送信して処理することはできませんが、代わりにアンドロイドデバイスのスピーカーとマイクを使用して、音声ファイルをGoogle音声認識の入力として使用できます。
1)あなたは を希望する任意の名前でメソッドを作成します)、そのメソッドの最初の書き込みのコード内:
まず、次の手順を使用して、あなたのSDカードであってもよく、オーディオファイルを持っている必要がありますそのコード次のGoogleの音声認識
3)を使用するため、その後、Googleの音声認識
//code for google voice recognition
Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL,
RecognizerIntent.LANGUAGE_MODEL_FREE_FORM);
intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE, Locale.getDefault());
intent.putExtra(RecognizerIntent.EXTRA_PROMPT,
getString(R.string.speech_prompt));
try {
startActivityForResult(intent, REQ_CODE_SPEECH_INPUT);
} catch (ActivityNotFoundException a) {
Toast.makeText(getApplicationContext(),
getString(R.string.speech_not_supported),
Toast.LENGTH_SHORT).show();
//code for playing the audio file which you wish to give as an input
MediaPlayer mp = new MediaPlayer();
try {
mp.setDataSource(file); // here file is the location of the audio file you wish to use an input
mp.prepare();
mp.start();
} catch (Exception e) {
e.printStackTrace();
}
01への入力のようになるだろう、あなたのオーディオファイルを再生するスピーカーを使用するためのコードを書きます参考のため
を参照してください私は私のブログでのjavaファイルのリンクを同封しています。
- 1. オープンソースのテキストから音声への翻訳ライブラリ
- 2. ラテン語(英語、ドイツ語)からアラビア語への音声翻訳
- 3. Cordovaテキストから音声へ
- 4. ワトソンのテキストから音声へのメッセージ
- 5. 自動F#からC#への翻訳
- 6. HTMLのバックアップSpeechSynthesizer - テキストから音声へ
- 7. 音声からテキストへのエラー
- 8. テキストから音声へのライブラリー
- 9. テキストから音声へのWeb API
- 10. Androidのテキストから音声へ
- 11. スウィフトのテキストから音声へ
- 12. 音声からテキストへの変換R
- 13. 音声ファイルからテキストへのアンドロイドエンジン
- 14. 音声からテキストへのオーディオ形式
- 15. テキストから音声へのエラー、音声とテキストのボタンとの衝突
- 16. WSRのテキストへの音声
- 17. Androidテキストからテキストへの翻訳(フランス語から英語)
- 18. 音声認識:通訳者の音声を音声から切り離す
- 19. ライブストリームからの音声テキスト
- 20. チタンのテキストから音声
- 21. JavaScriptへのC#enumの自動翻訳
- 22. アンドロイドのテキストへのヒンディー語の音声
- 23. オフラインモードでのAndroidのテキストへの音声
- 24. 複数言語のテキストへの音声
- 25. 複数言語のテキストへの音声
- 26. iPhoneのテキストへの簡単な音声
- 27. Android音声テキスト音声音声
- 28. 翻訳からヒストリコンパイルへ
- 29. wav対話:音声からテキストへのトランスクリプトの品質
- 30. Java Watsonのテキストから音声への合成
この記事では、サーバーにサウンドファイルを送信し、JSONが戻ってくるのを待つことを証明しています。だから私はあなたがクライアント側で行う必要があると思うのは、3GPPファイルをFLACに変換してサーバーに投稿することだけです。うまくいけばそれは簡単です。 :) – Brian
それは現在Googleによって閉鎖されているGoogle Speech v1 APIに依存しています。音声v2 APIにはキーが必要で、私の経験では予測できなくなっています(アプリケーションが1日に行うことができる外部リクエストの数に制限があると思います) –