Android TextToSpeechを使用して発信者名を読み取り、ヘッドセット(接続されている場合)からのみ再生したいと思います。
を指定すれば動作しますAudioManager.STREAM_VOICE_CALL as TextToSpeech.Engine.KEY_PARAM_STREAM
。電話のスピーカーから着信音が聞こえ、ヘッドセットから着信音+ttsが聞こえます。
しかし、私はこの方法に問題があります...
ヘッドセットでは、TTSが何かを言うと、着信音の音量が小さくなり、TTSしか聞こえません。TTSが終了すると、着信音の音量が以前のレベルに増加します。それで大丈夫です。問題は、着信音がスピーカーでも音量を下げるため、TTSが話している間は何も聞こえないことです(ヘッドセットのみ)。
異なる音を同時に再生できるようにする方法はありますか?STREAM_VOICE_CALL
そうでない場合は、ヘッドセットとSTREAM_RING
スピーカーにルーティングできますか?