0

音声を Bluetooth にルーティングしたい。

以下のコードは私のプレーヤーです。

    AudioTrack at;
try {
            minbuffer = AudioTrack.getMinBufferSize(8000,
                    AudioFormat.CHANNEL_OUT_MONO,
                    AudioFormat.ENCODING_PCM_16BIT);
            if (minbuffer < VOICE_SPEECH_SIZE)
                minbuffer = VOICE_SPEECH_SIZE;
            at = new AudioTrack(AudioManager.STREAM_VOICE_CALL, 8000,
                    AudioFormat.CHANNEL_OUT_MONO,
                    AudioFormat.ENCODING_PCM_16BIT, minbuffer,
                    AudioTrack.MODE_STREAM);
            at.play();

            while (PlayOutblinker == Thread.currentThread()) {
                byte[] tt = vbuff.take();
                at.write(tt, 0, tt.length);
            }
        } finally {
            at.stop();
            at.release();
            at = null;
        }

私は以下を検索して見つけました:

public static void SetRouteBT(Context context, boolean isRoute) {// TODO
    AudioManager mAudioManager = (AudioManager) context
            .getSystemService(Context.AUDIO_SERVICE);
    mAudioManager.setMode(AudioManager.MODE_IN_CALL);
    mAudioManager.startBluetoothSco();
    mAudioManager.setBluetoothScoOn(isRoute);
}

しかし、それは機能しません。setBluetoothScoOn(true)音声がルーティングされず、スピーカーとマイクから切断された場合。問題はどこだ?

4

1 に答える 1