【问题标题】:Record voice via Bluetooth Headset when ringing响铃时通过蓝牙耳机录制语音
【发布时间】:2018-08-31 16:39:18
【问题描述】:

众所周知,我们可以通过蓝牙耳机录制语音,我们应该使用SCO链接,但是当有电话来电时,系统会丢失sco链接,所以我无法从SCO链接获取PCM数据。如何解决它。 我会尝试这段代码,但它不起作用。

    AudioManager am = (AudioManager)context.getSystemService(Context.AUDIO_SERVICE);
    am.setMode(AudioManager.MODE_IN_COMMUNICATION);
    am.startBluetoothSco();
    am.setBluetoothScoOn(true);

当电话响起时,我可以从 SCO 录音吗?

【问题讨论】:

    标签: android bluetooth audio-recording android-bluetooth voice-recognition


    【解决方案1】:

    Android 会根据需要更改音频路由,当电话响铃(和/或接听电话时)时,音频会重新路由到目标设备(听筒、耳机、BT 等)。无法启动单个录音对象并获取所有数据(之前的数据,当前和未来的通话过程中的语音),但您必须监控语音通话状态(或当前的音频路由状态)并关闭之前的录音对象然后使用不同的设置创建一个新的。

    如果您只对手机响铃时的声音感兴趣,您可以使用 UPLINK 作为录音对象的 AudioSource 录制该数据。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-30
      • 2011-11-04
      • 2021-12-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多