問題タブ [webkitspeechrecognition]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - WebkitSpeechRecognition が録音をランダムに停止する
音声からテキストへの連続的な文字起こしを行おうとしていますが、webkitSpeechRecognition が広告どおりに機能していないようです。Continuous = true と interimResults = true を設定しても、ランダムに (通常は長時間の沈黙の後) 記録を停止するようです。EVERY.SINGLE.EVENT. その webkitSpeechRecognition は、私が見つけたドキュメントに基づいています。ここに私が持っているもののスクリプトがあります(本質的にデモのわずかな改造https://www.google.com/intl/en/chrome/demos/speech.html)
私が知っていること:
記録前にエラーは記録されません。
私はギガビット接続を使用しているため、遅延は関係ありません。
長い一時停止の後、正常に停止しますが、理由もなく停止することがあります。
2 分後またはわずか 30 秒後に発生する可能性があります。
以下のいくつかをコメントアウトしましたが、問題を追跡するのに成功することなく、それらすべてを試しました.
javascript - Android での音声認識 API の重複したフレーズ
Android では音声認識 APIが結果のフレーズを複製する (デスクトップでは複製しない)ことがわかりました。
語句ごとに、2 つの結果が返されます。最初のものは
そして2つ目は
ご覧のとおり、2 番目のリターンでは、フレーズが複製され、各コピーは としてマークされfinal
、2 番目のコピーは を超えてresultIndex
います。最初のリターンでは、コピーは 1 つしかなく、ありfinal
、それを超えていresultIndex
ます。
私は 2 回目の返品のみを行いますが、問題は、モバイル Chrome では発生するが、デスクトップでは発生しないことChrome
です。デスクトップChrome
は最初のリターンのみを返します。
問題は、これは設計上の動作によるものなのかということです。次に、すべてのコンピューターで一般的に、単一の最後のフレーズを区別する方法は?
または、これはサウンド エコーのようなエラーである可能性があります。問題は、エコーを回避/確認する方法です。
アップデート
HTML は次のとおりです。
コードは次のとおりです。
html - webkitspeechrecognition から音声を取得する
音声認識中に音声を録音したい。認識された音声の信頼度に基づいて、プログラムはユーザーの音声を保存または拒否します。
上記を行うには、次の 2 つの選択肢があります。
ブラウザからユーザーの声を録音し、Node JS サーバーに送信します。次に、音声を Google Speech API に投稿し、結果を取得します。信頼度に基づいてアクションを実行します。
ブラウザでユーザーの音声を認識して記録します。認識の信頼度が良好な場合は、Node JS サーバーに音声を送信して保存します。
2 番目の方法が良いようですが、ユーザーの音声を音声で取得するにはどうすればよいですか?
注: スピーチは連続しており、テキストの各部分は約 1 分間続きます。
環境: Google Chrome v49、HTML5 (ブラウザ側)。Node JS (サーバー側)
ご協力いただきありがとうございます。
編集#1(@rajuのコメントに基づく):
次のコードを試しました
動作しますが、音声認識の結果しか返されません。生音データも欲しいです。「認識」オブジェクトのさまざまなイベントとそのパラメーターを調べましたが、どれも私のニーズを満たしていません。何か提案はありますか?
javascript - WebkitSpeechRecognition が Electron でネットワーク エラーを返す
最近 (過去 1.5 週間)、javascript ライブラリ WebkitSpeechRecognition が正常に動作しなくなりました。私は、ライブラリ (evan cohen によるスマートミラー) を利用する他の電子アプリケーションをテストし、それらで問題に遭遇しました。
私がテストしたすべての状況で、ネットワーク エラーがスローされます。ライブラリは標準のブラウザ環境では問題なく動作するようですが、electron では動作しないようです。誰かがこれと格闘した経験がありますか?
c# - C# Dictation Grammar と Predefined Grammar を交互に使用する
ディクテーション文法と定義済み文法の両方を利用できるデスクトップ アプリケーションを C# で作成したいと考えていました。たとえば、Hound by SoundCloud、Google Now、Cortana、Siri と同様の機能を実現するためです。ということで、以下のように使用したいと思います。
- まず、私は事前に文を定義します。ユーザーは X と Y を足したようなものを使用すると確信しています。最初にこれらのパラメーターに従うような方法でディクテーション文法を使用することを意図しています。つまり、「what」「is」「plus」からリッスンし、処理のためにローカル変数に渡します)
- 第二に、正規表現を使用して定義済みの文をフィルター処理することで、口述文法をより柔軟にする方法があるかどうかを知りたいと思います。このようになります.. 「25 足す 108 は何ですか?」と言うとします。そして、認識エンジンがそれを「25 バスと 100 泊とは」と解釈するとします (注: 実際にこれをコピーして貼り付けました!) したがって、そのような解釈を if ステートメントで設定された既存の条件セットにマップする必要があります。チェーンまたはそれに類似したもの。
助けてくれてありがとう:) 注:サードパーティのAPIを使用するつもりはありません...
javascript - Opera での webkitSpeechRecognition API のサポート
Chrome で webkitSpeechRecognition API を使用しています。これはプロトタイプ アプリケーションであるため、Chrome のみをサポートできることを非常に嬉しく思います。そのため、window.hasOwnProperty('webkitSpeechRecognition')
チェックを行うことで API のサポートを検出します ( Google の提案に従って)。これは Firefox ではうまくいきませんが、新しい Opera (webkit ベース) ではプロパティがあると報告されています。実際、すべてのコードは意図したとおりに実行されますが、例外として、イベントが発生せず、音声が記録されません。
だから、私の質問は、どうにかしてそれを機能させることはできますか? 特別な権限や設定が必要ですか?
あるいは、webkitSpeechRecognition の適切な動作サポートを検出する方法はありますか (古き良きブラウザー スニッフィングは別として)。
javascript - webkitSpeechRecognition - 音声のピッチレートと音量
スピーチのピッチ、レート、ボリュームを取得する方法を見つけようとしています。
私は音声からテキストへの以下のコードを使用しています:
誰かが私のスピーチのこれらの情報を取得する方法を知っていますか? またはいくつかの代替ソリューション?
私はあなたの助けと注意に本当に感謝しています. どうもありがとうございました。
ヘレナ
google-chrome - 別のブラウザー タブが speechRecognition を使用しているかどうかを検出する
別の Chrome タブが webkitSpeechRecognition を使用しているかどうかを確認できますか?
別のタブが使用しているときに webkitSpeechRecognition を使用しようとすると、メッセージなしで「中止されました」というエラーがスローされます。webkitSpeechRecognition が別のタブで開いているかどうかを知りたいです。開いている場合は、ユーザーに通知できるより良いエラーをスローします。
javascript - WebkitSpeechRecognition が停止し、ランダムに発生しません
webkitSpeechRecognition を使用してテキストを書き起こそうとしています。私はこの例を見つけました:
そしてそれを自分のサイトに採用しました。これは、特定の条件下でうまく機能します。ただし、基本的には、人々が議論している間、文字起こしを「オン」のままにしたいだけです。
次のように、目的のためにコードを簡略化しました。
2 秒から 5 分間は正常に動作しますが、必然的にランダムに停止するようです。ここで質問に関するコメントを見ました:
WebkitSpeechRecognition が録音をランダムに停止する
これは、 Obj3ctiv3_C_88が考え出した解決策を意味します。ただし、説明されていることを実装する方法がわかりませんでした。
どんな助けでも大歓迎です。ありがとう!
javascript - Android webkitSpeechRecognition .isFinal 変数が正しい値を表示しない
モバイルで音声認識をしようとしています。ここにいくつかのコードがあります..
他の誰かがこの問題を抱えているかどうか、またこの問題を回避する方法についての洞察があるかどうか疑問に思っています。私のウェブサイトに例があります。
https://jaymartmedia.com/example/speech.html
ページにデバッグ情報を追加しました (モバイルでコンソールを「見る」ことができるようにするためです。デスクトップでは、「2: Final: false」と「2: Final: true」に気付く場合があります。これは、 "e.results[i].isFinal". モバイルでは、常に (または、少なくとも自分の電話で試したときは常に) "2: Final: true" になります。
それは大きな問題を引き起こしています。どんな洞察も大歓迎です。