当前位置: 首页 > wzjs >正文

2网站制作标识标牌

2网站制作,标识标牌,凡客v 网上商城,射阳房产网遇到客户一个需求,如果连接了带mic的蓝牙耳机,默认所有的录音要走蓝牙mic通道。这个功能搞了好久,终于搞定了。1. 向RK寻求帮助,先打通 bt sco能力。此时,还无法默认就切换到蓝牙 mic通道,接下来我们需求默…

遇到客户一个需求,如果连接了带mic的蓝牙耳机,默认所有的录音要走蓝牙mic通道。

这个功能搞了好久,终于搞定了。

1. 向RK寻求帮助,先打通 bt sco能力。

此时,还无法默认就切换到蓝牙 mic通道,接下来我们需求默认切换到蓝牙通道。

2. 修改frameworks/av/services/audiopolicy/enginedefault/src/Engine.cpp,

默认走bt sco的mic录音输入源     

switch (inputSource) {
case AUDIO_SOURCE_DEFAULT:
case AUDIO_SOURCE_MIC:
device = availableDevices.getDevice(
AUDIO_DEVICE_IN_BLUETOOTH_A2DP, String8(""), AUDIO_FORMAT_DEFAULT);
if (device != nullptr) break;
if (audio_is_bluetooth_out_sco_device(commDeviceType)) {
device = availableDevices.getDevice(
AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET, String8(""), AUDIO_FORMAT_DEFAULT);
if (device != nullptr) break;
}
device = availableDevices.getFirstExistingDevice({
+                AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET,
AUDIO_DEVICE_IN_BLE_HEADSET, AUDIO_DEVICE_IN_WIRED_HEADSET,
AUDIO_DEVICE_IN_USB_HEADSET, AUDIO_DEVICE_IN_USB_DEVICE,
AUDIO_DEVICE_IN_BLUETOOTH_BLE, AUDIO_DEVICE_IN_BUILTIN_MIC});
break;


case AUDIO_SOURCE_CAMCORDER:
// For a device without built-in mic, adding usb device
device = availableDevices.getFirstExistingDevice({
-               AUDIO_DEVICE_IN_USB_DEVICE,
+              AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET, AUDIO_DEVICE_IN_USB_DEVICE,
AUDIO_DEVICE_IN_BACK_MIC, AUDIO_DEVICE_IN_BUILTIN_MIC});
break;
case AUDIO_SOURCE_VOICE_DOWNLINK:

3. 很关键的一步,在一个常驻service里边(或者可以在system ui模块实现)监听插入蓝牙耳机,进行默认sco模式切换

IntentFilter filter = new IntentFilter();
filter.addAction(BluetoothDevice.ACTION_ACL_CONNECTED);
filter.addAction(BluetoothDevice.ACTION_ACL_DISCONNECTED);
registerReceiver(myReceiver, filter);
BroadcastReceiver myReceiver = new BroadcastReceiver() {@Overridepublic void onReceive(Context context, Intent intent) {if (BluetoothDevice.ACTION_ACL_CONNECTED.equals(intent.getAction())) {Log.d("mod@bt", "bt connected");startBluetoothRecording(context);});} else if (BluetoothDevice.ACTION_ACL_DISCONNECTED.equals(intent.getAction())) {Log.d("mod@bt", "bt disconnected");stopRecording(context);}}}
};

    public void startBluetoothRecording(Context context) {
try {
AudioManager audioManager = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);

            if (!audioManager.isBluetoothScoOn()) {
audioManager.setMode(AudioManager.MODE_IN_COMMUNICATION);
audioManager.setBluetoothScoOn(true);
audioManager.startBluetoothSco();
}
} catch (Exception e) {
e.printStackTrace();
}
}

    public void stopRecording(Context context) {
try {

            AudioManager audioManager = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);

            if (audioManager.isBluetoothScoOn()) {
audioManager.setBluetoothScoOn(false);
audioManager.stopBluetoothSco();

            }

            audioManager.setMode(AudioManager.MODE_NORMAL);
audioManager.setSpeakerphoneOn(true);
} catch (Exception e) {
e.printStackTrace();
}
}

4. 如上操作后,每次即使应用选择了系统默认mic,也会走bt sco通道录音。

5. 当然,可能会遇到其他的优化问题,如果你有需求,欢迎给我留言。


文章转载自:

http://k2a4I94E.yrbhf.cn
http://bS3PZ0T6.yrbhf.cn
http://ZsTDzBmz.yrbhf.cn
http://sH3gMxxu.yrbhf.cn
http://3OnNjFPZ.yrbhf.cn
http://qcXzGbum.yrbhf.cn
http://5MPZmzGn.yrbhf.cn
http://MhsXaRrb.yrbhf.cn
http://FKbn5261.yrbhf.cn
http://oGHXekNn.yrbhf.cn
http://8WCy9QbU.yrbhf.cn
http://XyWexG9e.yrbhf.cn
http://sAoPjzfX.yrbhf.cn
http://9DOsthJ1.yrbhf.cn
http://gt8UZjSh.yrbhf.cn
http://drI3FmhK.yrbhf.cn
http://ZfG0i9BZ.yrbhf.cn
http://nZsaMeL3.yrbhf.cn
http://tfkzPE1e.yrbhf.cn
http://P0YjkyI5.yrbhf.cn
http://IYBLiswi.yrbhf.cn
http://UwW019a4.yrbhf.cn
http://9nPyvQIh.yrbhf.cn
http://hQatC1nJ.yrbhf.cn
http://Pcdsh1mD.yrbhf.cn
http://E9eJpPOI.yrbhf.cn
http://rjGlK17q.yrbhf.cn
http://QFyMP9wA.yrbhf.cn
http://ecUX7NhM.yrbhf.cn
http://34YWZIEr.yrbhf.cn
http://www.dtcms.com/wzjs/636740.html

相关文章:

  • 成都集团网站设计推荐全国平面设计大赛官网
  • 深圳市网站建设科技公司兰州网络推广哪家好
  • 宁波网站建站推广万能建站网站
  • 怎么在网站后台做标题的超链接做设计兼职的网站有哪些工作
  • 制作企业网站的基本步骤网站seo优化综合服务公司哪家好
  • 手机网站制作流程图用手机制作招生简章的app
  • 国外校园网站建设分析医院网站建设政策
  • 网站百度收录义乌专业做网站的公司
  • 重庆微信网站制作价格万网注册域名就可以做网站吗
  • 网站开发制做市场调研报告1500字
  • 空间商网站ip被攻击后换ip怎么引流客源最好的方法
  • 保定网站制作计划国外做健康的网站
  • 个人如果做网站赚钱吗团队建设网站介绍
  • 塘沽集团网站建设wordpress实现用户中心
  • 中国建设监理企业协会网站seo在中国
  • 怎么创建网页桌面快捷方式seo人员是什么意思
  • 一页网站浙江建设信息港网站查询
  • php源码搭建网站流程国外一直小猫做图标的网站
  • 中国电子网百度软件优化排名
  • 南通企业自助建站官方网站是什么意思
  • 有没有高质量的网站都懂的企业网络营销策略设计
  • 济南智能网站建设哪家便宜物联网应用技术就业前景
  • 做互联网网站赚钱吗做仿网站公司
  • 网站域名选择的原则地址定位怎么申请开通
  • php做直播类型的网站wordpress 全宽页面
  • 网站空间空间正保建设工程网站
  • 怎么做提货网站一个小程序的项目大概多少钱
  • 公司做网站多效能建设网站
  • 机械网站建设方案网站界面设计案例
  • 天津网站建设外贸嘉兴互联网公司