問題タブ [onutterancecompleted]
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.
android - onUtteranceCompleted は呼び出されませんか?
正しく設定していますが:
また
onInit 関数で成功を返します。それでも onUtteranceCompleted は呼び出されません。重複した質問がありますが、答えを見つけることができる場所はありません。
My Activity は OnUtteranceCompletedListener も実装しています。
助けてください。
android - 受信したTTSが長すぎる場合、onUtteranceCompleted()が失われます
AndroidのTTSエンジンで「文書化されていない異常」を観察しました。話すテキストが長すぎる(4K文字を超える)場合、その特定の発話のonUtteranceCompleted()は到着しません...
他の誰かがこれに出くわしましたか?
これは既知のバグまたは制限ですか?
これを回避するために何ができるでしょうか?
android - OnUtteranceCompleted を呼び出すにはどうすればよいですか?
私はウェブをサーフィンしており(Google / Android開発者ドキュメントを読んだり、stackoverflowの同様の質問を読んだり、本を読んだり)、例に非常に厳密に従いました。テキスト読み上げの「話す」はうまく機能します。しかし、OnUtteranceCompleted を呼び出すことができません。
答えが見えないほど単純に違いない。助けてください!いくつかのやり取りの後の私のコードは次のとおりです。
または、エミュレータ/実際のデバイスで動作するかどうかを確認するために実際に動作するものの完全なソースコード (スニペットではない) を提供してくれる親切な人がいますか?
android - onUtteranceCompletedはエミュレーターで起動されますが、ハードウェアでは起動されません
onUtteranceCompleted()
GalaxyNexus4.0.2で解雇されません。API 8、10、および15を使用するエミュレーターは起動しますonUtteranceCompleted()
。
編集:まあ..上記のステートメントはほとんどの場合に当てはまります、私はちょうどそれを私のハードウェア4.0.2で動作させることができました。それから私はそれを閉じて再開しました、そしてonUtteranceCompleted()は再び解雇されませんでした。昨日(一部のコードが変更される前)同じことをしていたので、90%の時間は機能していません。それを理解することはできません;(
edit2:FYI:mTts.setOnUtteranceCompletedListener(this); TextToSpeech.SUCCESSを返します
これが私のコードです:
android - playEarcon() に onUtteranceCompleted() がないことは、TtsService で何が説明できるでしょうか?
playEarcon()
しばらく前に、 が を生成しないこと を発見しましたonUtteranceCompleted()
。
当時、 「発話が合成されたときに呼び出される」というドキュメントをonUtteranceCompleted()
、イヤーコンには適用できないと解釈しました。なぜなら、イヤーコンは実際には TTS 合成の結果ではないからです。
しかし、Android のソース コードをもう一度見てみると、私の解釈を正当化する説明が見つかりません。
私のテスト治具に関するいくつかの事実:
onUtteranceCompleted()
earcon の前の発話 ID には常に到着します。その発話は通常の TTS 発話であり、イヤコンではありません。- その後のearconは実行されます(つまり、意図したとおりです)。
onUtteranceCompleted()
そのearconは決して現れません。これは非常に一貫した再現可能な動作です。
TtsService のソース コードを深く掘り下げると、の到着 (または不在) に影響を与えるメソッドは 2 つしかないようですonUtteranceCompleted()
。
そのコードを調べると、3 番目の候補であるTtsService.getSoundResource()が除外されていることがわかります (私の earcon の onUtteranceComplete の欠如の原因として) getSoundResource()
。 null を返します。
同じロジックを使用して、最初の候補であるTtsService.processSpeechQueue()も除外できます。同じ事実 #2: イヤーコンは常に再生されるため、次の 2 つの重要なステートメントが常に実行されます。
したがって、2 番目の候補であるTtsService.onCompletion()のみが、 aplayEarcon()
が生成 されない理由の可能な説明として残されていonUtteranceCompleted()
ます。
そこでは、dispatchUtteranceCompletedCallback()の生成に失敗する条件が 2 つだけあります。
- currentSpeechItemCopy == null
- 発話Id.長さ() == 0
しかし、私はすべての utteranceIds をログに記録し、earcon が確実にそこにあるため、条件 2 を除外できることは確かです。
また、システム ログ全体を調べます。
欠落onUtteranceCompleted()
は、dispatchUtteranceCompletedCallback()が呼び出されなかった結果である可能性がありますが、mCallbacksMap.get(packageName)
null が返された結果である可能性もあります。
したがって、再び 2 つの可能性が残されていますが、どちらもあまり意味がありません。
- earcon のonCompletion()が呼び出されるまでに、earcon
mCurrentSpeechItem
は null です。しかし、なぜですか? - mCallbacksMapは空です。それは何で、いつ人口が増えるのですか?
このミステリーを解決するための提案やその他の説明はありますか?
java - Android STT onResult が TTS onUtteranceCompleted 後に起動しない
視覚障害者に方向を示すアプリを作ろうとしています。アプリは (TTS を使用して) 指示を提供し、(STT を使用して) ユーザー コマンドを取得します。ここに私の MainActivity のコードがあります
私のSTT.java
と私の TTS.java
onUtteranceCompletedListener がなければ、問題なく動作しました (STT onResult が発生しました)。しかし、onUtteranceCompleted の後、STT onResult を起動できません。
注: テスト デバイスが API レベル 10 (Android 2.3.3) であるため、onUtteranceCompletedListener (非推奨) を使用しています。
編集: TTS onUtteranceCompleted は正常に起動されます。問題は、STT onResult が何があっても起動されないことだけです。
android - onUtteranceCompleted メソッド内のインテントが機能しない
TextToSpeech 関数が完了したら、ユーザーをホーム画面に戻すインテントを実装しようとしていますが、機能していません。その理由はわかりません。これが私のコードです:
java - onUtteranceCompleted は PhoneCallListener を許可しません
なんらかの理由で、onutteranceCompleted から PhoneCallListener を含むメソッドを呼び出すことができません。エラー メッセージはありません。スクリプトの実行が停止しているように見えます。いくつかのログを追加したところ、PhoneCallListener を使用して setUpPhone の「こちら」のログに到達しました。PhoneCallListener がないと、最終ログ「電話の設定」に到達します。これが私がどのように実装したかのサンプルコードです。
android - TextToSpeech OnUtteranceCompletedListener が遅延を引き起こす
単語を 1 つずつ読み上げるには、TextToSpeech エンジンが必要です。1 つの単語の読み上げをキャッチして、次の単語を読み上げようとしています。しかし、OnUtteranceCompletedListener
スピーチのいくつかの遅延を引き起こします。だから私の質問は、どうすればこれを修正したり、のより良い実装を行うことができ OnUtteranceCompletedListener
ますか?