現在、ポケットフィンクス ライブラリを使用してホット ワード (「ok google」など) を認識しています。アプリは正常に動作しますが、常に電話のマイクのみを使用して音声を認識します。私のユースケースは次のようなものです:
- 熱い言葉に耳を傾け、MediaPlayer を使用して音楽を再生します。
- 音楽の再生を続けながら次のコマンドを聞き続け、それに応じて反応します。
アプリは正常に動作し、Bluetooth ヘッドセットを介して音楽が再生され、音声も同時に認識されますが、常に電話のマイクが使用されます。Bluetooth ヘッドセットが接続されていても接続されていなくても、電話のマイクを使用します。
私は使用してみました:
AudioManager mAudioManager =
(AudioManager)context.getSystemService(Context.AUDIO_SERVICE);
mAudioManager.setMode(AudioManager.MODE_IN_CALL);
mAudioManager.startBluetoothSco();
私は使用してみました:
AudioManager mAudioManager =
(AudioManager)context.getSystemService(Context.AUDIO_SERVICE);
mAudioManager.setMode(AudioManager.MODE_IN_COMMUNICATION);
mAudioManager.startBluetoothSco();
どちらのアプローチでも、音楽を遮断し、Bluetooth マイクで聞きます。
音楽プレーヤーがBluetoothヘッドセットから切り離されていないアプローチが必要ですが、それでもBluetoothヘッドセットから音声を認識できます。
例: Bluetooth ヘッドセットで音楽を聴いていました。音声録音アプリを開きました ( https://play.google.com/store/apps/details?id=com.andrwq.recorder ) 音楽を聴きながら、Bluetooth ヘッドセットを介して音声を録音できます。
これは可能だと感じますが、方法がわかりません。
私を助けてください。前もって感謝します。