android 蓝牙

package com.android.systemui.flyaudio.helper;

import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothDevice;
import android.bluetooth.BluetoothProfile;
import android.content.Context;
import android.util.Log;
import android.widget.Toast;

import java.lang.reflect.Method;
import java.util.Set;

public class BluetoothControl{

    private Context mContext;
    private BluetoothAdapter bluetoothAdapter;    //本地蓝牙适配器
    private final String TAG = "##@BluetoothControl";
    private String Address;
    private String Name;

    private static BluetoothControl instance = null;

    public BluetoothControl(Context context)
    {
        mContext = context;
        init();
    }

    public static  BluetoothControl getInstance(Context context) {
        if(instance == null){
            instance = new BluetoothControl(context);
        }
        return instance;
    }

    private void init()
    {
        bluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
        if(bluetoothAdapter == null){
            Toast.makeText(mContext,"本地蓝牙不可用",Toast.LENGTH_SHORT).show();
            return;
        }

        Address = bluetoothAdapter.getAddress(); //获取本机蓝牙MAC地址
        Name = bluetoothAdapter.getName();   //获取本机蓝牙名称
        Log.d(TAG,"Address:" + Address + ",Name:" + Name);
    }

    public boolean isEnabled()
    {
        boolean ret = false;
        try {
            ret = bluetoothAdapter.isEnabled();
        } catch (Exception e) {
            e.printStackTrace();
        }
        return ret;
    }

    public void enable()
    {
        try {
            bluetoothAdapter.enable();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    public void disable()
    {
        try {
            bluetoothAdapter.disable();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    public boolean isBtConDeviceByMac(String strCurBtMac) {
        if (bluetoothAdapter == null) {
            return false;
        }
        Set<BluetoothDevice> set = bluetoothAdapter.getBondedDevices();
        BluetoothDevice device = null;
        for (BluetoothDevice dev : set) {
            if (dev.getAddress().equalsIgnoreCase(strCurBtMac)) {
                device = dev;
                break;
            }
        }
        if (device == null) {
            return false;
        }
        //得到BluetoothDevice的Class对象
        Class<BluetoothDevice> bluetoothDeviceClass = BluetoothDevice.class;
        try {//得到连接状态的方法
            Method method = bluetoothDeviceClass.getDeclaredMethod("isConnected", (Class[]) null);
            //打开权限
            method.setAccessible(true);
            return (boolean) method.invoke(device, (Object[]) null);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return false;
    }
}

需要system app权限
在AndroidManifest.xml添加以下权限:

    <uses-permission android:name="android.permission.BLUETOOTH" />
    <uses-permission android:name="android.permission.BLUETOOTH_CONNECT" />
    <uses-permission android:name="android.permission.LOCAL_MAC_ADDRESS"
        tools:ignore="ProtectedPermissions" />
    <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />

相关广播:
参考网址1
参考网址2

    private static final String ACTION_QUICKSETTINGS_DIALOG_SHOW = "flyaudio.intent.action.ACTION_QUICKSETTINGS_DIALOG_SHOW";
    private static final String ACTION_QUICKSETTINGS_DIALOG_DISMISS = "flyaudio.intent.action.ACTION_QUICKSETTINGS_DIALOG_DISMISS";
    private static final String ACTION_QUICKSETTINGS_DIALOG_SWITCH_SHOW_STATE = "flyaudio.intent.action.ACTION_QUICKSETTINGS_DIALOG_SWITCH_SHOW_STATE";
    private static final String ACTION_BOOT = "android.intent.action.BOOT_COMPLETED";  
    private static final String ACTION_BLUETOOTH_STATE_CHANGED = "android.bluetooth.adapter.action.STATE_CHANGED";

    private static QuickSettingsDialog quickSettingsDialog;

    public static void registerDialogShowReceriver(Context context) {
        quickSettingsDialog = new QuickSettingsDialog(context);
        DialogShowBroadcastReceiver bReceiver = new DialogShowBroadcastReceiver();
        IntentFilter intentFilter = new IntentFilter();
        intentFilter.addAction(ACTION_QUICKSETTINGS_DIALOG_SHOW);
        intentFilter.addAction(ACTION_QUICKSETTINGS_DIALOG_DISMISS);
        intentFilter.addAction(ACTION_QUICKSETTINGS_DIALOG_SWITCH_SHOW_STATE);
        intentFilter.addAction(ACTION_BOOT);
        intentFilter.addAction(ACTION_BLUETOOTH_STATE_CHANGED);
        context.registerReceiver(bReceiver, intentFilter);
    }

    private static class DialogShowBroadcastReceiver extends BroadcastReceiver {

        @Override
        public void onReceive(Context context, Intent intent) {
            if (quickSettingsDialog == null) return;   
            if(intent.getAction().equals(ACTION_BOOT)){
                //quickSettingsDialog.restore();
                //收到开机广播再去打开蓝牙
            }
            else if(intent.getAction().equals(ACTION_BLUETOOTH_STATE_CHANGED)){
                if (!quickSettingsDialog.isShowing()) return;
                int state = intent.getIntExtra(BluetoothAdapter.EXTRA_STATE, -1);
                if((state == BluetoothAdapter.STATE_OFF) || (state == BluetoothAdapter.STATE_ON)){
                //打开或者关闭蓝牙
                    quickSettingsDialog.initFmBar();
                }
            }
        }
    }

获取配对列表

    public Set<BluetoothDevice> getAdapterDevicesInfo()
    {
        Set<BluetoothDevice> devices = bluetoothAdapter.getBondedDevices();
/*
        for(Iterator<BluetoothDevice> iterator = devices.iterator(); iterator.hasNext();)
        {
            BluetoothDevice device = iterator.next();
            Log.d(TAG,"Address:" + device.getAddress() + ",Name:" + device.getName());
        }
*/
        return devices;
    }

获取已连接蓝牙名称

//获取连接的蓝牙名称
 public String getConnectedBtDevice() {
     //获取蓝牙适配器
     BluetoothAdapter bluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
     //得到已匹配的蓝牙设备列表
     Set<BluetoothDevice> bondedDevices = bluetoothAdapter.getBondedDevices();
     if (bondedDevices != null && bondedDevices.size() > 0) {
         for (BluetoothDevice bondedDevice : bondedDevices) {
			  try {
                  //使用反射调用被隐藏的方法
                  Method isConnectedMethod = BluetoothDevice.class.getDeclaredMethod("isConnected", (Class[]) null);
                  isConnectedMethod.setAccessible(true);
                  boolean isConnected = (boolean) isConnectedMethod.invoke(bondedDevice, (Object[]) null);
                  MyLog.getInstance().PrintLog(TAG, "isConnected:" + isConnected);
			      if (isConnected) {
                        return bondedDevice.getName();
                    }
                } catch (NoSuchMethodException e) {
                    e.printStackTrace();

                } catch (IllegalAccessException e) {
                    e.printStackTrace();

                } catch (InvocationTargetException e) {
                    e.printStackTrace();
                }
            }
        }
        return null;
    }

蓝牙电话

配置hfp

   <bool name="profile_supported_hdp">false</bool> <!-- 支持蓝牙的医疗设备,使用蓝牙通信的应用程序,例如心率监视器,血液,温度计和秤  -->
   <bool name="profile_supported_hs_hfp">false</bool> <!-- HSP/HFP 耳机模式/蓝牙电话作为主机端,传输音频到客户端。 -->
    <bool name="profile_supported_hfpclient">true</bool> <!-- 蓝牙电话作为客户端 -->
    <bool name="hfp_client_connection_service_enabled">true</bool><!-- 来电通知服务 -->
   
 

参考网址

配置蓝牙为sink模式

参考
配置packages/apps/Bluetooth/res/values/config.xml

    <bool name="profile_supported_a2dp">false</bool>  <!--媒体声音通过蓝牙输出 -->
    <bool name="profile_supported_a2dp_sink">true</bool> <!--媒体声音通过蓝牙接收-->
    

system/bt/internal_include/bt_target.h

#define BTA_AV_SINK_INCLUDED TRUE
<resources>
    <bool name="profile_supported_a2dp">true</bool>  <!--媒体声音通过蓝牙输出 -->
    <bool name="profile_supported_a2dp_sink">false</bool> <!--媒体声音通过蓝牙接收-->
    <bool name="profile_supported_hdp">true</bool> <!-- 支持蓝牙的医疗设备,使用蓝牙通信的应用程序,例如心率监视器,血液,温度计和秤  -->
    <bool name="profile_supported_hs_hfp">true</bool> <!-- HSP/HFP 耳机模式/蓝牙电话作为主机端,传输音频到客户端。 -->
    <bool name="profile_supported_hfpclient">false</bool> <!-- 蓝牙电话作为客户端 -->
    <bool name="profile_supported_hid_host">true</bool> <!-- hid 主机端 -->
    <bool name="profile_supported_opp">true</bool> <!-- 支持文件传输 -->
    <bool name="profile_supported_pan">true</bool> <!-- 个人局域网 -->
    <bool name="profile_supported_pbap">true</bool> <!-- 电话本作为主机端传输给客户端 -->
    <bool name="profile_supported_gatt">true</bool> <!-- 支持gatt协议 -->
    <bool name="pbap_include_photos_in_vcard">true</bool> <!-- 电话本vcard传输包含照片? -->
    <bool name="pbap_use_profile_for_owner_vcard">true</bool> <!-- 电话本使用vcard传输?  -->
    <bool name="profile_supported_map">true</bool>  <!-- map协议-短信 彩信-->
    <bool name="profile_supported_avrcp_target">true</bool> <!-- avrcp响应端 -->
    <bool name="profile_supported_avrcp_controller">false</bool> <!-- avrcp控制端 -->
    <bool name="profile_supported_sap">false</bool> <!-- (SAP) 允许蓝牙设备访问另一个蓝牙设备的 SIM 卡中包含的数据。 -->
    <bool name="profile_supported_pbapclient">false</bool> <!-- 电话本作为客户端负责接收 -->
    <bool name="profile_supported_mapmce">false</bool> <!-- map client-接收端? -->
    <bool name="profile_supported_hid_device">true</bool> <!-- 支持hid设备 -->
    <bool name="profile_supported_hearing_aid">false</bool> <!-- 蓝牙助听器? -->

    <!-- If true, we will require location to be enabled on the device to
         fire Bluetooth LE scan result callbacks in addition to having one
         of the location permissions. -->
    <bool name="strict_location_check">true</bool>

    <!-- Specifies the min/max connection interval parameters for high priority,
         balanced and low power GATT configurations. These values are in
         multiples of 1.25ms. -->
    <integer name="gatt_high_priority_min_interval">9</integer>
    <integer name="gatt_high_priority_max_interval">12</integer>
    <!-- Default specs recommended interval is 30 (24 * 1.25) -> 50 (40 * 1.25)
         ms. -->
    <integer name="gatt_balanced_priority_min_interval">24</integer>
    <integer name="gatt_balanced_priority_max_interval">40</integer>
    <integer name="gatt_low_power_min_interval">80</integer>
    <integer name="gatt_low_power_max_interval">100</integer>

    <!-- Specifies latency parameters for high priority, balanced and low power
         GATT configurations. These values represents the number of packets a
         slave device is allowed to skip. -->
    <integer name="gatt_high_priority_latency">0</integer>
    <integer name="gatt_balanced_priority_latency">0</integer>
    <integer name="gatt_low_power_latency">2</integer>

    <bool name="headset_client_initial_audio_route_allowed">true</bool>

    <!-- @deprecated: use a2dp_absolute_volume_initial_threshold_percent
         instead. -->
    <integer name="a2dp_absolute_volume_initial_threshold">8</integer>

    <!-- AVRCP absolute volume initial value as percent of the maximum value.
         Valid values are in the interval [0, 100].
         Recommended value is 50. -->
    <integer name="a2dp_absolute_volume_initial_threshold_percent">50</integer>

    <!-- For A2DP sink ducking volume feature. -->
    <integer name="a2dp_sink_duck_percent">25</integer>

    <!-- If true, device requests audio focus and start avrcp updates on source start or play -->
    <bool name="a2dp_sink_automatically_request_audio_focus">true</bool> <!-- 自动请求音频焦点 -->

    <!-- For enabling the hfp client connection service -->
    <bool name="hfp_client_connection_service_enabled">false</bool><!-- 来电通知服务 -->

    <!-- Enabling autoconnect over pan //自动连接?-->
    <bool name="config_bluetooth_pan_enable_autoconnect">true</bool>

    <!-- Enabling the phone policy -->
    <bool name="enable_phone_policy">true</bool>

    <!-- Configuring priorities of A2DP source codecs. Larger value means
         higher priority. Value -1 means the codec is disabled.
         Value 0 is reserved and should not be used here. Enabled codecs
         should have priorities in the interval [1, 999999], and each priority
         value should be unique. -->
    <integer name="a2dp_source_codec_priority_sbc">1001</integer>
    <integer name="a2dp_source_codec_priority_aac">2001</integer>
    <integer name="a2dp_source_codec_priority_aptx">3001</integer>
    <integer name="a2dp_source_codec_priority_aptx_hd">4001</integer>
    <integer name="a2dp_source_codec_priority_ldac">5001</integer>

    <!-- Package that is responsible for user interaction on pairing request,
         success or cancel.
         Receives:
          - BluetootDevice.ACTION_PAIRING_CANCEL on bond failure
          - BluetoothDevice.ACTION_PAIRING_REUQEST on pin request
          - BluetootDevice.ACTION_BOND_STATE_CHANGED on pairing request and success
          - BluetoothDevice.ACTION_CONNECTION_ACCESS_REQUEST on access requests
          - BluetoothDevice.ACTION_CONNECTION_ACCESS_CANCEL to cancel access requests -->
    <string name="pairing_ui_package">com.android.settings</string>

    <!-- Flag whether or not to keep polling AG with CLCC for call information every 2 seconds -->
    <bool name="hfp_clcc_poll_during_call">true</bool>

</resources>


拨号网络配置文件 (DUN)
DUN 提供了通过 Bluetooth 无线技术接入 Internet 和其它拨号服务的标准。最常见的情况是在手机上拨号,从膝上型计算机以无线方式接入 Internet。

OPP:对象存储规范(Object Push Profile),最为常见的,文件的传输都是使用此协议。


HFP:(Hands-free Profile),让蓝牙设备可以控制电话,如接听、挂断、拒接、语音拨号等,拒接、语音拨号要视蓝牙耳机及电话是否支持。


HDP: HDP (Health Device Profile) 蓝牙医疗设备模式   可以创建支持蓝牙的医疗设备,使用蓝牙通信的应用程序,例如心率监视器,血液,温度计和秤。

HID() 人机接口设备配置文件
HID 配置文件定义了 Bluetooth HID(如键盘、指向设备、游戏设备及远程监视设备)使用的协议、程序及功能

HSP(Handset Profile)耳机模式 ,用于支持蓝牙耳机与移动电话之间使用


A2DP: Advanced Audio Distribution Profile (A2DP) 高级音频传输模式  A2DP是能够采用耳机内的芯片来堆栈数据,达到声音的高清晰度。有A2DP的耳机就是蓝牙立体声耳机。
PAN:个人局域网(Personal Area Network)最新为了满足需求而出现的, 在小范围内能够将个人设备(自己的手机 电脑笔记本等)互联而组成的网络。

DP( Service Discovery Protocol )服务发现协议
提供应用程序在蓝牙环境中发现哪个服务可用和决定那些可用服务的特征。

GAP(Generic Access Profile)通用访问应用
一般访问应用规范定义了蓝牙设备如何发现和建立与其他设备的安全(或不安全)连接。
它处理一些一般模式的业务(如询问、命名和搜索)和一些安全性问 题(如担保),
同时还处理一些有关连接的业务(如链路建立、信道和连接建立)。GAP规定的是一些一般性的运行任务。
因此,它具有强制性,并作为所有其它 蓝牙应用规范的基础。

GATT 的全名是 Generic Attribute Profile(姑且翻译成:普通属性协议)
它定义两个 BLE 设备通过叫做 Service 和 Characteristic 的东西进行通信。GATT 就是使用了 ATT(Attribute Protocol)协议,ATT 协议把 Service, Characteristic遗迹对应的数据保存在一个查找表中,次查找表使用 16 bit ID 作为每一项的索引。

一旦两个设备建立起了连接,GATT 就开始起作用了,这也意味着,你必需完成前面的 GAP 协议。这里需要说明的是,GATT 连接,必需先经过 GAP 协议。实际上,我们在 Android 开发中,可以直接使用设备的 MAC 地址,发起连接,可以不经过扫描的步骤。这并不意味不需要经过 GAP,实际上在芯片级别已经给你做好了,蓝牙芯片发起连接,总是先扫描设备,扫描到了才会发起连接。

GATT 连接需要特别注意的是:GATT 连接是独占的。也就是一个 BLE 外设同时只能被一个中心设备连接。一旦外设被连接,它就会马上停止广播,这样它就对其他设备不可见了。当设备断开,它又开始广播。

中心设备和外设需要双向通信的话,唯一的方式就是建立 GATT 连接。

(SAP) 允许蓝牙设备访问另一个蓝牙设备的 SIM 卡中包含的数据。

AVRCP:Audio/Video Remote Control Profile,音视频远端控制协议,所以该协议不但能控制蓝牙音乐,也可以控制视频流相应的功能。
CT:controller控制器是通过向目标设备发送命令帧来启动事务的设备,如耳机、音箱、车载蓝牙设备
TG:target目标是接收控制器发送过来的命令帧并生成相应响应帧的设备,如手机

监听蓝牙状态 & 获取蓝牙电话控制对象

import android.bluetooth.BluetoothHeadsetClient;
import android.bluetooth.BluetoothPbapClient;

import com.android.settingslib.bluetooth.LocalBluetoothManager;
import com.android.settingslib.bluetooth.LocalBluetoothAdapter;
import com.android.settingslib.bluetooth.BluetoothCallback;
import com.android.settingslib.bluetooth.CachedBluetoothDevice;
import com.android.settingslib.bluetooth.CachedBluetoothDeviceManager;
import com.android.settingslib.bluetooth.LocalBluetoothProfileManager;
import com.android.settingslib.bluetooth.BluetoothEventManager;


    LocalBluetoothManager mLocalBluetoothManager;
    LocalBluetoothAdapter mLocalBluetoothAdapter;
    BluetoothHeadsetClient mHeadsetClient;
    CachedBluetoothDeviceManager mCachedDeviceManager;
    LocalBluetoothProfileManager mBluetoothProfileManager;
    BluetoothEventManager mBluetoothEventManager;
    
   private void init()
   {
        /*
        bluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
        if(bluetoothAdapter == null){
            Toast.makeText(mContext,"本地蓝牙不可用",Toast.LENGTH_SHORT).show();
            return;
        }

        Address = bluetoothAdapter.getAddress(); //获取本机蓝牙MAC地址
        Name = bluetoothAdapter.getName();   //获取本机蓝牙名称
        Log.d(TAG,"Address:" + Address + ",Name:" + Name);
        */
        //bluetoothAdapter.getProfileProxy(mContext, mProfileServiceListener, BluetoothProfile.HEADSET_CLIENT);
        mLocalBluetoothManager = LocalBluetoothManager.getInstance(mContext,mBluetoothManagerCallback);
        try {
            mLocalBluetoothAdapter = mLocalBluetoothManager.getBluetoothAdapter();
            Address = mLocalBluetoothAdapter.getAddress(); //获取本机蓝牙MAC地址
            Name = mLocalBluetoothAdapter.getName();   //获取本机蓝牙名称
            Log.d(TAG,"Address:" + Address + ",Name:" + Name);
        } catch (Exception e) {
            e.printStackTrace();
        }

        mCachedDeviceManager = mLocalBluetoothManager.getCachedDeviceManager();
        mBluetoothEventManager = mLocalBluetoothManager.getEventManager();
        //mBluetoothProfileManager = mLocalBluetoothManager.getProfileManager();
        mBluetoothEventManager.registerCallback(mBluetoothCallback);
        //mBluetoothProfileManager.addServiceListener(mServiceListener);
        mLocalBluetoothAdapter.getProfileProxy(mContext, mServiceListener, BluetoothProfile.HEADSET_CLIENT);
    }

    private LocalBluetoothManager.BluetoothManagerCallback mBluetoothManagerCallback = new LocalBluetoothManager.BluetoothManagerCallback(){
        @Override
        public void onBluetoothManagerInitialized(Context appContext,LocalBluetoothManager bluetoothManager){
            Log.d(TAG,"appContext:" + appContext + ",bluetoothManager:" + bluetoothManager);
        }
    };


    private final BluetoothProfile.ServiceListener mServiceListener = new BluetoothProfile.ServiceListener()
    {
        public void onServiceConnected(int paramInt, BluetoothProfile paramBluetoothProfile)//蓝牙打开
        {
            mHeadsetClient = ((BluetoothHeadsetClient)paramBluetoothProfile);
            //bluetooth_control.setVisibility(View.VISIBLE);
            Log.e(TAG, "onServiceConnected" );
        }

        public void onServiceDisconnected(int paramInt)//蓝牙关闭
        {
            //bluetooth_control.setVisibility(View.INVISIBLE);
            Log.e(TAG, "onServiceDisconnected" );
        }
    };

   private BluetoothCallback mBluetoothCallback = new BluetoothCallback(){
        public void onBluetoothStateChanged(int bluetoothState){
            Log.e(TAG, "onBluetoothStateChanged:" + bluetoothState);
            //todo. 蓝牙开关状态变化
        }
        public void onScanningStateChanged(boolean started) {
            //todo. 搜索状态变化
        }
        public void onDeviceAdded(CachedBluetoothDevice cachedDevice) {
            //todo. 搜索到新设备
        }
        public void onDeviceDeleted(CachedBluetoothDevice cachedDevice) {
            //todo. 设备被移除
        }
        public void onDeviceBondStateChanged(CachedBluetoothDevice cachedDevice, int bondState) {
            //todo. 设备配对状态变化
        }
        public void onConnectionStateChanged(CachedBluetoothDevice cachedDevice, int state) {
            Log.e(TAG, "onConnectionStateChanged,cachedDevice:" + cachedDevice + ",state:" + state + ",type:" + cachedDevice.getDevice().getType());
            //todo. 设备连接状态变化
        }
        public void onActiveDeviceChanged(CachedBluetoothDevice activeDevice, int bluetoothProfile) {
            //todo. 活动设备变化
        }
        public void onProfileConnectionStateChanged(CachedBluetoothDevice cachedDevice) {
            //todo. 协议连接状态变化
        }
    };

蓝牙电话状态监听

        <service android:name="com.android.telecom.InCallServiceImpl" android:permission="android.permission.BIND_INCALL_SERVICE" android:exported="true">
            <meta-data android:name="android.telecom.IN_CALL_SERVICE_UI" android:value="true" />
            <intent-filter>
                <action android:name="android.telecom.InCallService" />
            </intent-filter>
        </service>
package com.android.telecom;

import android.telecom.Call;
import android.telecom.InCallService;
import android.telecom. TelecomManager;
import android.util.Log;

public class InCallServiceImpl extends InCallService {
    private TelecomManager mTelecomManager;
    String TAG = "InCallServiceImpl";
    @Override
    public void onCreate() {
        super.onCreate();
        //Get the TelecomManager interface,
        mTelecomManager = getApplicationContext().getSystemService(TelecomManager.class);
    }

    @Override
    public void onCallAdded(Call telecomCall) {
        super.onCallAdded(telecomCall);
        // When a new call is added, register to monitor the call status change
        telecomCall.registerCallback(mCallListener);
    }

    @Override
    public void onCallRemoved(Call telecomCall) {
        // When the call is over, cancel the call status change listening
        telecomCall.unregisterCallback(mCallListener);
        super.onCallRemoved(telecomCall);
    }

    private final Call.Callback mCallListener = new Call.Callback() {
        @Override
        public void onStateChanged(Call call, int state) {
            Log.d(TAG,"call:" + call + ",state:" + state);
        }
    };
}

电话服务配置(Telecomm)

语音通话没有配置 出现以下警告
packages/services/Telecomm/src/com/android/server/telecom/TelecomServiceImpl.java
在这里插入图片描述
配置:
默认是在 frameworks/base/core/res/res/values/config.xml
注意find 相关的overlay资源
在这里插入图片描述

<!-- 语音通话是否支持 -->
<bool name="config_voice_capable">false</bool>
<!-- 短信是否支持 -->
<bool name="config_sms_capable">false</bool>

参考

跳转界面

跳转-参考
在这里插入图片描述在这里插入图片描述

蓝牙电话控制api

api参考
[Android]InCallService详解
Android 继承InCallService实现自定义电话

同步通信录

参考
配置:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

权限:

    <uses-permission android:name="android.permission.READ_CONTACTS"/>
    <uses-permission android:name="android.permission.WRITE_CONTACTS"/>
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
    //设置里面检查一下权限是否开启
package com.sinjet.bluetooth;

import android.bluetooth.BluetoothDevice;
import android.bluetooth.BluetoothProfile;
import android.content.Context;
import android.os.Handler;
import android.os.Message;
import android.util.Log;

import android.bluetooth.BluetoothPbapClient;
import com.android.settingslib.bluetooth.LocalBluetoothAdapter;

import java.util.List;

public class BluetoothRequestPullPhoneBook {

    String TAG = "BluetoothRequestPullPhoneBook";
    BluetoothPbapClient mPbapClient;
    boolean isPbapProfileReady = false;
    private Context mContext;

    public BluetoothRequestPullPhoneBook(Context context){
        mContext = context;
    }

    public void getProfileProxy(LocalBluetoothAdapter mLocalBluetoothAdapter) {
         mLocalBluetoothAdapter.getProfileProxy(mContext, new ProxyServiceListener(), BluetoothProfile.PBAP_CLIENT);
         Log.i(TAG, "getProfileProxy");
    }

    private final class ProxyServiceListener implements BluetoothProfile.ServiceListener{

            @Override
            public void onServiceConnected(int profile, BluetoothProfile proxy) {

                if (profile == BluetoothProfile.PBAP_CLIENT) {
                    mPbapClient = (BluetoothPbapClient) proxy;
                    isPbapProfileReady = true;
                }
                Log.d(TAG,"Bluetooth service connected profile == " + profile + ",isPbapProfileReady = " + isPbapProfileReady);
            }

            @Override
            public void onServiceDisconnected(int profile) {
                Log.d(TAG, "BluetoothPbapClient Profile Proxy Disconnected");
                if (profile == BluetoothProfile.PBAP_CLIENT) {
                    isPbapProfileReady = false;
                    mPbapClient = null;
                }
            }
    }

    // 连接
    public boolean connect(BluetoothDevice device) {
        if (null != mPbapClient) {
            return mPbapClient.connect(device);
        }
        Log.i(TAG, "mPbapClient == null");
        return false;
    }

    //断连
    public boolean disconnect(BluetoothDevice device) {
        if (null != mPbapClient) {
            return mPbapClient.disconnect(device);
        }
        Log.i(TAG, "mPbapClient == null");
        return false;
    }

    //判断连接状态
    public int getConnectionState() {
        if (null != mPbapClient) {
            List<BluetoothDevice> deviceList = mPbapClient.getConnectedDevices();
            if (deviceList.isEmpty()) {
                return BluetoothProfile.STATE_DISCONNECTED;
            } else {
                return mPbapClient.getConnectionState(deviceList.remove(0));
            }
        }
        return BluetoothProfile.STATE_DISCONNECTED;
    }
}

HFP通话声音调试

RK系列SDK – Android HFP蓝牙通话音频处理(蓝牙音箱方案)

蓝牙音乐

蓝牙音乐状态监听

MediaBrowser参考
android 10之后都要用MediaBrowser的方式去实现

package com.sinjet.bluetooth;


import android.content.ComponentName;
import android.content.Context;
import android.media.MediaMetadata;
import android.media.browse.MediaBrowser;
import android.media.session.PlaybackState;
import android.os.Bundle;
import android.util.Log;

public class MediaController {

    private Context mContext;
    String TAG = "MediaController";
    MediaBrowser mMediaBrowser;
    MediaController mMediaController;

    public MediaController(Context context){
        mContext = context;
        init();
    }

    private void init(){
        mMediaBrowser = new MediaBrowser (
                mContext,
                // 必须是 Application 的Context,否则会connect失败
                new ComponentName("com.android.bluetooth","com.android.bluetooth.avrcpcontroller.BluetoothMediaBrowserService"),
                mConnectionCallback,
                null);
        mMediaBrowser.connect();
    }

    private MediaBrowser.ConnectionCallback mConnectionCallback = new MediaBrowser.ConnectionCallback() {

        @Override
        public void onConnected() {
            // Connect BrowserService on
            // construct a MediaController
            mMediaController = new MediaController (mContext, mMediaBrowser.getSessionToken());
            // Register media status information listening
            mMediaController.registerCallback(mMediaControllerCallback);
            Log.d(TAG,"onConnected");
        }
        @Override
        public void onConnectionSuspended() {
            // Connect suspend
            Log.d(TAG,"onConnectionSuspended");
        }
    };

    private MediaController.Callback mMediaControllerCallback = new MediaController.Callback() {
        @Override
        public void onPlaybackStateChanged (PlaybackState state) {
            // Update the play status
            Log.d(TAG,"PlaybackState:" + state);
        }

        @Override
        public void onMetadataChanged (MediaMetadata metadata) {
            // Update the media information, ID3, etc.
            Log.d(TAG,"MediaMetadata:" + metadata);
        }

        @Override
        public void onSessionEvent (String event, Bundle extras) {
            // customized other Event notify
            Log.d(TAG,"onSessionEvent:" + event);
        }
    };
}

avrcp协议配置

packages/apps/Bluetooth/res/values/config.xml

    <bool name="profile_supported_avrcp_target">true</bool> <!-- avrcp响应端 -->
    <bool name="profile_supported_avrcp_controller">false</bool> <!-- avrcp控制端 -->
    //两个都设置为true都行 主要看协议栈的配置

system/bt/btif/avrcp/avrcp_service.h

persist.bluetooth.enablenewavrcp  
false:CT端
true:TG端

在这里插入图片描述
在这里插入图片描述

CT端发起连接流程

参考
TG端:
CT端:
在这里插入图片描述

AvrcpControllerService控制流程分析

协议栈部分太复杂 还没看透。由jni调用onConnectionStateChanged 创建状态机并且发起连接
在这里插入图片描述
在这里插入图片描述
TG端播放信息传输流程: bt协议栈 -> jni -> AvrcpControllerService -> 状态机 -> 媒体浏览器
CT端控制则是相反的流程。
以播放状态为例:
btavrcp_play_status_changed_callback -> onPlayStatusChanged -> MESSAGE_PROCESS_PLAY_STATUS_CHANGED ->

packages/apps/Bluetooth/jni/com_android_bluetooth_avrcp_controller.cpp

static void btavrcp_play_status_changed_callback(
    const RawAddress& bd_addr, btrc_play_status_t play_status) {
  ALOGI("%s", __func__);
  std::shared_lock<std::shared_timed_mutex> lock(sCallbacks_mutex);
  CallbackEnv sCallbackEnv(__func__);
  if (!sCallbackEnv.valid()) return;
  if (!sCallbacksObj) {
    ALOGE("%s: sCallbacksObj is null", __func__);
    return;
  }

  ScopedLocalRef<jbyteArray> addr(
      sCallbackEnv.get(), sCallbackEnv->NewByteArray(sizeof(RawAddress)));
  if (!addr.get()) {
    ALOGE("%s: Failed to allocate a new byte array", __func__);
    return;
  }
  sCallbackEnv->SetByteArrayRegion(addr.get(), 0, sizeof(RawAddress),
                                   (jbyte*)&bd_addr.address);
  sCallbackEnv->CallVoidMethod(sCallbacksObj, method_handleplaystatuschanged,
                               addr.get(), (jbyte)play_status);
}

packages/apps/Bluetooth/src/com/android/bluetooth/avrcpcontroller/AvrcpControllerService.java

    // Called by JNI on changes of play status
    private synchronized void onPlayStatusChanged(byte[] address, byte playStatus) {
        if (DBG) {
            Log.d(TAG, "onPlayStatusChanged " + playStatus);
        }
        int playbackState = PlaybackState.STATE_NONE;
        switch (playStatus) {
            case JNI_PLAY_STATUS_STOPPED:
                playbackState = PlaybackState.STATE_STOPPED;
                break;
            case JNI_PLAY_STATUS_PLAYING:
                playbackState = PlaybackState.STATE_PLAYING;
                break;
            case JNI_PLAY_STATUS_PAUSED:
                playbackState = PlaybackState.STATE_PAUSED;
                break;
            case JNI_PLAY_STATUS_FWD_SEEK:
                playbackState = PlaybackState.STATE_FAST_FORWARDING;
                break;
            case JNI_PLAY_STATUS_REV_SEEK:
                playbackState = PlaybackState.STATE_REWINDING;
                break;
            default:
                playbackState = PlaybackState.STATE_NONE;
        }
        BluetoothDevice device = BluetoothAdapter.getDefaultAdapter().getRemoteDevice(address);
        AvrcpControllerStateMachine stateMachine = getStateMachine(device);
        if (stateMachine != null) {
            stateMachine.sendMessage(
                    AvrcpControllerStateMachine.MESSAGE_PROCESS_PLAY_STATUS_CHANGED, playbackState);
        }
    }

packages/apps/Bluetooth/src/com/android/bluetooth/avrcpcontroller/AvrcpControllerStateMachine.java

                ...
                case MESSAGE_PROCESS_PLAY_STATUS_CHANGED:
                    mAddressedPlayer.setPlayStatus(msg.arg1);
                    BluetoothMediaBrowserService.notifyChanged(mAddressedPlayer.getPlaybackState());
                    if (mAddressedPlayer.getPlaybackState().getState()
                            == PlaybackState.STATE_PLAYING
                            && A2dpSinkService.getFocusState() == AudioManager.AUDIOFOCUS_NONE
                            && !shouldRequestFocus()) {
                        sendMessage(MSG_AVRCP_PASSTHRU,
                                AvrcpControllerService.PASS_THRU_CMD_ID_PAUSE);
                    }
                    return true;
                    ...

蓝牙设备类型

判断类型-参考
获取流程-参考
修改蓝牙设备类型
修改蓝牙设备类型&蓝牙类型详细说明

mtk平台:
mediatek/external/bluetooth/bt_cust/bt_cust_table.h 
 {
        .name = "ClassOfDevice",
        .value = (void*){0x004A020C},  /*default cod=0x004A020C */
  },0x004A020C修改为自己想要的蓝牙设备COD。


全志:android/device/softwinner/mercury-demo/configs/bluetooth/bdroid_buildcfg.h

system/bt/include/bt_target.h
/* Default class of device
* {SERVICE_CLASS, MAJOR_CLASS, MINOR_CLASS}
*
* SERVICE_CLASS:0x5A (Bit17 -Networking,Bit19 - Capturing,Bit20 -Object
* Transfer,Bit22 -Telephony)
* MAJOR_CLASS:0x02 - PHONE
* MINOR_CLASS:0x0C - SMART_PHONE
*
*/
#ifndef BTA_DM_COD
#define BTA_DM_COD \
  { 0x5A, 0x04, 0x08 }
#endif

调试方法


adb shell setprop log.tag.AvrcpControllerStateMachine D
adb shell getprop log.tag.AvrcpControllerStateMachine
adb shell root
adb shell start
adb shell stop


./android/system/bt/internal_include/bt_trace.h
在这里插入图片描述
配置蓝牙协议思路:
大部分的蓝牙协议都对应一个service和service的状态机,
配置某个协议后先看他们的运行状态 是否注册成功。
再去协议栈查看配置。

hci log抓取

参考
在设置-开发者选项里面打开hci log
将TRC_开头的log level改为6,然后推到机器重启
/etc/bluetooth/bt_stack.conf
log路径 /data/misc/bluetooth/logs/btsnoop_hci.log

# Enable trace level reconfiguration function
# Must be present before any TRC_ trace level settings
TraceConf=true

# Trace level configuration
#   BT_TRACE_LEVEL_NONE    0    ( No trace messages to be generated )
#   BT_TRACE_LEVEL_ERROR   1    ( Error condition trace messages )
#   BT_TRACE_LEVEL_WARNING 2    ( Warning condition trace messages )
#   BT_TRACE_LEVEL_API     3    ( API traces )
#   BT_TRACE_LEVEL_EVENT   4    ( Debug messages for events )
#   BT_TRACE_LEVEL_DEBUG   5    ( Full debug messages )
#   BT_TRACE_LEVEL_VERBOSE 6    ( Verbose messages ) - Currently supported for TRC_BTAPP only.
TRC_BTM=2
TRC_HCI=2
TRC_L2CAP=2
TRC_RFCOMM=2
TRC_OBEX=2
TRC_AVCT=2
TRC_AVDT=2
TRC_AVRC=2
TRC_AVDT_SCB=2
TRC_AVDT_CCB=2
TRC_A2D=2
TRC_SDP=2
TRC_SMP=2
TRC_BTAPP=2
TRC_BTIF=2
TRC_BNEP=2
TRC_PAN=2
TRC_HID_HOST=2
TRC_HID_DEV=2

# This is Log configuration for new C++ code using LOG() macros.
# See libchrome/base/logging.h for description on how to configure your logs.
# sample configuration:
#LoggingV=--v=0
#LoggingVModule=--vmodule=*/btm/*=1,btm_ble_multi*=2,btif_*=1

# PTS testing helpers

# Secure connections only mode.
# PTS_SecurePairOnly=true

# Disable LE Connection updates
#PTS_DisableConnUpdates=true

# Disable BR/EDR discovery after LE pairing to avoid cross key derivation errors
#PTS_DisableSDPOnLEPair=true

# SMP Pair options (formatted as hex bytes) auth, io, ikey, rkey, ksize
#PTS_SmpOptions=0xD,0x4,0xf,0xf,0x10

# PTS AVRCP Test mode
#PTS_AvrcpTest=true

# SMP Certification Failure Cases
# Set any of the following SMP error values (from smp_api_types.h)
# to induce pairing failues for various PTS SMP test cases.
# Setting PTS_SmpFailureCase to 0 means normal operation.
# Failure modes:
#
#  SMP_PASSKEY_ENTRY_FAIL = 1
#  SMP_PAIR_AUTH_FAIL = 3
#  SMP_CONFIRM_VALUE_ERR = 4
#  SMP_PAIR_NOT_SUPPORT = 5
#  SMP_PAIR_FAIL_UNKNOWN = 8
#  SMP_REPEATED_ATTEMPTS = 9
#  SMP_NUMERIC_COMPAR_FAIL = 12
#PTS_SmpFailureCase=0

source 端电池电量改为满格

我们做的产品是用作source 端,连接车机(sink端)蓝牙之后。车机端显示 电池电量 为0,客户看到之后 提出需求 将电池电量改为满格 或者 不显示。
电池电量都是通过 hfp 协议进行发送,在jni加打印 追踪到:

android/packages/apps/Bluetooth/jni/com_android_bluetooth_hfp.cpp
--- common/android/packages/apps/Bluetooth/jni/com_android_bluetooth_hfp.cpp ---
index 69f4a14f..216f16fa 100644
@@ -385,6 +385,7 @@ class JniHeadsetCallbacks : bluetooth::headset::Callbacks {
     ScopedLocalRef<jbyteArray> addr(sCallbackEnv.get(), marshall_bda(bd_addr));
     if (addr.get() == nullptr) return;
 
+    ALOGI("%s: 24.09.23 ind_value=%d", __func__, ind_value);
     sCallbackEnv->CallVoidMethod(mCallbacksObj, method_onAtBiev, ind_id,
                                  (jint)ind_value, addr.get());
   }
@@ -398,6 +399,7 @@ class JniHeadsetCallbacks : bluetooth::headset::Callbacks {
     ScopedLocalRef<jbyteArray> addr(sCallbackEnv.get(), marshall_bda(bd_addr));
     if (addr.get() == nullptr) return;
 
+    ALOGI("%s: 24.09.23 battery=%d", __func__, battery);
     sCallbackEnv->CallVoidMethod(mCallbacksObj, method_onAtBia, service, roam,
                                  signal, battery, addr.get());
   }
@@ -433,7 +435,7 @@ static void classInitNative(JNIEnv* env, jclass clazz) {
   method_onAtBiev = env->GetMethodID(clazz, "onATBiev", "(II[B)V");
   method_onAtBia = env->GetMethodID(clazz, "onAtBia", "(ZZZZ[B)V");
 
-  ALOGI("%s: succeeds", __func__);
+  ALOGI("%s: succeeds 24.09.23", __func__);
 }
 
 static void initializeNative(JNIEnv* env, jobject object, jint max_hf_clients,
@@ -676,6 +678,10 @@ static jboolean notifyDeviceStatusNative(JNIEnv* env, jobject object,
     jniThrowIOException(env, EINVAL);
     return JNI_FALSE;
   }
+  /*  -- start*/
+  battery_charge = 5;
+  ALOGI("%s: 24.09.23 battery_charge=%d", __func__, battery_charge);
+  /*  -- end*/
   bt_status_t status = sBluetoothHfpInterface->DeviceStatusNotification(
       (bluetooth::headset::bthf_network_state_t)network_state,
       (bluetooth::headset::bthf_service_type_t)service_type, signal,
@@ -725,7 +731,11 @@ static jboolean cindResponseNative(JNIEnv* env, jobject object, jint service,
     ALOGE("%s: failed to get device address", __func__);
     jniThrowIOException(env, EINVAL);
     return JNI_FALSE;
-  }
+  } 
+  /*  -- start*/
+  battery_charge = 5;
+  ALOGI("%s: 24.09.23 num_active=%d, num_held=%d, call_state=%d, signal=%d, roam=%d, battery_charge=%d", __func__, num_active, num_held, call_state, signal, roam, battery_charge);
+  /*  -- end*/
   bt_status_t status = sBluetoothHfpInterface->CindResponse(
       service, num_active, num_held,
       (bluetooth::headset::bthf_call_state_t)call_state, signal, roam,

notifyDeviceStatusNative 在电池电量发生变化时调用
cindResponseNative 在蓝牙连接之后 注册电量监听广播时调用
找到 cindResponse 实现 可以看到 电量范围为 0 - 5 ,改为5就是满格

android/packages/apps/Bluetooth/src/com/android/bluetooth/hfp/HeadsetNativeInterface.java
    /**
     * Response for CIND command
     *
     * @param device target device
     * @param service service availability, 0 - no service, 1 - presence of service
     * @param numActive number of active calls
     * @param numHeld number of held calls
     * @param callState overall call state [0-6]
     * @param signal signal quality [0-5]
     * @param roam roaming indicator, 0 - not roaming, 1 - roaming
     * @param batteryCharge battery charge level [0-5]
     * @return True on success, False on failure
     */
    @VisibleForTesting
    public boolean cindResponse(BluetoothDevice device, int service, int numActive, int numHeld,
            int callState, int signal, int roam, int batteryCharge) {
        return cindResponseNative(service, numActive, numHeld, callState, signal, roam,
                batteryCharge, Utils.getByteAddress(device));
    }

通过dumpsys设置电池电量测试:

具体实现在
android/frameworks/base/services/core/java/com/android/server/BatteryService.java

...
int onShellCommand(Shell shell, String cmd) {
...
switch (key) {
                        case "present":
                            mHealthInfo.batteryPresent = Integer.parseInt(value) != 0;
                            break;
                        case "ac":
                            mHealthInfo.chargerAcOnline = Integer.parseInt(value) != 0;
                            break;
                        case "usb":
                            mHealthInfo.chargerUsbOnline = Integer.parseInt(value) != 0;
                            break;
                        case "wireless":
                            mHealthInfo.chargerWirelessOnline = Integer.parseInt(value) != 0;
                            break;
                        case "status":
                            mHealthInfo.batteryStatus = Integer.parseInt(value);
                            break;
                        case "level":
                            mHealthInfo.batteryLevel = Integer.parseInt(value);
                            break;
                        case "counter":
                            mHealthInfo.batteryChargeCounter = Integer.parseInt(value);
                            break;
                        case "temp":
                            mHealthInfo.batteryTemperature = Integer.parseInt(value);
                            break;
                        case "invalid":
                            mInvalidCharger = Integer.parseInt(value);
                            break;
                        default:
                            pw.println("Unknown set option: " + key);
                            update = false;
                            break;
                    }
....
mercury-demo:/ # dumpsys battery -h
Battery service (battery) commands:
  help
    Print this help text.
  set [-f] [ac|usb|wireless|status|level|temp|present|invalid] <value>
    Force a battery property value, freezing battery state.
    -f: force a battery change broadcast be sent, prints new sequence.
  unplug [-f]
    Force battery unplugged, freezing battery state.
    -f: force a battery change broadcast be sent, prints new sequence.
  reset [-f]
    Unfreeze battery state, returning to current hardware values.
    -f: force a battery change broadcast be sent, prints new sequence.
mercury-demo:/ #
mercury-demo:/ #
mercury-demo:/ #
mercury-demo:/ # dumpsys battery set level 100

遇到的问题

source端蓝牙无声音 a2dp连接失败

a2dp连接流程

参考
在这里插入图片描述

正常连接log

09-09 12:13:46.633  2784  3361 W bt_avp  : AVDT_ConnectReq: address=ac:43:6e:73:db:c5 channel_index=0 sec_mask=0x12
09-09 12:13:46.633  2784  3361 D bt_avp  : avdt_ccb_alloc_by_channel_index: allocated (index 0) peer=ac:43:6e:73:db:c5 p_ccb=0x73b7b187c0
09-09 12:13:46.633  2784  3361 D bt_avp  : avdt_ccb_event: event=API_CONNECT_REQ_EVT state=CCB_OPENING_ST action=30
09-09 12:13:46.633  2784  3361 D bt_avp  : avdt_ccb_event: event=API_CONNECT_REQ_EVT state=CCB_OPENING_ST action=0
09-09 12:13:46.633  2784  3361 D bt_avp  : avdt_ad_open_req: type: 0, role: 0, tcid:0
09-09 12:13:46.633  2784  3361 D bt_avp  : avdt_ad_tc_tbl_to_idx: 0
09-09 12:13:46.633  2784  3361 D bt_avp  : avdt_ad_tc_tbl_to_idx: 0
09-09 12:13:46.633  2784  3361 D bt_avp  : avdtp_cb.ad.lcid_tbl[2] = 0
09-09 12:13:46.633  2784  3361 D bt_avp  : avdtp_cb.ad.rt_tbl[0][0].lcid = 0x42
09-09 12:13:46.633  2784  3361 W bt_avp  : AVDT_ConnectReq: address=ac:43:6e:73:db:c5 result=0
09-09 12:13:46.681  2784  3361 D bt_avp  : avdt_l2c_connect_cfm_cback lcid: 66, result: 0
09-09 12:13:46.681  2784  3361 D bt_avp  : avdt_sec_check_complete_orig res: 0
09-09 12:13:46.682  2784  3361 D bt_avp  : avdt_l2c_config_ind_cback: lcid: 66
09-09 12:13:46.682  2784  3361 D bt_avp  : avdt_l2c_config_ind_cback: peer_mtu: 672, lcid: 66
09-09 12:13:46.716  2784  3361 D bt_avp  : avdt_l2c_config_cfm_cback: lcid: 66
09-09 12:13:46.716  2784  3361 D bt_avp  : avdt_ad_tc_open_ind: p_tbl:0x73b7b1ca08 state:5 ccb_idx:0 tcid:0 scb_hdl:0
09-09 12:13:46.716  2784  3361 D bt_avp  : avdt_ccb_event: event=LL_OPEN_EVT state=CCB_OPEN_ST action=24
09-09 12:13:46.716  2784  3361 D bt_avp  : avdt_ccb_event: event=LL_OPEN_EVT state=CCB_OPEN_ST action=34
09-09 12:13:46.716  2784  3361 D bt_avp  : avdt_ccb_ll_opened peer ac:43:6e:73:db:c5 BtaAvScbIndex=0 p_ccb=0x73b7b187c0
09-09 12:13:46.717  2784  3361 D bt_avp  : AVDT_DiscoverReq
09-09 12:13:46.717  2784  3361 D bt_avp  : avdt_ccb_event: event=API_DISCOVER_REQ_EVT state=CCB_OPEN_ST action=11
09-09 12:13:46.717  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
09-09 12:13:46.717  2784  3361 D bt_avp  : avdt_msg_send label:0, msg:0, sig:1
09-09 12:13:46.717  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
09-09 12:13:46.717  2784  3361 D bt_avp  : avdt_ccb_event: event=API_DISCOVER_REQ_EVT state=CCB_OPEN_ST action=24
09-09 12:13:46.717  2784  3361 D bt_avp  : AVDT_DiscoverReq: result=0
09-09 12:13:46.752  2784  3361 D bt_avp  : tcid: 0, type: 0
09-09 12:13:46.752  2784  3361 D bt_avp  : msg_type=2, sig=0
09-09 12:13:46.752  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_DISCOVER_RSP_EVT state=CCB_OPEN_ST action=2
09-09 12:13:46.752  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_DISCOVER_RSP_EVT state=CCB_OPEN_ST action=4
09-09 12:13:46.752  2784  3361 D bt_avp  : avdt_ccb_event: event=RCVRSP_EVT state=CCB_OPEN_ST action=21
09-09 12:13:46.752  2784  3361 D bt_avp  : avdt_ccb_event: event=RCVRSP_EVT state=CCB_OPEN_ST action=24
09-09 12:13:46.753  2784  3361 D bt_avp  : AVDT_GetCapReq
09-09 12:13:46.753  2784  3361 D bt_avp  : avdt_get_cap_req
09-09 12:13:46.753  2784  3361 D bt_avp  : avdt_ccb_event: event=API_GETCAP_REQ_EVT state=CCB_OPEN_ST action=13
09-09 12:13:46.753  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
09-09 12:13:46.753  2784  3361 D bt_avp  : avdt_msg_send label:1, msg:0, sig:12
09-09 12:13:46.753  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
09-09 12:13:46.753  2784  3361 D bt_avp  : avdt_ccb_event: event=API_GETCAP_REQ_EVT state=CCB_OPEN_ST action=24
09-09 12:13:46.753  2784  3361 D bt_avp  : avdt_get_cap_req: result=0
09-09 12:13:46.753  2784  3361 D bt_avp  : AVDT_GetCapReq: result=0
09-09 12:13:46.774  2784  3361 D bt_avp  : tcid: 0, type: 0
09-09 12:13:46.774  2784  3361 D bt_avp  : msg_type=2, sig=0
09-09 12:13:46.774  2784  3361 D bt_avp  : elem=1 elem_len: 0 psc_mask=0x2
09-09 12:13:46.774  2784  3361 D bt_avp  : elem=7 elem_len: 6 psc_mask=0x82
09-09 12:13:46.774  2784  3361 D bt_avp  : err=0x0, elem:0x7 psc_mask=0x2
09-09 12:13:46.774  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_GETCAP_RSP_EVT state=CCB_OPEN_ST action=2
09-09 12:13:46.774  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_GETCAP_RSP_EVT state=CCB_OPEN_ST action=6
09-09 12:13:46.774  2784  3361 D bt_avp  : avdt_ccb_event: event=RCVRSP_EVT state=CCB_OPEN_ST action=21
09-09 12:13:46.774  2784  3361 D bt_avp  : avdt_ccb_event: event=RCVRSP_EVT state=CCB_OPEN_ST action=24
09-09 12:13:46.774  2784  3361 D bt_avp  : AVDT_GetCapReq
09-09 12:13:46.774  2784  3361 D bt_avp  : avdt_get_cap_req
09-09 12:13:46.774  2784  3361 D bt_avp  : avdt_ccb_event: event=API_GETCAP_REQ_EVT state=CCB_OPEN_ST action=13
09-09 12:13:46.774  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
09-09 12:13:46.775  2784  3361 D bt_avp  : avdt_msg_send label:2, msg:0, sig:12
09-09 12:13:46.775  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
09-09 12:13:46.775  2784  3361 D bt_avp  : avdt_ccb_event: event=API_GETCAP_REQ_EVT state=CCB_OPEN_ST action=24
09-09 12:13:46.775  2784  3361 D bt_avp  : avdt_get_cap_req: result=0
09-09 12:13:46.775  2784  3361 D bt_avp  : AVDT_GetCapReq: result=0
09-09 12:13:46.791  2784  3361 D bt_avp  : tcid: 0, type: 0
09-09 12:13:46.791  2784  3361 D bt_avp  : msg_type=2, sig=0
09-09 12:13:46.791  2784  3361 D bt_avp  : elem=1 elem_len: 0 psc_mask=0x2
09-09 12:13:46.791  2784  3361 D bt_avp  : elem=7 elem_len: 8 psc_mask=0x82
09-09 12:13:46.791  2784  3361 D bt_avp  : err=0x0, elem:0x7 psc_mask=0x2
09-09 12:13:46.791  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_GETCAP_RSP_EVT state=CCB_OPEN_ST action=2
09-09 12:13:46.791  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_GETCAP_RSP_EVT state=CCB_OPEN_ST action=6
09-09 12:13:46.791  2784  3361 D bt_avp  : avdt_ccb_event: event=RCVRSP_EVT state=CCB_OPEN_ST action=21
09-09 12:13:46.791  2784  3361 D bt_avp  : avdt_ccb_event: event=RCVRSP_EVT state=CCB_OPEN_ST action=24
09-09 12:13:46.792  2784  3361 D bt_avp  : AVDT_OpenReq: handle=2 seid=2
09-09 12:13:46.792  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 2 found: p_scb=0x73b7b18980 scb_index=0
09-09 12:13:46.792  2784  3361 D bt_avp  : AVDT_OpenReq: codec:         name: AAC
09-09 12:13:46.792  2784  3361 D bt_avp  :      objectType: (MPEG-2 AAC LC) (0x80)
09-09 12:13:46.792  2784  3361 D bt_avp  :      samp_freq: 44100 (0x0001)
09-09 12:13:46.792  2784  3361 D bt_avp  :      ch_mode: Stereo (0x04)
09-09 12:13:46.792  2784  3361 D bt_avp  :      variableBitRateSupport: false
09-09 12:13:46.792  2784  3361 D bt_avp  :      bitRate: 320000
09-09 12:13:46.792  2784  3361 D bt_avp  : avdt_scb_snd_setconfig_req: codec:   name: AAC
09-09 12:13:46.792  2784  3361 D bt_avp  :      objectType: (MPEG-2 AAC LC) (0x80)
09-09 12:13:46.792  2784  3361 D bt_avp  :      samp_freq: 44100 (0x0001)
09-09 12:13:46.792  2784  3361 D bt_avp  :      ch_mode: Stereo (0x04)
09-09 12:13:46.792  2784  3361 D bt_avp  :      variableBitRateSupport: false
09-09 12:13:46.792  2784  3361 D bt_avp  :      bitRate: 320000
09-09 12:13:46.792  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
09-09 12:13:46.792  2784  3361 D bt_avp  : avdt_msg_send label:3, msg:0, sig:3
09-09 12:13:46.793  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
09-09 12:13:46.793  2784  3361 D bt_avp  : avdt_ccb_event: event=UL_OPEN_EVT state=CCB_OPEN_ST action=29
09-09 12:13:46.793  2784  3361 D bt_avp  : avdt_ccb_event: event=UL_OPEN_EVT state=CCB_OPEN_ST action=36
09-09 12:13:46.793  2784  3361 D bt_avp  : AVDT_OpenReq: result=0
09-09 12:13:46.810  2784  3361 D bt_avp  : tcid: 0, type: 0
09-09 12:13:46.810  2784  3361 D bt_avp  : msg_type=2, sig=0
09-09 12:13:46.810  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 2 found: p_scb=0x73b7b18980 scb_index=0
09-09 12:13:46.810  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
09-09 12:13:46.810  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
09-09 12:13:46.810  2784  3361 D bt_avp  : avdt_ccb_event: event=RCVRSP_EVT state=CCB_OPEN_ST action=21
09-09 12:13:46.810  2784  3361 D bt_avp  : avdt_ccb_event: event=RCVRSP_EVT state=CCB_OPEN_ST action=24
09-09 12:13:46.810  2784  3361 D bt_avp  : avdt_msg_send label:4, msg:0, sig:6
09-09 12:13:46.811  2784  3361 D bt_avp  : tcid: 0, type: 0
09-09 12:13:46.811  2784  3361 D bt_avp  : msg_type=0, sig=0
09-09 12:13:46.811  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_DISCOVER_CMD_EVT state=CCB_OPEN_ST action=3
09-09 12:13:46.811  2784  3361 D bt_avp  : avdt_ccb_hdl_discover_cmd: p_ccb index=0
09-09 12:13:46.811  2784  3361 D bt_avp  : avdt_ccb_event: event=API_DISCOVER_RSP_EVT state=CCB_OPEN_ST action=12
09-09 12:13:46.811  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
09-09 12:13:46.811  2784  3361 D bt_avp  : avdt_msg_send label:0, msg:2, sig:1
09-09 12:13:46.811  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
09-09 12:13:46.811  2784  3361 D bt_avp  : avdt_ccb_event: event=API_DISCOVER_RSP_EVT state=CCB_OPEN_ST action=24
09-09 12:13:46.811  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_DISCOVER_CMD_EVT state=CCB_OPEN_ST action=36
09-09 12:13:46.827  2784  3361 D bt_avp  : tcid: 0, type: 0
09-09 12:13:46.827  2784  3361 D bt_avp  : msg_type=2, sig=0
09-09 12:13:46.827  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 2 found: p_scb=0x73b7b18980 scb_index=0
09-09 12:13:46.827  2784  3361 D bt_avp  : avdt_ad_type_to_tcid: type:1, tcid: 3
09-09 12:13:46.827  2784  3361 D bt_avp  : avdt_ad_open_req: type: 1, role: 0, tcid:3
09-09 12:13:46.827  2784  3361 D bt_avp  : avdtp_cb.ad.rt_tbl[0][3].scb_hdl = 2
09-09 12:13:46.828  2784  3361 D bt_avp  : avdt_ad_tc_tbl_to_idx: 1
09-09 12:13:46.828  2784  3361 D bt_avp  : avdt_ad_tc_tbl_to_idx: 1
09-09 12:13:46.828  2784  3361 D bt_avp  : avdtp_cb.ad.lcid_tbl[26] = 1
09-09 12:13:46.828  2784  3361 D bt_avp  : avdtp_cb.ad.rt_tbl[0][3].lcid = 0x5a
09-09 12:13:46.828  2784  3361 D bt_avp  : avdt_ccb_event: event=RCVRSP_EVT state=CCB_OPEN_ST action=21
09-09 12:13:46.828  2784  3361 D bt_avp  : avdt_ccb_event: event=RCVRSP_EVT state=CCB_OPEN_ST action=24
09-09 12:13:46.831  2784  3361 D bt_avp  : tcid: 0, type: 0
09-09 12:13:46.831  2784  3361 D bt_avp  : msg_type=0, sig=0
09-09 12:13:46.831  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 1 found: p_scb=0x73b7b187c8 scb_index=0
09-09 12:13:46.831  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_GETCAP_CMD_EVT state=CCB_OPEN_ST action=5
09-09 12:13:46.831  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 1 found: p_scb=0x73b7b187c8 scb_index=0
09-09 12:13:46.831  2784  3361 D bt_avp  : avdt_ccb_event: event=API_GETCAP_RSP_EVT state=CCB_OPEN_ST action=14
09-09 12:13:46.831  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
09-09 12:13:46.831  2784  3361 D bt_avp  : avdt_msg_send label:1, msg:2, sig:12
09-09 12:13:46.831  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
09-09 12:13:46.831  2784  3361 D bt_avp  : avdt_ccb_event: event=API_GETCAP_RSP_EVT state=CCB_OPEN_ST action=24
09-09 12:13:46.831  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_GETCAP_CMD_EVT state=CCB_OPEN_ST action=36
09-09 12:13:46.839  2784  3361 D bt_avp  : avdt_l2c_connect_cfm_cback lcid: 90, result: 0
09-09 12:13:46.840  2784  3361 D bt_avp  : avdt_l2c_config_ind_cback: lcid: 90
09-09 12:13:46.840  2784  3361 D bt_avp  : avdt_l2c_config_ind_cback: peer_mtu: 1005, lcid: 90
09-09 12:13:46.856  2784  3361 D bt_avp  : tcid: 0, type: 0
09-09 12:13:46.856  2784  3361 D bt_avp  : msg_type=0, sig=0
09-09 12:13:46.856  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 3 found: p_scb=0x73b7b18b38 scb_index=0
09-09 12:13:46.856  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_GETCAP_CMD_EVT state=CCB_OPEN_ST action=5
09-09 12:13:46.856  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 3 found: p_scb=0x73b7b18b38 scb_index=0
09-09 12:13:46.856  2784  3361 D bt_avp  : avdt_ccb_event: event=API_GETCAP_RSP_EVT state=CCB_OPEN_ST action=14
09-09 12:13:46.856  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
09-09 12:13:46.856  2784  3361 D bt_avp  : avdt_msg_send label:2, msg:2, sig:12
09-09 12:13:46.856  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
09-09 12:13:46.856  2784  3361 D bt_avp  : avdt_ccb_event: event=API_GETCAP_RSP_EVT state=CCB_OPEN_ST action=24
09-09 12:13:46.856  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_GETCAP_CMD_EVT state=CCB_OPEN_ST action=36
09-09 12:13:46.872  2784  3361 D bt_avp  : avdt_l2c_config_cfm_cback: lcid: 90
09-09 12:13:46.872  2784  3361 D bt_avp  : avdt_ad_tc_open_ind: p_tbl:0x73b7b1ca16 state:5 ccb_idx:0 tcid:3 scb_hdl:2
09-09 12:13:46.872  2784  3361 D bt_avp  : LookupAvdtpScb: ccb_idx:0 tcid:3 scb_hdl:2
09-09 12:13:46.872  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 2 found: p_scb=0x73b7b18980 scb_index=0
09-09 12:13:46.872  2784  3361 D bt_avp  : tcid: 3, type: 1
09-09 12:13:46.872  2784  3361 D bt_avp  : avdt_scb_hdl_tc_open: psc_mask: cfg: 0x102, req:0x2, cur: 0x2
09-09 12:13:46.873  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 2 found: p_scb=0x73b7b18980 scb_index=0
09-09 12:13:46.873  2784  3361 D bt_avp  : avdt_ad_type_to_tcid: type:1, tcid: 3
09-09 12:13:46.881  2784  3361 D bt_avp  : AVDT_CloseReq: handle=2
09-09 12:13:46.881  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 2 found: p_scb=0x73b7b18980 scb_index=0
09-09 12:13:46.881  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
09-09 12:13:46.881  2784  3361 D bt_avp  : avdt_msg_send label:5, msg:0, sig:8
09-09 12:13:46.881  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
09-09 12:13:46.881  2784  3361 D bt_avp  : AVDT_CloseReq: result=0
09-09 12:13:46.901  2784  3361 D bt_avp  : tcid: 0, type: 0
09-09 12:13:46.901  2784  3361 D bt_avp  : msg_type=2, sig=0
09-09 12:13:46.901  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 2 found: p_scb=0x73b7b18980 scb_index=0
09-09 12:13:46.901  2784  3361 D bt_avp  : avdt_ad_type_to_tcid: type:1, tcid: 3
09-09 12:13:46.901  2784  3361 D bt_avp  : avdt_ad_close_req state: 6
09-09 12:13:46.901  2784  3361 D bt_avp  : avdt_ad_type_to_tcid: type:1, tcid: 3
09-09 12:13:46.901  2784  3361 D bt_avp  : avdt_ccb_event: event=RCVRSP_EVT state=CCB_OPEN_ST action=21
09-09 12:13:46.901  2784  3361 D bt_avp  : avdt_ccb_event: event=RCVRSP_EVT state=CCB_OPEN_ST action=24
09-09 12:13:46.920  2784  3361 D bt_avp  : avdt_l2c_disconnect_cfm_cback lcid: 90, result: 0
09-09 12:13:46.920  2784  3361 D bt_avp  : avdt_ad_tc_close_ind: tcid: 3, old: 6
09-09 12:13:46.920  2784  3361 D bt_avp  : LookupAvdtpScb: ccb_idx:0 tcid:3 scb_hdl:2
09-09 12:13:46.920  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 2 found: p_scb=0x73b7b18980 scb_index=0
09-09 12:13:46.920  2784  3361 D bt_avp  : tcid: 3, type: 1
09-09 12:13:46.920  2784  3361 D bt_avp  : avdt_ccb_event: event=UL_CLOSE_EVT state=CCB_OPEN_ST action=2
09-09 12:13:46.920  2784  3361 D bt_avp  : avdt_ccb_event: event=UL_CLOSE_EVT state=CCB_OPEN_ST action=36
09-09 12:13:46.921  2784  3361 W bt_avp  : AVDT_ConnectReq: address=ac:43:6e:73:db:c5 channel_index=0 sec_mask=0x12
09-09 12:13:46.921  2784  3361 D bt_avp  : avdt_ccb_event: event=API_CONNECT_REQ_EVT state=CCB_OPEN_ST action=30
09-09 12:13:46.921  2784  3361 D bt_avp  : avdt_ccb_event: event=API_CONNECT_REQ_EVT state=CCB_OPEN_ST action=34
09-09 12:13:46.921  2784  3361 D bt_avp  : avdt_ccb_ll_opened peer ac:43:6e:73:db:c5 BtaAvScbIndex=0 p_ccb=0x73b7b187c0
09-09 12:13:46.921  2784  3361 W bt_avp  : AVDT_ConnectReq: address=ac:43:6e:73:db:c5 result=0
09-09 12:13:46.921  2784  3361 D bt_avp  : AVDT_OpenReq: handle=1 seid=1
09-09 12:13:46.921  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 1 found: p_scb=0x73b7b187c8 scb_index=0
09-09 12:13:46.921  2784  3361 D bt_avp  : AVDT_OpenReq: codec:         name: SBC
09-09 12:13:46.921  2784  3361 D bt_avp  :      samp_freq: 44100 (0x20)
09-09 12:13:46.921  2784  3361 D bt_avp  :      ch_mode: Joint (0x01)
09-09 12:13:46.921  2784  3361 D bt_avp  :      block_len: 16 (0x10)
09-09 12:13:46.921  2784  3361 D bt_avp  :      num_subbands: 8 (0x04)
09-09 12:13:46.921  2784  3361 D bt_avp  :      alloc_method: Loundess (0x01)
09-09 12:13:46.921  2784  3361 D bt_avp  :      Bit pool Min: 2 Max: 53
09-09 12:13:46.921  2784  3361 D bt_avp  : avdt_scb_snd_setconfig_req: codec:   name: SBC
09-09 12:13:46.921  2784  3361 D bt_avp  :      samp_freq: 44100 (0x20)
09-09 12:13:46.921  2784  3361 D bt_avp  :      ch_mode: Joint (0x01)
09-09 12:13:46.921  2784  3361 D bt_avp  :      block_len: 16 (0x10)
09-09 12:13:46.921  2784  3361 D bt_avp  :      num_subbands: 8 (0x04)
09-09 12:13:46.921  2784  3361 D bt_avp  :      alloc_method: Loundess (0x01)
09-09 12:13:46.921  2784  3361 D bt_avp  :      Bit pool Min: 2 Max: 53
09-09 12:13:46.921  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
09-09 12:13:46.921  2784  3361 D bt_avp  : avdt_msg_send label:6, msg:0, sig:3
09-09 12:13:46.921  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
09-09 12:13:46.922  2784  3361 D bt_avp  : avdt_ccb_event: event=UL_OPEN_EVT state=CCB_OPEN_ST action=29
09-09 12:13:46.922  2784  3361 D bt_avp  : avdt_ccb_event: event=UL_OPEN_EVT state=CCB_OPEN_ST action=36
09-09 12:13:46.922  2784  3361 D bt_avp  : AVDT_OpenReq: result=0
09-09 12:13:46.931  2784  3361 D bt_avp  : tcid: 0, type: 0
09-09 12:13:46.931  2784  3361 D bt_avp  : msg_type=2, sig=0
09-09 12:13:46.931  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 1 found: p_scb=0x73b7b187c8 scb_index=0
09-09 12:13:46.931  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
09-09 12:13:46.931  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
09-09 12:13:46.931  2784  3361 D bt_avp  : avdt_ccb_event: event=RCVRSP_EVT state=CCB_OPEN_ST action=21
09-09 12:13:46.931  2784  3361 D bt_avp  : avdt_ccb_event: event=RCVRSP_EVT state=CCB_OPEN_ST action=24
09-09 12:13:46.931  2784  3361 D bt_avp  : avdt_msg_send label:7, msg:0, sig:6
09-09 12:13:46.949  2784  3361 D bt_avp  : tcid: 0, type: 0
09-09 12:13:46.949  2784  3361 D bt_avp  : msg_type=2, sig=0
09-09 12:13:46.949  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 1 found: p_scb=0x73b7b187c8 scb_index=0
09-09 12:13:46.949  2784  3361 D bt_avp  : avdt_ad_type_to_tcid: type:1, tcid: 1
09-09 12:13:46.949  2784  3361 D bt_avp  : avdt_ad_open_req: type: 1, role: 0, tcid:1
09-09 12:13:46.950  2784  3361 D bt_avp  : avdtp_cb.ad.rt_tbl[0][1].scb_hdl = 1
09-09 12:13:46.950  2784  3361 D bt_avp  : avdt_ad_tc_tbl_to_idx: 1
09-09 12:13:46.950  2784  3361 D bt_avp  : avdt_ad_tc_tbl_to_idx: 1
09-09 12:13:46.950  2784  3361 D bt_avp  : avdtp_cb.ad.lcid_tbl[8] = 1
09-09 12:13:46.950  2784  3361 D bt_avp  : avdtp_cb.ad.rt_tbl[0][1].lcid = 0x48
09-09 12:13:46.950  2784  3361 D bt_avp  : avdt_ccb_event: event=RCVRSP_EVT state=CCB_OPEN_ST action=21
09-09 12:13:46.950  2784  3361 D bt_avp  : avdt_ccb_event: event=RCVRSP_EVT state=CCB_OPEN_ST action=24
09-09 12:13:46.960  2784  3361 D bt_avp  : avdt_l2c_connect_cfm_cback lcid: 72, result: 0
09-09 12:13:46.963  2784  3361 D bt_avp  : avdt_l2c_config_ind_cback: lcid: 72
09-09 12:13:46.963  2784  3361 D bt_avp  : avdt_l2c_config_ind_cback: peer_mtu: 1005, lcid: 72
09-09 12:13:46.971  2784  3361 I bt_avp  : AVRC_FindService uuid: 110e
09-09 12:13:46.971  2784  3361 D bt_avp  : AVRC_Open role: 1, control:67 status:0, handle:1
09-09 12:13:46.972  2784  3361 D bt_avp  : avdt_l2c_config_cfm_cback: lcid: 72
09-09 12:13:46.972  2784  3361 D bt_avp  : avdt_ad_tc_open_ind: p_tbl:0x73b7b1ca16 state:5 ccb_idx:0 tcid:1 scb_hdl:1
09-09 12:13:46.972  2784  3361 D bt_avp  : LookupAvdtpScb: ccb_idx:0 tcid:1 scb_hdl:1
09-09 12:13:46.972  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 1 found: p_scb=0x73b7b187c8 scb_index=0
09-09 12:13:46.972  2784  3361 D bt_avp  : tcid: 1, type: 1
09-09 12:13:46.972  2784  3361 D bt_avp  : avdt_scb_hdl_tc_open: psc_mask: cfg: 0x102, req:0x2, cur: 0x2
09-09 12:13:46.974  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 1 found: p_scb=0x73b7b187c8 scb_index=0
09-09 12:13:46.974  2784  3361 D bt_avp  : avdt_ad_type_to_tcid: type:1, tcid: 1
09-09 12:13:46.974  2784  3361 D bt_avp  : avrc_msg_cback handle:0, ctype:1, offset:11, len: 11
09-09 12:13:46.974  2784  3361 D bt_avp  : pkt_type 0
09-09 12:13:46.974  2784  3361 D bt_avp  : AVRC_MsgReq handle = 0 label = 0 ctype = 12 len = 18
09-09 12:13:46.990  2784  3361 D bt_avp  : avrc_msg_cback handle:0, ctype:1, offset:11, len: 11
09-09 12:13:46.990  2784  3361 D bt_avp  : pkt_type 0
09-09 12:13:46.990  2784  3361 D bt_avp  : AVRC_MsgReq handle = 0 label = 1 ctype = 12 len = 19
09-09 12:13:46.996  2784  3361 D bt_avp  : avrc_msg_cback handle:0, ctype:3, offset:11, len: 15
09-09 12:13:46.996  2784  3361 D bt_avp  : pkt_type 0
09-09 12:13:46.997  2784  3361 D bt_avp  : AVRC_MsgReq handle = 0 label = 0 ctype = 15 len = 12
09-09 12:13:47.004  2784  3361 D bt_avp  : avrc_msg_cback handle:0, ctype:1, offset:11, len: 10
09-09 12:13:47.004  2784  3361 D bt_avp  : pkt_type 0
09-09 12:13:47.005  2784  3361 D bt_avp  : AVRC_MsgReq handle = 0 label = 1 ctype = 12 len = 19
09-09 12:13:47.005  2784  3361 D bt_avp  : avrc_msg_cback handle:0, ctype:3, offset:11, len: 15
09-09 12:13:47.005  2784  3361 D bt_avp  : pkt_type 0
09-09 12:13:47.006  2784  3361 D bt_avp  : AVRC_MsgReq handle = 0 label = 2 ctype = 15 len = 19
09-09 12:13:47.008  2784  3361 I bt_avp  : avrc_sdp_cback status: 0
09-09 12:13:47.008  2784  3361 D bt_avp  : AVRC_MsgReq handle = 0 label = 1 ctype = 3 len = 15
09-09 12:13:47.009  2784  3361 D bt_avp  : AVRC: starting timer (handle=0x00, label=0x01)
09-09 12:13:47.017  2784  3361 D bt_avp  : avrc_msg_cback handle:0, ctype:1, offset:11, len: 10
09-09 12:13:47.017  2784  3361 D bt_avp  : pkt_type 0
09-09 12:13:47.017  2784  3361 D bt_avp  : AVRC_MsgReq handle = 0 label = 1 ctype = 12 len = 19
09-09 12:13:47.018  2784  3361 D bt_avp  : avrc_msg_cback handle:0, ctype:3, offset:11, len: 15
09-09 12:13:47.018  2784  3361 D bt_avp  : pkt_type 0
09-09 12:13:47.018  2784  3361 D bt_avp  : AVRC_MsgReq handle = 0 label = 3 ctype = 15 len = 15
09-09 12:13:47.035  2784  3361 D bt_avp  : avrc_msg_cback handle:0, ctype:3, offset:11, len: 15
09-09 12:13:47.035  2784  3361 D bt_avp  : pkt_type 0
09-09 12:13:47.036  2784  3361 D bt_avp  : AVRC_MsgReq handle = 0 label = 1 ctype = 15 len = 11
09-09 12:13:47.052  2784  3361 D bt_avp  : avrc_msg_cback handle:0, ctype:3, offset:11, len: 15
09-09 12:13:47.052  2784  3361 D bt_avp  : pkt_type 0
09-09 12:13:47.053  2784  3361 D bt_avp  : AVRC_MsgReq handle = 0 label = 4 ctype = 15 len = 15
09-09 12:13:47.055  2784  3361 D bt_avp  : AVRC_MsgReq handle = 0 label = 5 ctype = 9 len = 108
09-09 12:13:47.061  2784  3361 D bt_avp  : avrc_msg_cback handle:0, ctype:3, offset:11, len: 15
09-09 12:13:47.061  2784  3361 D bt_avp  : pkt_type 0
09-09 12:13:47.061  2784  3361 D bt_avp  : AVRC_MsgReq handle = 0 label = 6 ctype = 15 len = 13
09-09 12:13:47.079  2784  3361 D bt_avp  : avrc_msg_cback handle:0, ctype:1, offset:11, len: 47
09-09 12:13:47.079  2784  3361 D bt_avp  : pkt_type 0
09-09 12:13:47.080  2784  3361 D bt_avp  : AVRC_MsgReq handle = 0 label = 5 ctype = 12 len = 58
09-09 12:13:47.081  2784  3361 D bt_avp  : AVRC_MsgReq handle = 0 label = 7 ctype = 9 len = 4
09-09 12:13:49.009  2784  3361 D bt_avp  : AVRC: command timeout (handle=0x00, label=0x01)

断开

09-09 12:15:28.775  2784  3361 D bt_avp  : tcid: 0, type: 0
09-09 12:15:28.775  2784  3361 D bt_avp  : msg_type=0, sig=0
09-09 12:15:28.775  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 1 found: p_scb=0x73b7b187c8 scb_index=0
09-09 12:15:28.775  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 1 found: p_scb=0x73b7b187c8 scb_index=0
09-09 12:15:28.775  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
09-09 12:15:28.775  2784  3361 D bt_avp  : avdt_msg_send label:3, msg:2, sig:8
09-09 12:15:28.776  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
09-09 12:15:29.259  2784  3361 D bt_avp  : avdt_l2c_disconnect_ind_cback lcid: 72, ack_needed: 1
09-09 12:15:29.260  2784  3361 D bt_avp  : avdt_ad_tc_close_ind: tcid: 1, old: 6
09-09 12:15:29.260  2784  3361 D bt_avp  : LookupAvdtpScb: ccb_idx:0 tcid:1 scb_hdl:1
09-09 12:15:29.260  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 1 found: p_scb=0x73b7b187c8 scb_index=0
09-09 12:15:29.260  2784  3361 D bt_avp  : tcid: 1, type: 1
09-09 12:15:29.303  2784  3361 D bt_avp  : AVRC_MsgReq handle = 0 label = 0 ctype = 13 len = 12
09-09 12:15:29.515  2784  3361 D bt_avp  : AVRC_Close handle:0
09-09 12:15:29.515  2784  3361 D bt_avp  : AVRC: Flushing command queue for handle=0x00
09-09 12:15:29.515  2784  3361 D bt_avp  : AVRC: Flushing command queue for handle=0x00
09-09 12:15:29.516  2784  3361 D bt_avp  : avdt_l2c_disconnect_ind_cback lcid: 66, ack_needed: 1
09-09 12:15:29.516  2784  3361 D bt_avp  : avdt_ad_tc_close_ind: tcid: 0, old: 6
09-09 12:15:29.516  2784  3361 D bt_avp  : avdt_ccb_event: event=LL_CLOSE_EVT state=CCB_IDLE_ST action=33
09-09 12:15:29.516  2784  3361 D bt_avp  : avdt_ccb_ll_closed peer ac:43:6e:73:db:c5
09-09 12:15:29.516  2784  3361 D bt_avp  : avdt_ccb_dealloc: deallocated (index 0) peer=ac:43:6e:73:db:c5 p_ccb=0x73b7b187c0
09-09 12:15:29.516  2784  3361 D bt_avp  : avdt_ccb_event: event=LL_CLOSE_EVT state=CCB_IDLE_ST action=36

异常

	Line 1: 09-09 12:17:37.713  2784  3361 W bt_avp  : AVDT_ConnectReq: address=ac:43:6e:73:db:c5 channel_index=0 sec_mask=0x12
	Line 2: 09-09 12:17:37.713  2784  3361 D bt_avp  : avdt_ccb_event: event=API_CONNECT_REQ_EVT state=CCB_OPEN_ST action=30
	Line 6: 09-09 12:17:37.713  2784  3361 D bt_avp  : avdt_ccb_event: event=API_CONNECT_REQ_EVT state=CCB_OPEN_ST action=34
	Line 7: 09-09 12:17:37.713  2784  3361 D bt_avp  : avdt_ccb_ll_opened peer ac:43:6e:73:db:c5 BtaAvScbIndex=0 p_ccb=0x73b7b187c0
	Line 13: 09-09 12:17:37.713  2784  3361 W bt_avp  : AVDT_ConnectReq: address=ac:43:6e:73:db:c5 result=0
	Line 29: 09-09 12:17:37.713  2784  3361 D bt_avp  : AVDT_OpenReq: handle=1 seid=1
	Line 30: 09-09 12:17:37.713  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 1 found: p_scb=0x73b7b187c8 scb_index=0
	Line 31: 09-09 12:17:37.713  2784  3361 D bt_avp  : AVDT_OpenReq: codec:         name: SBC
	Line 32: 09-09 12:17:37.713  2784  3361 D bt_avp  :      samp_freq: 44100 (0x20)
	Line 33: 09-09 12:17:37.713  2784  3361 D bt_avp  :      ch_mode: Joint (0x01)
	Line 34: 09-09 12:17:37.713  2784  3361 D bt_avp  :      block_len: 16 (0x10)
	Line 35: 09-09 12:17:37.713  2784  3361 D bt_avp  :      num_subbands: 8 (0x04)
	Line 36: 09-09 12:17:37.713  2784  3361 D bt_avp  :      alloc_method: Loundess (0x01)
	Line 37: 09-09 12:17:37.713  2784  3361 D bt_avp  :      Bit pool Min: 2 Max: 53
	Line 38: 09-09 12:17:37.713  2784  3361 D bt_avp  : avdt_scb_snd_setconfig_req: codec:   name: SBC
	Line 39: 09-09 12:17:37.713  2784  3361 D bt_avp  :      samp_freq: 44100 (0x20)
	Line 40: 09-09 12:17:37.713  2784  3361 D bt_avp  :      ch_mode: Joint (0x01)
	Line 41: 09-09 12:17:37.713  2784  3361 D bt_avp  :      block_len: 16 (0x10)
	Line 42: 09-09 12:17:37.713  2784  3361 D bt_avp  :      num_subbands: 8 (0x04)
	Line 43: 09-09 12:17:37.713  2784  3361 D bt_avp  :      alloc_method: Loundess (0x01)
	Line 44: 09-09 12:17:37.713  2784  3361 D bt_avp  :      Bit pool Min: 2 Max: 53
	Line 45: 09-09 12:17:37.713  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
	Line 46: 09-09 12:17:37.713  2784  3361 D bt_avp  : avdt_msg_send label:4, msg:0, sig:3
	Line 54: 09-09 12:17:37.713  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
	Line 55: 09-09 12:17:37.713  2784  3361 D bt_avp  : avdt_ccb_event: event=UL_OPEN_EVT state=CCB_OPEN_ST action=29
	Line 56: 09-09 12:17:37.713  2784  3361 D bt_avp  : avdt_ccb_event: event=UL_OPEN_EVT state=CCB_OPEN_ST action=36
	Line 57: 09-09 12:17:37.713  2784  3361 D bt_avp  : AVDT_OpenReq: result=0
	Line 96: 09-09 12:17:37.732  2784  3361 D bt_avp  : tcid: 0, type: 0
	Line 97: 09-09 12:17:37.732  2784  3361 D bt_avp  : msg_type=2, sig=0
	Line 98: 09-09 12:17:37.732  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 1 found: p_scb=0x73b7b187c8 scb_index=0
	Line 99: 09-09 12:17:37.732  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
	Line 100: 09-09 12:17:37.732  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
	Line 101: 09-09 12:17:37.732  2784  3361 D bt_avp  : avdt_ccb_event: event=RCVRSP_EVT state=CCB_OPEN_ST action=21
	Line 102: 09-09 12:17:37.732  2784  3361 D bt_avp  : avdt_ccb_event: event=RCVRSP_EVT state=CCB_OPEN_ST action=24
	Line 103: 09-09 12:17:37.732  2784  3361 D bt_avp  : avdt_msg_send label:5, msg:0, sig:6
	Line 121: 09-09 12:17:37.756  2784  3361 D bt_avp  : tcid: 0, type: 0
	Line 122: 09-09 12:17:37.756  2784  3361 D bt_avp  : msg_type=2, sig=0
	Line 123: 09-09 12:17:37.756  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 1 found: p_scb=0x73b7b187c8 scb_index=0
	Line 124: 09-09 12:17:37.756  2784  3361 D bt_avp  : avdt_ad_type_to_tcid: type:1, tcid: 1
	Line 125: 09-09 12:17:37.756  2784  3361 D bt_avp  : avdt_ad_open_req: type: 1, role: 0, tcid:1
	Line 126: 09-09 12:17:37.756  2784  3361 D bt_avp  : avdtp_cb.ad.rt_tbl[0][1].scb_hdl = 1
	Line 154: 09-09 12:17:37.756  2784  3361 D bt_avp  : avdt_ad_tc_tbl_to_idx: 1
	Line 155: 09-09 12:17:37.756  2784  3361 D bt_avp  : avdt_ad_tc_tbl_to_idx: 1
	Line 156: 09-09 12:17:37.756  2784  3361 D bt_avp  : avdtp_cb.ad.lcid_tbl[21] = 1
	Line 157: 09-09 12:17:37.756  2784  3361 D bt_avp  : avdtp_cb.ad.rt_tbl[0][1].lcid = 0x55
	Line 158: 09-09 12:17:37.756  2784  3361 D bt_avp  : avdt_ccb_event: event=RCVRSP_EVT state=CCB_OPEN_ST action=21
	Line 159: 09-09 12:17:37.757  2784  3361 D bt_avp  : avdt_ccb_event: event=RCVRSP_EVT state=CCB_OPEN_ST action=24
	Line 168: 09-09 12:17:37.773  2784  3361 D bt_avp  : avdt_l2c_connect_cfm_cback lcid: 85, result: 0
	Line 183: 09-09 12:17:37.775  2784  3361 D bt_avp  : avdt_l2c_config_ind_cback: lcid: 85
	Line 184: 09-09 12:17:37.775  2784  3361 D bt_avp  : avdt_l2c_config_ind_cback: peer_mtu: 1005, lcid: 85
	Line 202: 09-09 12:17:37.781  2784  3361 D bt_avp  : avdt_l2c_config_cfm_cback: lcid: 85
	Line 203: 09-09 12:17:37.781  2784  3361 D bt_avp  : avdt_ad_tc_open_ind: p_tbl:0x73b7b1ca16 state:5 ccb_idx:0 tcid:1 scb_hdl:1
	Line 204: 09-09 12:17:37.781  2784  3361 D bt_avp  : LookupAvdtpScb: ccb_idx:0 tcid:1 scb_hdl:1
	Line 205: 09-09 12:17:37.781  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 1 found: p_scb=0x73b7b187c8 scb_index=0
	Line 206: 09-09 12:17:37.781  2784  3361 D bt_avp  : tcid: 1, type: 1
	Line 207: 09-09 12:17:37.781  2784  3361 D bt_avp  : avdt_scb_hdl_tc_open: psc_mask: cfg: 0x102, req:0x2, cur: 0x2
	Line 219: 09-09 12:17:37.781  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 1 found: p_scb=0x73b7b187c8 scb_index=0
	Line 220: 09-09 12:17:37.781  2784  3361 D bt_avp  : avdt_ad_type_to_tcid: type:1, tcid: 1
	Line 430: 09-09 12:17:37.849  2784  3361 I bt_avp  : AVRC_FindService uuid: 110e
	Line 454: 09-09 12:17:37.849  2784  3361 D bt_avp  : AVRC_Open role: 1, control:67 status:0, handle:0
	Line 522: 09-09 12:17:37.859  2784  3361 D bt_avp  : avrc_msg_cback handle:1, ctype:1, offset:11, len: 11
	Line 523: 09-09 12:17:37.859  2784  3361 D bt_avp  : pkt_type 0
	Line 524: 09-09 12:17:37.859  2784  3361 D bt_avp  : AVRC_MsgReq handle = 1 label = 0 ctype = 12 len = 18
	Line 687: 09-09 12:17:37.870  2784  3361 D bt_avp  : avrc_msg_cback handle:1, ctype:1, offset:11, len: 11
	Line 688: 09-09 12:17:37.870  2784  3361 D bt_avp  : pkt_type 0
	Line 694: 09-09 12:17:37.870  2784  3361 D bt_avp  : AVRC_MsgReq handle = 1 label = 1 ctype = 12 len = 19
	Line 784: 09-09 12:17:37.912  2784  3361 D bt_avp  : avrc_msg_cback handle:1, ctype:3, offset:11, len: 15
	Line 785: 09-09 12:17:37.912  2784  3361 D bt_avp  : pkt_type 0
	Line 787: 09-09 12:17:37.913  2784  3361 D bt_avp  : AVRC_MsgReq handle = 1 label = 0 ctype = 15 len = 12
	Line 813: 09-09 12:17:37.914  2784  3361 I bt_avp  : avrc_sdp_cback status: 0
	Line 841: 09-09 12:17:37.914  2784  3361 D bt_avp  : AVRC_MsgReq handle = 1 label = 1 ctype = 3 len = 15
	Line 853: 09-09 12:17:37.914  2784  3361 D bt_avp  : AVRC: starting timer (handle=0x01, label=0x01)
	Line 868: 09-09 12:17:37.918  2784  3361 D bt_avp  : avrc_msg_cback handle:1, ctype:1, offset:11, len: 10
	Line 869: 09-09 12:17:37.918  2784  3361 D bt_avp  : pkt_type 0
	Line 871: 09-09 12:17:37.919  2784  3361 D bt_avp  : AVRC_MsgReq handle = 1 label = 1 ctype = 12 len = 19
	Line 884: 09-09 12:17:37.921  2784  3361 D bt_avp  : avrc_msg_cback handle:1, ctype:3, offset:11, len: 15
	Line 885: 09-09 12:17:37.921  2784  3361 D bt_avp  : pkt_type 0
	Line 889: 09-09 12:17:37.922  2784  3361 D bt_avp  : AVRC_MsgReq handle = 1 label = 2 ctype = 15 len = 19
	Line 914: 09-09 12:17:37.956  2784  3361 D bt_avp  : avrc_msg_cback handle:1, ctype:1, offset:11, len: 10
	Line 915: 09-09 12:17:37.956  2784  3361 D bt_avp  : pkt_type 0
	Line 917: 09-09 12:17:37.956  2784  3361 D bt_avp  : AVRC_MsgReq handle = 1 label = 1 ctype = 12 len = 19
	Line 930: 09-09 12:17:37.957  2784  3361 D bt_avp  : avrc_msg_cback handle:1, ctype:3, offset:11, len: 15
	Line 931: 09-09 12:17:37.957  2784  3361 D bt_avp  : pkt_type 0
	Line 933: 09-09 12:17:37.957  2784  3361 D bt_avp  : AVRC_MsgReq handle = 1 label = 3 ctype = 15 len = 15
	Line 958: 09-09 12:17:37.992  2784  3361 D bt_avp  : avrc_msg_cback handle:1, ctype:3, offset:11, len: 15
	Line 959: 09-09 12:17:37.992  2784  3361 D bt_avp  : pkt_type 0
	Line 962: 09-09 12:17:37.994  2784  3361 D bt_avp  : AVRC_MsgReq handle = 1 label = 1 ctype = 15 len = 11
	Line 981: 09-09 12:17:38.001  2784  3361 D bt_avp  : avrc_msg_cback handle:1, ctype:3, offset:11, len: 15
	Line 982: 09-09 12:17:38.001  2784  3361 D bt_avp  : pkt_type 0
	Line 985: 09-09 12:17:38.001  2784  3361 D bt_avp  : AVRC_MsgReq handle = 1 label = 4 ctype = 15 len = 15
	Line 1002: 09-09 12:17:38.004  2784  3361 D bt_avp  : AVRC_MsgReq handle = 1 label = 5 ctype = 9 len = 108
	Line 1023: 09-09 12:17:38.007  2784  3361 D bt_avp  : avrc_msg_cback handle:1, ctype:3, offset:11, len: 15
	Line 1024: 09-09 12:17:38.007  2784  3361 D bt_avp  : pkt_type 0
	Line 1025: 09-09 12:17:38.007  2784  3361 D bt_avp  : AVRC_MsgReq handle = 1 label = 6 ctype = 15 len = 13
	Line 1050: 09-09 12:17:38.029  2784  3361 D bt_avp  : avrc_msg_cback handle:1, ctype:1, offset:11, len: 47
	Line 1051: 09-09 12:17:38.029  2784  3361 D bt_avp  : pkt_type 0
	Line 1053: 09-09 12:17:38.029  2784  3361 D bt_avp  : AVRC_MsgReq handle = 1 label = 5 ctype = 12 len = 58
	Line 1076: 09-09 12:17:38.034  2784  3361 D bt_avp  : AVRC_MsgReq handle = 1 label = 7 ctype = 9 len = 4
	Line 1241: 09-09 12:17:38.232  2784  3361 D bt_avp  : tcid: 0, type: 0
	Line 1242: 09-09 12:17:38.232  2784  3361 D bt_avp  : msg_type=0, sig=0
	Line 1243: 09-09 12:17:38.232  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 1 found: p_scb=0x73b7b187c8 scb_index=0
	Line 1244: 09-09 12:17:38.232  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 1 found: p_scb=0x73b7b187c8 scb_index=0
	Line 1245: 09-09 12:17:38.232  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
	Line 1246: 09-09 12:17:38.232  2784  3361 D bt_avp  : avdt_msg_send label:6, msg:2, sig:8
	Line 1257: 09-09 12:17:38.232  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
	Line 1269: 09-09 12:17:38.249  2784  3361 D bt_avp  : avdt_l2c_disconnect_ind_cback lcid: 85, ack_needed: 1
	Line 1286: 09-09 12:17:38.250  2784  3361 D bt_avp  : avdt_ad_tc_close_ind: tcid: 1, old: 6
	Line 1287: 09-09 12:17:38.250  2784  3361 D bt_avp  : LookupAvdtpScb: ccb_idx:0 tcid:1 scb_hdl:1
	Line 1288: 09-09 12:17:38.250  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 1 found: p_scb=0x73b7b187c8 scb_index=0
	Line 1289: 09-09 12:17:38.250  2784  3361 D bt_avp  : tcid: 1, type: 1
	Line 1530: 09-09 12:17:38.262  2784  3361 D bt_avp  : AVRC_Close handle:1
	Line 1531: 09-09 12:17:38.262  2784  3361 D bt_avp  : AVRC: Flushing command queue for handle=0x01
	Line 1534: 09-09 12:17:38.262  2784  3361 D bt_avp  : AVRC: Flushing command queue for handle=0x01
	Line 1538: 09-09 12:17:38.262  2784  3361 D bt_avp  : avdt_l2c_disconnect_ind_cback lcid: 65, ack_needed: 1
	Line 1549: 09-09 12:17:38.263  2784  3361 D bt_avp  : avdt_ad_tc_close_ind: tcid: 0, old: 6
	Line 1550: 09-09 12:17:38.263  2784  3361 D bt_avp  : avdt_ccb_event: event=LL_CLOSE_EVT state=CCB_IDLE_ST action=33
	Line 1551: 09-09 12:17:38.263  2784  3361 D bt_avp  : avdt_ccb_ll_closed peer ac:43:6e:73:db:c5
	Line 1552: 09-09 12:17:38.263  2784  3361 D bt_avp  : avdt_ccb_dealloc: deallocated (index 0) peer=ac:43:6e:73:db:c5 p_ccb=0x73b7b187c0
	Line 1557: 09-09 12:17:38.263  2784  3361 D bt_avp  : avdt_ccb_event: event=LL_CLOSE_EVT state=CCB_IDLE_ST action=36
	Line 1764: 09-09 12:17:38.864  2784  3361 D bt_avp  : avdt_ccb_alloc_by_channel_index: allocated (index 0) peer=ac:43:6e:73:db:c5 p_ccb=0x73b7b187c0
	Line 1775: 09-09 12:17:38.864  2784  3361 D bt_avp  : avdt_sec_check_complete_term res: 0
	Line 1780: 09-09 12:17:38.865  2784  3361 D bt_avp  : avdt_ad_tc_tbl_to_idx: 0
	Line 1799: 09-09 12:17:38.884  2784  3361 D bt_avp  : avdt_l2c_config_ind_cback: lcid: 70
	Line 1800: 09-09 12:17:38.884  2784  3361 D bt_avp  : avdt_l2c_config_ind_cback: peer_mtu: 672, lcid: 70
	Line 1815: 09-09 12:17:38.889  2784  3361 D bt_avp  : avdt_l2c_config_cfm_cback: lcid: 70
	Line 1816: 09-09 12:17:38.889  2784  3361 D bt_avp  : avdt_ad_tc_open_ind: p_tbl:0x73b7b1ca08 state:5 ccb_idx:0 tcid:0 scb_hdl:0
	Line 1821: 09-09 12:17:38.889  2784  3361 D bt_avp  : avdt_ccb_event: event=LL_OPEN_EVT state=CCB_OPEN_ST action=34
	Line 1822: 09-09 12:17:38.889  2784  3361 D bt_avp  : avdt_ccb_ll_opened peer ac:43:6e:73:db:c5 BtaAvScbIndex=0 p_ccb=0x73b7b187c0
	Line 1825: 09-09 12:17:38.889  2784  3361 D bt_avp  : avdt_ccb_event: event=LL_OPEN_EVT state=CCB_OPEN_ST action=36
	Line 1915: 09-09 12:17:38.905  2784  3361 D bt_avp  : tcid: 0, type: 0
	Line 1916: 09-09 12:17:38.905  2784  3361 D bt_avp  : msg_type=0, sig=0
	Line 1917: 09-09 12:17:38.905  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_DISCOVER_CMD_EVT state=CCB_OPEN_ST action=3
	Line 1918: 09-09 12:17:38.905  2784  3361 D bt_avp  : avdt_ccb_hdl_discover_cmd: p_ccb index=0
	Line 1919: 09-09 12:17:38.905  2784  3361 D bt_avp  : avdt_ccb_event: event=API_DISCOVER_RSP_EVT state=CCB_OPEN_ST action=12
	Line 1920: 09-09 12:17:38.905  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
	Line 1921: 09-09 12:17:38.905  2784  3361 D bt_avp  : avdt_msg_send label:0, msg:2, sig:1
	Line 1929: 09-09 12:17:38.905  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
	Line 1930: 09-09 12:17:38.905  2784  3361 D bt_avp  : avdt_ccb_event: event=API_DISCOVER_RSP_EVT state=CCB_OPEN_ST action=24
	Line 1931: 09-09 12:17:38.905  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_DISCOVER_CMD_EVT state=CCB_OPEN_ST action=36
	Line 1940: 09-09 12:17:38.921  2784  3361 D bt_avp  : tcid: 0, type: 0
	Line 1941: 09-09 12:17:38.921  2784  3361 D bt_avp  : msg_type=0, sig=0
	Line 1942: 09-09 12:17:38.921  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 1 found: p_scb=0x73b7b187c8 scb_index=0
	Line 1943: 09-09 12:17:38.921  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_GETCAP_CMD_EVT state=CCB_OPEN_ST action=5
	Line 1944: 09-09 12:17:38.921  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 1 found: p_scb=0x73b7b187c8 scb_index=0
	Line 1945: 09-09 12:17:38.921  2784  3361 D bt_avp  : avdt_ccb_event: event=API_GETCAP_RSP_EVT state=CCB_OPEN_ST action=14
	Line 1946: 09-09 12:17:38.921  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
	Line 1947: 09-09 12:17:38.921  2784  3361 D bt_avp  : avdt_msg_send label:1, msg:2, sig:12
	Line 1955: 09-09 12:17:38.921  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
	Line 1956: 09-09 12:17:38.921  2784  3361 D bt_avp  : avdt_ccb_event: event=API_GETCAP_RSP_EVT state=CCB_OPEN_ST action=24
	Line 1957: 09-09 12:17:38.921  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_GETCAP_CMD_EVT state=CCB_OPEN_ST action=36
	Line 1968: 09-09 12:17:38.938  2784  3361 D bt_avp  : tcid: 0, type: 0
	Line 1969: 09-09 12:17:38.938  2784  3361 D bt_avp  : msg_type=0, sig=0
	Line 1970: 09-09 12:17:38.938  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 2 found: p_scb=0x73b7b18980 scb_index=0
	Line 1971: 09-09 12:17:38.938  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_GETCAP_CMD_EVT state=CCB_OPEN_ST action=5
	Line 1972: 09-09 12:17:38.938  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 2 found: p_scb=0x73b7b18980 scb_index=0
	Line 1973: 09-09 12:17:38.938  2784  3361 D bt_avp  : avdt_ccb_event: event=API_GETCAP_RSP_EVT state=CCB_OPEN_ST action=14
	Line 1974: 09-09 12:17:38.938  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
	Line 1975: 09-09 12:17:38.938  2784  3361 D bt_avp  : avdt_msg_send label:2, msg:2, sig:12
	Line 1983: 09-09 12:17:38.939  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
	Line 1984: 09-09 12:17:38.939  2784  3361 D bt_avp  : avdt_ccb_event: event=API_GETCAP_RSP_EVT state=CCB_OPEN_ST action=24
	Line 1985: 09-09 12:17:38.939  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_GETCAP_CMD_EVT state=CCB_OPEN_ST action=36
	Line 1992: 09-09 12:17:38.954  2784  3361 D bt_avp  : tcid: 0, type: 0
	Line 1993: 09-09 12:17:38.954  2784  3361 D bt_avp  : msg_type=0, sig=0
	Line 1994: 09-09 12:17:38.954  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 3 found: p_scb=0x73b7b18b38 scb_index=0
	Line 1995: 09-09 12:17:38.954  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_GETCAP_CMD_EVT state=CCB_OPEN_ST action=5
	Line 1996: 09-09 12:17:38.954  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 3 found: p_scb=0x73b7b18b38 scb_index=0
	Line 1997: 09-09 12:17:38.954  2784  3361 D bt_avp  : avdt_ccb_event: event=API_GETCAP_RSP_EVT state=CCB_OPEN_ST action=14
	Line 1998: 09-09 12:17:38.955  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
	Line 1999: 09-09 12:17:38.955  2784  3361 D bt_avp  : avdt_msg_send label:3, msg:2, sig:12
	Line 2007: 09-09 12:17:38.955  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
	Line 2008: 09-09 12:17:38.955  2784  3361 D bt_avp  : avdt_ccb_event: event=API_GETCAP_RSP_EVT state=CCB_OPEN_ST action=24
	Line 2009: 09-09 12:17:38.955  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_GETCAP_CMD_EVT state=CCB_OPEN_ST action=36
	Line 2014: 09-09 12:17:38.976  2784  3361 D bt_avp  : tcid: 0, type: 0
	Line 2015: 09-09 12:17:38.976  2784  3361 D bt_avp  : msg_type=0, sig=0
	Line 2016: 09-09 12:17:38.976  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 2 found: p_scb=0x73b7b18980 scb_index=0
	Line 2017: 09-09 12:17:38.976  2784  3361 D bt_avp  : elem=1 elem_len: 0 psc_mask=0x2
	Line 2018: 09-09 12:17:38.976  2784  3361 D bt_avp  : elem=7 elem_len: 8 psc_mask=0x82
	Line 2019: 09-09 12:17:38.976  2784  3361 D bt_avp  : err=0x0, elem:0x7 psc_mask=0x2
	Line 2020: 09-09 12:17:38.976  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 2 found: p_scb=0x73b7b18980 scb_index=0
	Line 2021: 09-09 12:17:38.976  2784  3361 D bt_avp  : avdt_scb_hdl_setconfig_cmd: p_scb->in_use=0 p_avdt_scb=0x73b7b18980 scb_index=0
	Line 2022: 09-09 12:17:38.976  2784  3361 D bt_avp  : avdt_scb_hdl_setconfig_cmd: codec:   name: AAC
	Line 2023: 09-09 12:17:38.976  2784  3361 D bt_avp  :      objectType: (MPEG-2 AAC LC) (0x80)
	Line 2024: 09-09 12:17:38.976  2784  3361 D bt_avp  :      samp_freq: 44100 (0x0001)
	Line 2025: 09-09 12:17:38.976  2784  3361 D bt_avp  :      ch_mode: Stereo (0x04)
	Line 2026: 09-09 12:17:38.976  2784  3361 D bt_avp  :      variableBitRateSupport: false
	Line 2027: 09-09 12:17:38.976  2784  3361 D bt_avp  :      bitRate: 320000
	Line 2028: 09-09 12:17:38.977  2784  3361 D bt_avp  : avdt_scb_hdl_setconfig_cmd: codec:   name: AAC
	Line 2029: 09-09 12:17:38.977  2784  3361 D bt_avp  :      objectType: (MPEG-2 AAC LC) (0x80)
	Line 2030: 09-09 12:17:38.977  2784  3361 D bt_avp  :      samp_freq: 44100 (0x0001)
	Line 2031: 09-09 12:17:38.977  2784  3361 D bt_avp  :      ch_mode: Stereo (0x04)
	Line 2032: 09-09 12:17:38.977  2784  3361 D bt_avp  :      variableBitRateSupport: false
	Line 2033: 09-09 12:17:38.977  2784  3361 D bt_avp  :      bitRate: 320000
	Line 2109: 09-09 12:17:38.978  2784  3361 D bt_avp  : AVDT_ConfigRsp: handle=2 label=4 error_code=0x0 category=0
	Line 2110: 09-09 12:17:38.978  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 2 found: p_scb=0x73b7b18980 scb_index=0
	Line 2111: 09-09 12:17:38.978  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
	Line 2112: 09-09 12:17:38.979  2784  3361 D bt_avp  : avdt_msg_send label:4, msg:2, sig:3
	Line 2120: 09-09 12:17:38.979  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
	Line 2121: 09-09 12:17:38.979  2784  3361 D bt_avp  : AVDT_ConfigRsp: result=0
	Line 2123: 09-09 12:17:38.979  2784  3361 D bt_avp  : AVDT_DiscoverReq
	Line 2124: 09-09 12:17:38.979  2784  3361 D bt_avp  : avdt_ccb_event: event=API_DISCOVER_REQ_EVT state=CCB_OPEN_ST action=11
	Line 2125: 09-09 12:17:38.979  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
	Line 2126: 09-09 12:17:38.979  2784  3361 D bt_avp  : avdt_msg_send label:0, msg:0, sig:1
	Line 2134: 09-09 12:17:38.979  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
	Line 2135: 09-09 12:17:38.979  2784  3361 D bt_avp  : avdt_ccb_event: event=API_DISCOVER_REQ_EVT state=CCB_OPEN_ST action=24
	Line 2136: 09-09 12:17:38.979  2784  3361 D bt_avp  : AVDT_DiscoverReq: result=0
	Line 2177: 09-09 12:17:38.993  2784  3361 D bt_avp  : tcid: 0, type: 0
	Line 2178: 09-09 12:17:38.993  2784  3361 D bt_avp  : msg_type=0, sig=0
	Line 2179: 09-09 12:17:38.993  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 2 found: p_scb=0x73b7b18980 scb_index=0
	Line 2180: 09-09 12:17:38.993  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 2 found: p_scb=0x73b7b18980 scb_index=0
	Line 2181: 09-09 12:17:38.993  2784  3361 D bt_avp  : avdt_ad_type_to_tcid: type:1, tcid: 3
	Line 2182: 09-09 12:17:38.993  2784  3361 D bt_avp  : avdt_ad_open_req: type: 1, role: 1, tcid:3
	Line 2183: 09-09 12:17:38.993  2784  3361 D bt_avp  : avdtp_cb.ad.rt_tbl[0][3].scb_hdl = 2
	Line 2184: 09-09 12:17:38.993  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
	Line 2185: 09-09 12:17:38.993  2784  3361 D bt_avp  : avdt_msg_send label:5, msg:2, sig:6
	Line 2193: 09-09 12:17:38.993  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
	Line 2198: 09-09 12:17:39.009  2784  3361 D bt_avp  : tcid: 0, type: 0
	Line 2199: 09-09 12:17:39.009  2784  3361 D bt_avp  : msg_type=2, sig=0
	Line 2200: 09-09 12:17:39.009  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_DISCOVER_RSP_EVT state=CCB_OPEN_ST action=2
	Line 2201: 09-09 12:17:39.009  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_DISCOVER_RSP_EVT state=CCB_OPEN_ST action=4
	Line 2205: 09-09 12:17:39.009  2784  3361 D bt_avp  : avdt_ccb_event: event=RCVRSP_EVT state=CCB_OPEN_ST action=21
	Line 2206: 09-09 12:17:39.010  2784  3361 D bt_avp  : avdt_ccb_event: event=RCVRSP_EVT state=CCB_OPEN_ST action=24
	Line 2216: 09-09 12:17:39.010  2784  3361 D bt_avp  : AVDT_GetCapReq
	Line 2217: 09-09 12:17:39.010  2784  3361 D bt_avp  : avdt_get_cap_req
	Line 2218: 09-09 12:17:39.010  2784  3361 D bt_avp  : avdt_ccb_event: event=API_GETCAP_REQ_EVT state=CCB_OPEN_ST action=13
	Line 2219: 09-09 12:17:39.010  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
	Line 2220: 09-09 12:17:39.010  2784  3361 D bt_avp  : avdt_msg_send label:1, msg:0, sig:12
	Line 2228: 09-09 12:17:39.010  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
	Line 2229: 09-09 12:17:39.010  2784  3361 D bt_avp  : avdt_ccb_event: event=API_GETCAP_REQ_EVT state=CCB_OPEN_ST action=24
	Line 2230: 09-09 12:17:39.010  2784  3361 D bt_avp  : avdt_get_cap_req: result=0
	Line 2231: 09-09 12:17:39.010  2784  3361 D bt_avp  : AVDT_GetCapReq: result=0
	Line 2263: 09-09 12:17:39.011  2784  3361 D bt_avp  : avdt_ad_tc_tbl_to_idx: 1
	Line 2283: 09-09 12:17:39.031  2784  3361 D bt_avp  : tcid: 0, type: 0
	Line 2284: 09-09 12:17:39.031  2784  3361 D bt_avp  : msg_type=2, sig=0
	Line 2285: 09-09 12:17:39.031  2784  3361 D bt_avp  : elem=1 elem_len: 0 psc_mask=0x2
	Line 2286: 09-09 12:17:39.031  2784  3361 D bt_avp  : elem=7 elem_len: 6 psc_mask=0x82
	Line 2287: 09-09 12:17:39.031  2784  3361 D bt_avp  : err=0x0, elem:0x7 psc_mask=0x2
	Line 2288: 09-09 12:17:39.031  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_GETCAP_RSP_EVT state=CCB_OPEN_ST action=2
	Line 2289: 09-09 12:17:39.031  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_GETCAP_RSP_EVT state=CCB_OPEN_ST action=6
	Line 2293: 09-09 12:17:39.031  2784  3361 D bt_avp  : avdt_ccb_event: event=RCVRSP_EVT state=CCB_OPEN_ST action=21
	Line 2294: 09-09 12:17:39.031  2784  3361 D bt_avp  : avdt_ccb_event: event=RCVRSP_EVT state=CCB_OPEN_ST action=24
	Line 2331: 09-09 12:17:39.031  2784  3361 D bt_avp  : AVDT_GetCapReq
	Line 2332: 09-09 12:17:39.031  2784  3361 D bt_avp  : avdt_get_cap_req
	Line 2333: 09-09 12:17:39.031  2784  3361 D bt_avp  : avdt_ccb_event: event=API_GETCAP_REQ_EVT state=CCB_OPEN_ST action=13
	Line 2334: 09-09 12:17:39.031  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
	Line 2335: 09-09 12:17:39.032  2784  3361 D bt_avp  : avdt_msg_send label:2, msg:0, sig:12
	Line 2344: 09-09 12:17:39.032  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
	Line 2345: 09-09 12:17:39.032  2784  3361 D bt_avp  : avdt_ccb_event: event=API_GETCAP_REQ_EVT state=CCB_OPEN_ST action=24
	Line 2346: 09-09 12:17:39.032  2784  3361 D bt_avp  : avdt_get_cap_req: result=0
	Line 2347: 09-09 12:17:39.032  2784  3361 D bt_avp  : AVDT_GetCapReq: result=0
	Line 2355: 09-09 12:17:39.032  2784  3361 D bt_avp  : avdt_l2c_config_ind_cback: lcid: 71
	Line 2356: 09-09 12:17:39.032  2784  3361 D bt_avp  : avdt_l2c_config_ind_cback: peer_mtu: 1005, lcid: 71
	Line 2370: 09-09 12:17:39.033  2784  3361 D bt_avp  : avdt_l2c_config_cfm_cback: lcid: 71
	Line 2371: 09-09 12:17:39.033  2784  3361 D bt_avp  : avdt_ad_tc_open_ind: p_tbl:0x73b7b1ca16 state:5 ccb_idx:0 tcid:3 scb_hdl:2
	Line 2372: 09-09 12:17:39.033  2784  3361 D bt_avp  : LookupAvdtpScb: ccb_idx:0 tcid:3 scb_hdl:2
	Line 2373: 09-09 12:17:39.033  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 2 found: p_scb=0x73b7b18980 scb_index=0
	Line 2374: 09-09 12:17:39.033  2784  3361 D bt_avp  : tcid: 3, type: 1
	Line 2375: 09-09 12:17:39.033  2784  3361 D bt_avp  : avdt_scb_hdl_tc_open: psc_mask: cfg: 0x102, req:0x2, cur: 0x2
	Line 2384: 09-09 12:17:39.033  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 2 found: p_scb=0x73b7b18980 scb_index=0
	Line 2385: 09-09 12:17:39.033  2784  3361 D bt_avp  : avdt_ad_type_to_tcid: type:1, tcid: 3
	Line 2535: 09-09 12:17:39.049  2784  3361 D bt_avp  : tcid: 0, type: 0
	Line 2536: 09-09 12:17:39.049  2784  3361 D bt_avp  : msg_type=2, sig=0
	Line 2537: 09-09 12:17:39.049  2784  3361 D bt_avp  : elem=1 elem_len: 0 psc_mask=0x2
	Line 2538: 09-09 12:17:39.049  2784  3361 D bt_avp  : elem=7 elem_len: 8 psc_mask=0x82
	Line 2539: 09-09 12:17:39.049  2784  3361 D bt_avp  : err=0x0, elem:0x7 psc_mask=0x2
	Line 2540: 09-09 12:17:39.050  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_GETCAP_RSP_EVT state=CCB_OPEN_ST action=2
	Line 2541: 09-09 12:17:39.050  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_GETCAP_RSP_EVT state=CCB_OPEN_ST action=6
	Line 2545: 09-09 12:17:39.050  2784  3361 D bt_avp  : avdt_ccb_event: event=RCVRSP_EVT state=CCB_OPEN_ST action=21
	Line 2546: 09-09 12:17:39.050  2784  3361 D bt_avp  : avdt_ccb_event: event=RCVRSP_EVT state=CCB_OPEN_ST action=24
	Line 2831: 09-09 12:17:39.142  2784  3361 I bt_avp  : AVRC_FindService uuid: 110e
	Line 2855: 09-09 12:17:39.143  2784  3361 D bt_avp  : AVRC_Open role: 1, control:67 status:0, handle:1
	Line 2916: 09-09 12:17:39.155  2784  3361 D bt_avp  : avrc_msg_cback handle:0, ctype:1, offset:11, len: 11
	Line 2917: 09-09 12:17:39.155  2784  3361 D bt_avp  : pkt_type 0
	Line 2918: 09-09 12:17:39.155  2784  3361 D bt_avp  : AVRC_MsgReq handle = 0 label = 0 ctype = 12 len = 18
	Line 3033: 09-09 12:17:39.181  2784  3361 D bt_avp  : avrc_msg_cback handle:0, ctype:1, offset:11, len: 11
	Line 3034: 09-09 12:17:39.181  2784  3361 D bt_avp  : pkt_type 0
	Line 3035: 09-09 12:17:39.181  2784  3361 D bt_avp  : AVRC_MsgReq handle = 0 label = 1 ctype = 12 len = 19
	Line 3109: 09-09 12:17:39.198  2784  3361 D bt_avp  : avrc_msg_cback handle:0, ctype:3, offset:11, len: 15
	Line 3110: 09-09 12:17:39.198  2784  3361 D bt_avp  : pkt_type 0
	Line 3112: 09-09 12:17:39.199  2784  3361 D bt_avp  : AVRC_MsgReq handle = 0 label = 0 ctype = 15 len = 12
	Line 3216: 09-09 12:17:39.211  2784  3361 D bt_avp  : avrc_msg_cback handle:0, ctype:1, offset:11, len: 10
	Line 3217: 09-09 12:17:39.211  2784  3361 D bt_avp  : pkt_type 0
	Line 3219: 09-09 12:17:39.211  2784  3361 D bt_avp  : avrc_msg_cback handle:0, ctype:3, offset:11, len: 15
	Line 3220: 09-09 12:17:39.211  2784  3361 D bt_avp  : pkt_type 0
	Line 3222: 09-09 12:17:39.211  2784  3361 D bt_avp  : AVRC_MsgReq handle = 0 label = 1 ctype = 12 len = 19
	Line 3250: 09-09 12:17:39.212  2784  3361 I bt_avp  : avrc_sdp_cback status: 0
	Line 3278: 09-09 12:17:39.213  2784  3361 D bt_avp  : AVRC_MsgReq handle = 0 label = 1 ctype = 3 len = 15
	Line 3291: 09-09 12:17:39.213  2784  3361 D bt_avp  : AVRC: starting timer (handle=0x00, label=0x01)
	Line 3295: 09-09 12:17:39.214  2784  3361 D bt_avp  : AVRC_MsgReq handle = 0 label = 2 ctype = 15 len = 19
	Line 3329: 09-09 12:17:39.256  2784  3361 D bt_avp  : avrc_msg_cback handle:0, ctype:1, offset:11, len: 10
	Line 3330: 09-09 12:17:39.256  2784  3361 D bt_avp  : pkt_type 0
	Line 3332: 09-09 12:17:39.256  2784  3361 D bt_avp  : AVRC_MsgReq handle = 0 label = 1 ctype = 12 len = 19
	Line 3346: 09-09 12:17:39.257  2784  3361 D bt_avp  : avrc_msg_cback handle:0, ctype:3, offset:11, len: 15
	Line 3347: 09-09 12:17:39.257  2784  3361 D bt_avp  : pkt_type 0
	Line 3349: 09-09 12:17:39.257  2784  3361 D bt_avp  : AVRC_MsgReq handle = 0 label = 3 ctype = 15 len = 15
	Line 3375: 09-09 12:17:39.267  2784  3361 D bt_avp  : avrc_msg_cback handle:0, ctype:3, offset:11, len: 15
	Line 3376: 09-09 12:17:39.267  2784  3361 D bt_avp  : pkt_type 0
	Line 3379: 09-09 12:17:39.267  2784  3361 D bt_avp  : AVRC_MsgReq handle = 0 label = 1 ctype = 15 len = 11
	Line 3399: 09-09 12:17:39.284  2784  3361 D bt_avp  : avrc_msg_cback handle:0, ctype:3, offset:11, len: 15
	Line 3400: 09-09 12:17:39.284  2784  3361 D bt_avp  : pkt_type 0
	Line 3403: 09-09 12:17:39.285  2784  3361 D bt_avp  : AVRC_MsgReq handle = 0 label = 4 ctype = 15 len = 15
	Line 3421: 09-09 12:17:39.286  2784  3361 D bt_avp  : AVRC_MsgReq handle = 0 label = 5 ctype = 9 len = 108
	Line 3449: 09-09 12:17:39.296  2784  3361 D bt_avp  : avrc_msg_cback handle:0, ctype:3, offset:11, len: 15
	Line 3450: 09-09 12:17:39.296  2784  3361 D bt_avp  : pkt_type 0
	Line 3451: 09-09 12:17:39.296  2784  3361 D bt_avp  : AVRC_MsgReq handle = 0 label = 6 ctype = 15 len = 13
	Line 3471: 09-09 12:17:39.312  2784  3361 D bt_avp  : avrc_msg_cback handle:0, ctype:1, offset:11, len: 47
	Line 3472: 09-09 12:17:39.312  2784  3361 D bt_avp  : pkt_type 0
	Line 3474: 09-09 12:17:39.313  2784  3361 D bt_avp  : AVRC_MsgReq handle = 0 label = 5 ctype = 12 len = 58
	Line 3492: 09-09 12:17:39.314  2784  3361 D bt_avp  : AVRC_MsgReq handle = 0 label = 7 ctype = 9 len = 4
	Line 3973: 09-09 12:17:40.371  2784  3361 D bt_avp  : tcid: 0, type: 0
	Line 3974: 09-09 12:17:40.371  2784  3361 D bt_avp  : msg_type=0, sig=0
	Line 3975: 09-09 12:17:40.371  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 2 found: p_scb=0x73b7b18980 scb_index=0
	Line 3976: 09-09 12:17:40.371  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 2 found: p_scb=0x73b7b18980 scb_index=0
	Line 3977: 09-09 12:17:40.371  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
	Line 3978: 09-09 12:17:40.371  2784  3361 D bt_avp  : avdt_msg_send label:6, msg:2, sig:8
	Line 3989: 09-09 12:17:40.372  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
	Line 4012: 09-09 12:17:40.388  2784  3361 D bt_avp  : avdt_l2c_disconnect_ind_cback lcid: 71, ack_needed: 1
	Line 4029: 09-09 12:17:40.390  2784  3361 D bt_avp  : avdt_ad_tc_close_ind: tcid: 3, old: 6
	Line 4030: 09-09 12:17:40.390  2784  3361 D bt_avp  : LookupAvdtpScb: ccb_idx:0 tcid:3 scb_hdl:2
	Line 4031: 09-09 12:17:40.390  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 2 found: p_scb=0x73b7b18980 scb_index=0
	Line 4032: 09-09 12:17:40.390  2784  3361 D bt_avp  : tcid: 3, type: 1
	Line 4243: 09-09 12:17:40.406  2784  3361 D bt_avp  : avdt_l2c_disconnect_ind_cback lcid: 70, ack_needed: 1
	Line 4262: 09-09 12:17:40.407  2784  3361 D bt_avp  : avdt_ad_tc_close_ind: tcid: 0, old: 6
	Line 4263: 09-09 12:17:40.407  2784  3361 D bt_avp  : avdt_ccb_event: event=LL_CLOSE_EVT state=CCB_IDLE_ST action=33
	Line 4264: 09-09 12:17:40.407  2784  3361 D bt_avp  : avdt_ccb_ll_closed peer ac:43:6e:73:db:c5
	Line 4265: 09-09 12:17:40.407  2784  3361 D bt_avp  : avdt_ccb_dealloc: deallocated (index 0) peer=ac:43:6e:73:db:c5 p_ccb=0x73b7b187c0
	Line 4269: 09-09 12:17:40.407  2784  3361 D bt_avp  : avdt_ccb_event: event=LL_CLOSE_EVT state=CCB_IDLE_ST action=36
	Line 4331: 09-09 12:17:40.426  2784  3361 D bt_avp  : AVRC_Close handle:0
	Line 4332: 09-09 12:17:40.426  2784  3361 D bt_avp  : AVRC: Flushing command queue for handle=0x00
	Line 4334: 09-09 12:17:40.426  2784  3361 D bt_avp  : AVRC: Flushing command queue for handle=0x00
	Line 4484: 09-09 12:17:40.814  2784  3361 D bt_avp  : avdt_ccb_alloc_by_channel_index: allocated (index 0) peer=ac:43:6e:73:db:c5 p_ccb=0x73b7b187c0
	Line 4495: 09-09 12:17:40.814  2784  3361 D bt_avp  : avdt_sec_check_complete_term res: 0
	Line 4500: 09-09 12:17:40.814  2784  3361 D bt_avp  : avdt_ad_tc_tbl_to_idx: 0
	Line 4516: 09-09 12:17:40.820  2784  3361 D bt_avp  : avdt_l2c_config_ind_cback: lcid: 78
	Line 4517: 09-09 12:17:40.820  2784  3361 D bt_avp  : avdt_l2c_config_ind_cback: peer_mtu: 672, lcid: 78
	Line 4532: 09-09 12:17:40.823  2784  3361 D bt_avp  : avdt_l2c_config_cfm_cback: lcid: 78
	Line 4533: 09-09 12:17:40.823  2784  3361 D bt_avp  : avdt_ad_tc_open_ind: p_tbl:0x73b7b1ca08 state:5 ccb_idx:0 tcid:0 scb_hdl:0
	Line 4538: 09-09 12:17:40.823  2784  3361 D bt_avp  : avdt_ccb_event: event=LL_OPEN_EVT state=CCB_OPEN_ST action=34
	Line 4539: 09-09 12:17:40.823  2784  3361 D bt_avp  : avdt_ccb_ll_opened peer ac:43:6e:73:db:c5 BtaAvScbIndex=0 p_ccb=0x73b7b187c0
	Line 4542: 09-09 12:17:40.823  2784  3361 D bt_avp  : avdt_ccb_event: event=LL_OPEN_EVT state=CCB_OPEN_ST action=36
	Line 4610: 09-09 12:17:40.825  2784  3361 D bt_avp  : tcid: 0, type: 0
	Line 4611: 09-09 12:17:40.825  2784  3361 D bt_avp  : msg_type=0, sig=0
	Line 4612: 09-09 12:17:40.825  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_DISCOVER_CMD_EVT state=CCB_OPEN_ST action=3
	Line 4613: 09-09 12:17:40.825  2784  3361 D bt_avp  : avdt_ccb_hdl_discover_cmd: p_ccb index=0
	Line 4614: 09-09 12:17:40.825  2784  3361 D bt_avp  : avdt_ccb_event: event=API_DISCOVER_RSP_EVT state=CCB_OPEN_ST action=12
	Line 4615: 09-09 12:17:40.825  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
	Line 4616: 09-09 12:17:40.825  2784  3361 D bt_avp  : avdt_msg_send label:0, msg:2, sig:1
	Line 4625: 09-09 12:17:40.826  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
	Line 4626: 09-09 12:17:40.826  2784  3361 D bt_avp  : avdt_ccb_event: event=API_DISCOVER_RSP_EVT state=CCB_OPEN_ST action=24
	Line 4627: 09-09 12:17:40.826  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_DISCOVER_CMD_EVT state=CCB_OPEN_ST action=36
	Line 4661: 09-09 12:17:40.842  2784  3361 D bt_avp  : tcid: 0, type: 0
	Line 4662: 09-09 12:17:40.842  2784  3361 D bt_avp  : msg_type=0, sig=0
	Line 4663: 09-09 12:17:40.842  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 1 found: p_scb=0x73b7b187c8 scb_index=0
	Line 4664: 09-09 12:17:40.842  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_GETCAP_CMD_EVT state=CCB_OPEN_ST action=5
	Line 4665: 09-09 12:17:40.842  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 1 found: p_scb=0x73b7b187c8 scb_index=0
	Line 4666: 09-09 12:17:40.842  2784  3361 D bt_avp  : avdt_ccb_event: event=API_GETCAP_RSP_EVT state=CCB_OPEN_ST action=14
	Line 4667: 09-09 12:17:40.842  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
	Line 4668: 09-09 12:17:40.842  2784  3361 D bt_avp  : avdt_msg_send label:1, msg:2, sig:12
	Line 4676: 09-09 12:17:40.842  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
	Line 4677: 09-09 12:17:40.842  2784  3361 D bt_avp  : avdt_ccb_event: event=API_GETCAP_RSP_EVT state=CCB_OPEN_ST action=24
	Line 4678: 09-09 12:17:40.842  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_GETCAP_CMD_EVT state=CCB_OPEN_ST action=36
	Line 4686: 09-09 12:17:40.858  2784  3361 D bt_avp  : tcid: 0, type: 0
	Line 4687: 09-09 12:17:40.858  2784  3361 D bt_avp  : msg_type=0, sig=0
	Line 4688: 09-09 12:17:40.858  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 2 found: p_scb=0x73b7b18980 scb_index=0
	Line 4689: 09-09 12:17:40.858  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_GETCAP_CMD_EVT state=CCB_OPEN_ST action=5
	Line 4690: 09-09 12:17:40.858  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 2 found: p_scb=0x73b7b18980 scb_index=0
	Line 4691: 09-09 12:17:40.858  2784  3361 D bt_avp  : avdt_ccb_event: event=API_GETCAP_RSP_EVT state=CCB_OPEN_ST action=14
	Line 4692: 09-09 12:17:40.858  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
	Line 4693: 09-09 12:17:40.858  2784  3361 D bt_avp  : avdt_msg_send label:2, msg:2, sig:12
	Line 4701: 09-09 12:17:40.858  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
	Line 4702: 09-09 12:17:40.858  2784  3361 D bt_avp  : avdt_ccb_event: event=API_GETCAP_RSP_EVT state=CCB_OPEN_ST action=24
	Line 4703: 09-09 12:17:40.858  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_GETCAP_CMD_EVT state=CCB_OPEN_ST action=36
	Line 4710: 09-09 12:17:40.874  2784  3361 D bt_avp  : tcid: 0, type: 0
	Line 4711: 09-09 12:17:40.874  2784  3361 D bt_avp  : msg_type=0, sig=0
	Line 4712: 09-09 12:17:40.874  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 3 found: p_scb=0x73b7b18b38 scb_index=0
	Line 4713: 09-09 12:17:40.874  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_GETCAP_CMD_EVT state=CCB_OPEN_ST action=5
	Line 4714: 09-09 12:17:40.874  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 3 found: p_scb=0x73b7b18b38 scb_index=0
	Line 4715: 09-09 12:17:40.874  2784  3361 D bt_avp  : avdt_ccb_event: event=API_GETCAP_RSP_EVT state=CCB_OPEN_ST action=14
	Line 4716: 09-09 12:17:40.874  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
	Line 4717: 09-09 12:17:40.874  2784  3361 D bt_avp  : avdt_msg_send label:3, msg:2, sig:12
	Line 4725: 09-09 12:17:40.875  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
	Line 4726: 09-09 12:17:40.875  2784  3361 D bt_avp  : avdt_ccb_event: event=API_GETCAP_RSP_EVT state=CCB_OPEN_ST action=24
	Line 4727: 09-09 12:17:40.875  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_GETCAP_CMD_EVT state=CCB_OPEN_ST action=36
	Line 4732: 09-09 12:17:40.891  2784  3361 D bt_avp  : tcid: 0, type: 0
	Line 4733: 09-09 12:17:40.891  2784  3361 D bt_avp  : msg_type=0, sig=0
	Line 4734: 09-09 12:17:40.891  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 2 found: p_scb=0x73b7b18980 scb_index=0
	Line 4735: 09-09 12:17:40.891  2784  3361 D bt_avp  : elem=1 elem_len: 0 psc_mask=0x2
	Line 4736: 09-09 12:17:40.891  2784  3361 D bt_avp  : elem=7 elem_len: 8 psc_mask=0x82
	Line 4737: 09-09 12:17:40.891  2784  3361 D bt_avp  : err=0x0, elem:0x7 psc_mask=0x2
	Line 4738: 09-09 12:17:40.891  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 2 found: p_scb=0x73b7b18980 scb_index=0
	Line 4739: 09-09 12:17:40.891  2784  3361 D bt_avp  : avdt_scb_hdl_setconfig_cmd: p_scb->in_use=0 p_avdt_scb=0x73b7b18980 scb_index=0
	Line 4740: 09-09 12:17:40.891  2784  3361 D bt_avp  : avdt_scb_hdl_setconfig_cmd: codec:   name: AAC
	Line 4741: 09-09 12:17:40.891  2784  3361 D bt_avp  :      objectType: (MPEG-2 AAC LC) (0x80)
	Line 4742: 09-09 12:17:40.891  2784  3361 D bt_avp  :      samp_freq: 44100 (0x0001)
	Line 4743: 09-09 12:17:40.891  2784  3361 D bt_avp  :      ch_mode: Stereo (0x04)
	Line 4744: 09-09 12:17:40.891  2784  3361 D bt_avp  :      variableBitRateSupport: false
	Line 4745: 09-09 12:17:40.891  2784  3361 D bt_avp  :      bitRate: 320000
	Line 4746: 09-09 12:17:40.891  2784  3361 D bt_avp  : avdt_scb_hdl_setconfig_cmd: codec:   name: AAC
	Line 4747: 09-09 12:17:40.891  2784  3361 D bt_avp  :      objectType: (MPEG-2 AAC LC) (0x80)
	Line 4748: 09-09 12:17:40.891  2784  3361 D bt_avp  :      samp_freq: 44100 (0x0001)
	Line 4749: 09-09 12:17:40.891  2784  3361 D bt_avp  :      ch_mode: Stereo (0x04)
	Line 4750: 09-09 12:17:40.891  2784  3361 D bt_avp  :      variableBitRateSupport: false
	Line 4751: 09-09 12:17:40.891  2784  3361 D bt_avp  :      bitRate: 320000
	Line 4827: 09-09 12:17:40.892  2784  3361 D bt_avp  : AVDT_ConfigRsp: handle=2 label=4 error_code=0x0 category=0
	Line 4828: 09-09 12:17:40.892  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 2 found: p_scb=0x73b7b18980 scb_index=0
	Line 4829: 09-09 12:17:40.892  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
	Line 4831: 09-09 12:17:40.892  2784  3361 D bt_avp  : avdt_msg_send label:4, msg:2, sig:3
	Line 4839: 09-09 12:17:40.893  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
	Line 4840: 09-09 12:17:40.893  2784  3361 D bt_avp  : AVDT_ConfigRsp: result=0
	Line 4842: 09-09 12:17:40.893  2784  3361 D bt_avp  : AVDT_DiscoverReq
	Line 4843: 09-09 12:17:40.893  2784  3361 D bt_avp  : avdt_ccb_event: event=API_DISCOVER_REQ_EVT state=CCB_OPEN_ST action=11
	Line 4844: 09-09 12:17:40.893  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
	Line 4845: 09-09 12:17:40.893  2784  3361 D bt_avp  : avdt_msg_send label:0, msg:0, sig:1
	Line 4853: 09-09 12:17:40.893  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
	Line 4854: 09-09 12:17:40.893  2784  3361 D bt_avp  : avdt_ccb_event: event=API_DISCOVER_REQ_EVT state=CCB_OPEN_ST action=24
	Line 4855: 09-09 12:17:40.893  2784  3361 D bt_avp  : AVDT_DiscoverReq: result=0
	Line 4894: 09-09 12:17:40.902  2784  3361 D bt_avp  : tcid: 0, type: 0
	Line 4895: 09-09 12:17:40.902  2784  3361 D bt_avp  : msg_type=0, sig=0
	Line 4896: 09-09 12:17:40.902  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 2 found: p_scb=0x73b7b18980 scb_index=0
	Line 4897: 09-09 12:17:40.902  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 2 found: p_scb=0x73b7b18980 scb_index=0
	Line 4898: 09-09 12:17:40.902  2784  3361 D bt_avp  : avdt_ad_type_to_tcid: type:1, tcid: 3
	Line 4899: 09-09 12:17:40.902  2784  3361 D bt_avp  : avdt_ad_open_req: type: 1, role: 1, tcid:3
	Line 4900: 09-09 12:17:40.902  2784  3361 D bt_avp  : avdtp_cb.ad.rt_tbl[0][3].scb_hdl = 2
	Line 4901: 09-09 12:17:40.902  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
	Line 4902: 09-09 12:17:40.902  2784  3361 D bt_avp  : avdt_msg_send label:5, msg:2, sig:6
	Line 4910: 09-09 12:17:40.902  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
	Line 4912: 09-09 12:17:40.903  2784  3361 D bt_avp  : tcid: 0, type: 0
	Line 4913: 09-09 12:17:40.903  2784  3361 D bt_avp  : msg_type=2, sig=0
	Line 4914: 09-09 12:17:40.903  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_DISCOVER_RSP_EVT state=CCB_OPEN_ST action=2
	Line 4915: 09-09 12:17:40.903  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_DISCOVER_RSP_EVT state=CCB_OPEN_ST action=4
	Line 4919: 09-09 12:17:40.903  2784  3361 D bt_avp  : avdt_ccb_event: event=RCVRSP_EVT state=CCB_OPEN_ST action=21
	Line 4920: 09-09 12:17:40.903  2784  3361 D bt_avp  : avdt_ccb_event: event=RCVRSP_EVT state=CCB_OPEN_ST action=24
	Line 4930: 09-09 12:17:40.904  2784  3361 D bt_avp  : AVDT_GetCapReq
	Line 4931: 09-09 12:17:40.904  2784  3361 D bt_avp  : avdt_get_cap_req
	Line 4932: 09-09 12:17:40.904  2784  3361 D bt_avp  : avdt_ccb_event: event=API_GETCAP_REQ_EVT state=CCB_OPEN_ST action=13
	Line 4933: 09-09 12:17:40.904  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
	Line 4934: 09-09 12:17:40.904  2784  3361 D bt_avp  : avdt_msg_send label:1, msg:0, sig:12
	Line 4942: 09-09 12:17:40.904  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
	Line 4943: 09-09 12:17:40.904  2784  3361 D bt_avp  : avdt_ccb_event: event=API_GETCAP_REQ_EVT state=CCB_OPEN_ST action=24
	Line 4944: 09-09 12:17:40.904  2784  3361 D bt_avp  : avdt_get_cap_req: result=0
	Line 4945: 09-09 12:17:40.904  2784  3361 D bt_avp  : AVDT_GetCapReq: result=0
	Line 4981: 09-09 12:17:40.908  2784  3361 D bt_avp  : avdt_ad_tc_tbl_to_idx: 1
	Line 4993: 09-09 12:17:40.911  2784  3361 D bt_avp  : tcid: 0, type: 0
	Line 4994: 09-09 12:17:40.911  2784  3361 D bt_avp  : msg_type=2, sig=0
	Line 4995: 09-09 12:17:40.911  2784  3361 D bt_avp  : elem=1 elem_len: 0 psc_mask=0x2
	Line 4996: 09-09 12:17:40.911  2784  3361 D bt_avp  : elem=7 elem_len: 6 psc_mask=0x82
	Line 4997: 09-09 12:17:40.911  2784  3361 D bt_avp  : err=0x0, elem:0x7 psc_mask=0x2
	Line 4998: 09-09 12:17:40.911  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_GETCAP_RSP_EVT state=CCB_OPEN_ST action=2
	Line 4999: 09-09 12:17:40.911  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_GETCAP_RSP_EVT state=CCB_OPEN_ST action=6
	Line 5003: 09-09 12:17:40.911  2784  3361 D bt_avp  : avdt_ccb_event: event=RCVRSP_EVT state=CCB_OPEN_ST action=21
	Line 5004: 09-09 12:17:40.911  2784  3361 D bt_avp  : avdt_ccb_event: event=RCVRSP_EVT state=CCB_OPEN_ST action=24
	Line 5045: 09-09 12:17:40.912  2784  3361 D bt_avp  : AVDT_GetCapReq
	Line 5046: 09-09 12:17:40.912  2784  3361 D bt_avp  : avdt_get_cap_req
	Line 5047: 09-09 12:17:40.912  2784  3361 D bt_avp  : avdt_ccb_event: event=API_GETCAP_REQ_EVT state=CCB_OPEN_ST action=13
	Line 5048: 09-09 12:17:40.912  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
	Line 5049: 09-09 12:17:40.912  2784  3361 D bt_avp  : avdt_msg_send label:2, msg:0, sig:12
	Line 5058: 09-09 12:17:40.912  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
	Line 5059: 09-09 12:17:40.912  2784  3361 D bt_avp  : avdt_ccb_event: event=API_GETCAP_REQ_EVT state=CCB_OPEN_ST action=24
	Line 5060: 09-09 12:17:40.912  2784  3361 D bt_avp  : avdt_get_cap_req: result=0
	Line 5061: 09-09 12:17:40.912  2784  3361 D bt_avp  : AVDT_GetCapReq: result=0
	Line 5073: 09-09 12:17:40.915  2784  3361 D bt_avp  : avdt_l2c_config_ind_cback: lcid: 82
	Line 5074: 09-09 12:17:40.915  2784  3361 D bt_avp  : avdt_l2c_config_ind_cback: peer_mtu: 1005, lcid: 82
	Line 5088: 09-09 12:17:40.915  2784  3361 D bt_avp  : avdt_l2c_config_cfm_cback: lcid: 82
	Line 5089: 09-09 12:17:40.915  2784  3361 D bt_avp  : avdt_ad_tc_open_ind: p_tbl:0x73b7b1ca16 state:5 ccb_idx:0 tcid:3 scb_hdl:2
	Line 5090: 09-09 12:17:40.916  2784  3361 D bt_avp  : LookupAvdtpScb: ccb_idx:0 tcid:3 scb_hdl:2
	Line 5091: 09-09 12:17:40.916  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 2 found: p_scb=0x73b7b18980 scb_index=0
	Line 5092: 09-09 12:17:40.916  2784  3361 D bt_avp  : tcid: 3, type: 1
	Line 5093: 09-09 12:17:40.916  2784  3361 D bt_avp  : avdt_scb_hdl_tc_open: psc_mask: cfg: 0x102, req:0x2, cur: 0x2
	Line 5106: 09-09 12:17:40.916  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 2 found: p_scb=0x73b7b18980 scb_index=0
	Line 5107: 09-09 12:17:40.916  2784  3361 D bt_avp  : avdt_ad_type_to_tcid: type:1, tcid: 3
	Line 5172: 09-09 12:17:40.919  2784  3361 D bt_avp  : tcid: 0, type: 0
	Line 5173: 09-09 12:17:40.919  2784  3361 D bt_avp  : msg_type=2, sig=0
	Line 5174: 09-09 12:17:40.919  2784  3361 D bt_avp  : elem=1 elem_len: 0 psc_mask=0x2
	Line 5175: 09-09 12:17:40.919  2784  3361 D bt_avp  : elem=7 elem_len: 8 psc_mask=0x82
	Line 5176: 09-09 12:17:40.919  2784  3361 D bt_avp  : err=0x0, elem:0x7 psc_mask=0x2
	Line 5177: 09-09 12:17:40.919  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_GETCAP_RSP_EVT state=CCB_OPEN_ST action=2
	Line 5178: 09-09 12:17:40.919  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_GETCAP_RSP_EVT state=CCB_OPEN_ST action=6
	Line 5182: 09-09 12:17:40.920  2784  3361 D bt_avp  : avdt_ccb_event: event=RCVRSP_EVT state=CCB_OPEN_ST action=21
	Line 5183: 09-09 12:17:40.920  2784  3361 D bt_avp  : avdt_ccb_event: event=RCVRSP_EVT state=CCB_OPEN_ST action=24
	Line 5500: 09-09 12:17:40.954  2784  3361 D bt_avp  : tcid: 0, type: 0
	Line 5501: 09-09 12:17:40.954  2784  3361 D bt_avp  : msg_type=2, sig=0
	Line 5502: 09-09 12:17:40.954  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 2 found: p_scb=0x73b7b18980 scb_index=0
	Line 5503: 09-09 12:17:40.954  2784  3361 D bt_avp  : avdt_ad_type_to_tcid: type:1, tcid: 3
	Line 5504: 09-09 12:17:40.954  2784  3361 D bt_avp  : avdt_ad_close_req state: 6
	Line 5505: 09-09 12:17:40.955  2784  3361 D bt_avp  : avdt_ad_type_to_tcid: type:1, tcid: 3
	Line 5513: 09-09 12:17:40.955  2784  3361 D bt_avp  : avdt_ccb_event: event=RCVRSP_EVT state=CCB_OPEN_ST action=21
	Line 5514: 09-09 12:17:40.955  2784  3361 D bt_avp  : avdt_ccb_event: event=RCVRSP_EVT state=CCB_OPEN_ST action=24
	Line 5544: 09-09 12:17:40.997  2784  3361 D bt_avp  : tcid: 0, type: 0
	Line 5545: 09-09 12:17:40.997  2784  3361 D bt_avp  : msg_type=2, sig=0
	Line 5546: 09-09 12:17:40.997  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 1 found: p_scb=0x73b7b187c8 scb_index=0
	Line 5547: 09-09 12:17:40.997  2784  3361 D bt_avp  : avdt_ad_type_to_tcid: type:1, tcid: 1
	Line 5548: 09-09 12:17:40.997  2784  3361 D bt_avp  : avdt_ad_open_req: type: 1, role: 0, tcid:1
	Line 5549: 09-09 12:17:40.997  2784  3361 D bt_avp  : avdtp_cb.ad.rt_tbl[0][1].scb_hdl = 1
	Line 5577: 09-09 12:17:40.998  2784  3361 D bt_avp  : avdt_ad_tc_tbl_to_idx: 1
	Line 5578: 09-09 12:17:40.998  2784  3361 D bt_avp  : avdt_ad_tc_tbl_to_idx: 1
	Line 5579: 09-09 12:17:40.998  2784  3361 D bt_avp  : avdtp_cb.ad.lcid_tbl[3] = 1
	Line 5580: 09-09 12:17:40.998  2784  3361 D bt_avp  : avdtp_cb.ad.rt_tbl[0][1].lcid = 0x43
	Line 5581: 09-09 12:17:40.998  2784  3361 D bt_avp  : avdt_ccb_event: event=RCVRSP_EVT state=CCB_OPEN_ST action=21
	Line 5582: 09-09 12:17:40.998  2784  3361 D bt_avp  : avdt_ccb_event: event=RCVRSP_EVT state=CCB_OPEN_ST action=24
	Line 5592: 09-09 12:17:41.016  2784  3361 D bt_avp  : avdt_l2c_connect_cfm_cback lcid: 67, result: 0
	Line 5607: 09-09 12:17:41.017  2784  3361 D bt_avp  : avdt_l2c_config_ind_cback: lcid: 67
	Line 5608: 09-09 12:17:41.017  2784  3361 D bt_avp  : avdt_l2c_config_ind_cback: peer_mtu: 1005, lcid: 67
	Line 5630: 09-09 12:17:41.021  2784  3361 D bt_avp  : avdt_l2c_config_cfm_cback: lcid: 67
	Line 5631: 09-09 12:17:41.021  2784  3361 D bt_avp  : avdt_ad_tc_open_ind: p_tbl:0x73b7b1ca16 state:5 ccb_idx:0 tcid:1 scb_hdl:1
	Line 5632: 09-09 12:17:41.021  2784  3361 D bt_avp  : LookupAvdtpScb: ccb_idx:0 tcid:1 scb_hdl:1
	Line 5633: 09-09 12:17:41.021  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 1 found: p_scb=0x73b7b187c8 scb_index=0
	Line 5634: 09-09 12:17:41.021  2784  3361 D bt_avp  : tcid: 1, type: 1
	Line 5635: 09-09 12:17:41.021  2784  3361 D bt_avp  : avdt_scb_hdl_tc_open: psc_mask: cfg: 0x102, req:0x2, cur: 0x2
	Line 5643: 09-09 12:17:41.021  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 1 found: p_scb=0x73b7b187c8 scb_index=0
	Line 5644: 09-09 12:17:41.021  2784  3361 D bt_avp  : avdt_ad_type_to_tcid: type:1, tcid: 1
	Line 5853: 09-09 12:17:41.086  2784  3361 I bt_avp  : AVRC_FindService uuid: 110e
	Line 5877: 09-09 12:17:41.087  2784  3361 D bt_avp  : AVRC_Open role: 1, control:67 status:0, handle:0
	Line 5932: 09-09 12:17:41.088  2784  3361 D bt_avp  : avrc_msg_cback handle:1, ctype:1, offset:11, len: 11
	Line 5933: 09-09 12:17:41.088  2784  3361 D bt_avp  : pkt_type 0
	Line 5934: 09-09 12:17:41.088  2784  3361 D bt_avp  : AVRC_MsgReq handle = 1 label = 0 ctype = 12 len = 18
	Line 6055: 09-09 12:17:41.097  2784  3361 D bt_avp  : avrc_msg_cback handle:1, ctype:1, offset:11, len: 11
	Line 6056: 09-09 12:17:41.097  2784  3361 D bt_avp  : pkt_type 0
	Line 6057: 09-09 12:17:41.097  2784  3361 D bt_avp  : AVRC_MsgReq handle = 1 label = 1 ctype = 12 len = 19
	Line 6118: 09-09 12:17:41.121  2784  3361 D bt_avp  : avrc_msg_cback handle:1, ctype:3, offset:11, len: 15
	Line 6119: 09-09 12:17:41.121  2784  3361 D bt_avp  : pkt_type 0
	Line 6121: 09-09 12:17:41.121  2784  3361 D bt_avp  : AVRC_MsgReq handle = 1 label = 0 ctype = 15 len = 12
	Line 6154: 09-09 12:17:41.138  2784  3361 D bt_avp  : avrc_msg_cback handle:1, ctype:1, offset:11, len: 10
	Line 6155: 09-09 12:17:41.138  2784  3361 D bt_avp  : pkt_type 0
	Line 6164: 09-09 12:17:41.139  2784  3361 D bt_avp  : AVRC_MsgReq handle = 1 label = 1 ctype = 12 len = 19
	Line 6178: 09-09 12:17:41.139  2784  3361 D bt_avp  : avrc_msg_cback handle:1, ctype:3, offset:11, len: 15
	Line 6179: 09-09 12:17:41.139  2784  3361 D bt_avp  : pkt_type 0
	Line 6183: 09-09 12:17:41.140  2784  3361 D bt_avp  : AVRC_MsgReq handle = 1 label = 2 ctype = 15 len = 19
	Line 6209: 09-09 12:17:41.141  2784  3361 I bt_avp  : avrc_sdp_cback status: 0
	Line 6237: 09-09 12:17:41.141  2784  3361 D bt_avp  : AVRC_MsgReq handle = 1 label = 1 ctype = 3 len = 15
	Line 6249: 09-09 12:17:41.142  2784  3361 D bt_avp  : AVRC: starting timer (handle=0x01, label=0x01)
	Line 6270: 09-09 12:17:41.160  2784  3361 D bt_avp  : avrc_msg_cback handle:1, ctype:1, offset:11, len: 10
	Line 6271: 09-09 12:17:41.160  2784  3361 D bt_avp  : pkt_type 0
	Line 6273: 09-09 12:17:41.160  2784  3361 D bt_avp  : AVRC_MsgReq handle = 1 label = 1 ctype = 12 len = 19
	Line 6286: 09-09 12:17:41.160  2784  3361 D bt_avp  : avrc_msg_cback handle:1, ctype:3, offset:11, len: 15
	Line 6287: 09-09 12:17:41.160  2784  3361 D bt_avp  : pkt_type 0
	Line 6289: 09-09 12:17:41.161  2784  3361 D bt_avp  : AVRC_MsgReq handle = 1 label = 3 ctype = 15 len = 15
	Line 6314: 09-09 12:17:41.171  2784  3361 D bt_avp  : avrc_msg_cback handle:1, ctype:3, offset:11, len: 15
	Line 6315: 09-09 12:17:41.171  2784  3361 D bt_avp  : pkt_type 0
	Line 6318: 09-09 12:17:41.171  2784  3361 D bt_avp  : AVRC_MsgReq handle = 1 label = 1 ctype = 15 len = 11
	Line 6337: 09-09 12:17:41.188  2784  3361 D bt_avp  : avrc_msg_cback handle:1, ctype:3, offset:11, len: 15
	Line 6338: 09-09 12:17:41.188  2784  3361 D bt_avp  : pkt_type 0
	Line 6341: 09-09 12:17:41.189  2784  3361 D bt_avp  : AVRC_MsgReq handle = 1 label = 4 ctype = 15 len = 15
	Line 6358: 09-09 12:17:41.190  2784  3361 D bt_avp  : AVRC_MsgReq handle = 1 label = 5 ctype = 9 len = 108
	Line 6379: 09-09 12:17:41.206  2784  3361 D bt_avp  : avrc_msg_cback handle:1, ctype:3, offset:11, len: 15
	Line 6380: 09-09 12:17:41.206  2784  3361 D bt_avp  : pkt_type 0
	Line 6381: 09-09 12:17:41.206  2784  3361 D bt_avp  : AVRC_MsgReq handle = 1 label = 6 ctype = 15 len = 13
	Line 6451: 09-09 12:17:41.223  2784  3361 D bt_avp  : avrc_msg_cback handle:1, ctype:1, offset:11, len: 47
	Line 6452: 09-09 12:17:41.223  2784  3361 D bt_avp  : pkt_type 0
	Line 6457: 09-09 12:17:41.224  2784  3361 D bt_avp  : AVRC_MsgReq handle = 1 label = 5 ctype = 12 len = 58
	Line 6475: 09-09 12:17:41.225  2784  3361 D bt_avp  : AVRC_MsgReq handle = 1 label = 7 ctype = 9 len = 4
	Line 7483: 09-09 12:17:43.017  2784  3361 D bt_avp  : tcid: 0, type: 0
	Line 7484: 09-09 12:17:43.017  2784  3361 D bt_avp  : msg_type=0, sig=0
	Line 7485: 09-09 12:17:43.017  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 1 found: p_scb=0x73b7b187c8 scb_index=0
	Line 7486: 09-09 12:17:43.017  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 1 found: p_scb=0x73b7b187c8 scb_index=0
	Line 7487: 09-09 12:17:43.017  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
	Line 7488: 09-09 12:17:43.017  2784  3361 D bt_avp  : avdt_msg_send label:6, msg:2, sig:8
	Line 7499: 09-09 12:17:43.017  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
	Line 7509: 09-09 12:17:43.033  2784  3361 D bt_avp  : avdt_l2c_disconnect_ind_cback lcid: 67, ack_needed: 1
	Line 7526: 09-09 12:17:43.034  2784  3361 D bt_avp  : avdt_ad_tc_close_ind: tcid: 1, old: 6
	Line 7527: 09-09 12:17:43.034  2784  3361 D bt_avp  : LookupAvdtpScb: ccb_idx:0 tcid:1 scb_hdl:1
	Line 7528: 09-09 12:17:43.034  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 1 found: p_scb=0x73b7b187c8 scb_index=0
	Line 7529: 09-09 12:17:43.034  2784  3361 D bt_avp  : tcid: 1, type: 1
	Line 7775: 09-09 12:17:43.070  2784  3361 D bt_avp  : AVRC_Close handle:1
	Line 7776: 09-09 12:17:43.070  2784  3361 D bt_avp  : AVRC: Flushing command queue for handle=0x01
	Line 7778: 09-09 12:17:43.070  2784  3361 D bt_avp  : AVRC: Flushing command queue for handle=0x01
	Line 7783: 09-09 12:17:43.070  2784  3361 D bt_avp  : avdt_l2c_disconnect_ind_cback lcid: 78, ack_needed: 1
	Line 7795: 09-09 12:17:43.071  2784  3361 D bt_avp  : avdt_ad_tc_close_ind: tcid: 0, old: 6
	Line 7796: 09-09 12:17:43.071  2784  3361 D bt_avp  : avdt_ccb_event: event=LL_CLOSE_EVT state=CCB_IDLE_ST action=33
	Line 7797: 09-09 12:17:43.071  2784  3361 D bt_avp  : avdt_ccb_ll_closed peer ac:43:6e:73:db:c5
	Line 7798: 09-09 12:17:43.071  2784  3361 D bt_avp  : avdt_ccb_dealloc: deallocated (index 0) peer=ac:43:6e:73:db:c5 p_ccb=0x73b7b187c0
	Line 7803: 09-09 12:17:43.071  2784  3361 D bt_avp  : avdt_ccb_event: event=LL_CLOSE_EVT state=CCB_IDLE_ST action=36
	Line 8042: 09-09 12:17:44.031  2784  3361 D bt_avp  : avdt_ccb_alloc_by_channel_index: allocated (index 0) peer=ac:43:6e:73:db:c5 p_ccb=0x73b7b187c0
	Line 8053: 09-09 12:17:44.032  2784  3361 D bt_avp  : avdt_sec_check_complete_term res: 0
	Line 8058: 09-09 12:17:44.032  2784  3361 D bt_avp  : avdt_ad_tc_tbl_to_idx: 0
	Line 8077: 09-09 12:17:44.048  2784  3361 D bt_avp  : avdt_l2c_config_ind_cback: lcid: 95
	Line 8078: 09-09 12:17:44.048  2784  3361 D bt_avp  : avdt_l2c_config_ind_cback: peer_mtu: 672, lcid: 95
	Line 8090: 09-09 12:17:44.049  2784  3361 D bt_avp  : avdt_l2c_config_cfm_cback: lcid: 95
	Line 8091: 09-09 12:17:44.050  2784  3361 D bt_avp  : avdt_ad_tc_open_ind: p_tbl:0x73b7b1ca08 state:5 ccb_idx:0 tcid:0 scb_hdl:0
	Line 8096: 09-09 12:17:44.050  2784  3361 D bt_avp  : avdt_ccb_event: event=LL_OPEN_EVT state=CCB_OPEN_ST action=34
	Line 8097: 09-09 12:17:44.050  2784  3361 D bt_avp  : avdt_ccb_ll_opened peer ac:43:6e:73:db:c5 BtaAvScbIndex=0 p_ccb=0x73b7b187c0
	Line 8100: 09-09 12:17:44.050  2784  3361 D bt_avp  : avdt_ccb_event: event=LL_OPEN_EVT state=CCB_OPEN_ST action=36
	Line 8192: 09-09 12:17:44.066  2784  3361 D bt_avp  : tcid: 0, type: 0
	Line 8193: 09-09 12:17:44.066  2784  3361 D bt_avp  : msg_type=0, sig=0
	Line 8194: 09-09 12:17:44.066  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_DISCOVER_CMD_EVT state=CCB_OPEN_ST action=3
	Line 8195: 09-09 12:17:44.066  2784  3361 D bt_avp  : avdt_ccb_hdl_discover_cmd: p_ccb index=0
	Line 8196: 09-09 12:17:44.066  2784  3361 D bt_avp  : avdt_ccb_event: event=API_DISCOVER_RSP_EVT state=CCB_OPEN_ST action=12
	Line 8197: 09-09 12:17:44.066  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
	Line 8198: 09-09 12:17:44.066  2784  3361 D bt_avp  : avdt_msg_send label:0, msg:2, sig:1
	Line 8206: 09-09 12:17:44.066  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
	Line 8207: 09-09 12:17:44.066  2784  3361 D bt_avp  : avdt_ccb_event: event=API_DISCOVER_RSP_EVT state=CCB_OPEN_ST action=24
	Line 8208: 09-09 12:17:44.067  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_DISCOVER_CMD_EVT state=CCB_OPEN_ST action=36
	Line 8217: 09-09 12:17:44.084  2784  3361 D bt_avp  : tcid: 0, type: 0
	Line 8218: 09-09 12:17:44.084  2784  3361 D bt_avp  : msg_type=0, sig=0
	Line 8219: 09-09 12:17:44.084  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 1 found: p_scb=0x73b7b187c8 scb_index=0
	Line 8220: 09-09 12:17:44.084  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_GETCAP_CMD_EVT state=CCB_OPEN_ST action=5
	Line 8221: 09-09 12:17:44.084  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 1 found: p_scb=0x73b7b187c8 scb_index=0
	Line 8222: 09-09 12:17:44.084  2784  3361 D bt_avp  : avdt_ccb_event: event=API_GETCAP_RSP_EVT state=CCB_OPEN_ST action=14
	Line 8223: 09-09 12:17:44.084  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
	Line 8224: 09-09 12:17:44.084  2784  3361 D bt_avp  : avdt_msg_send label:1, msg:2, sig:12
	Line 8232: 09-09 12:17:44.084  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
	Line 8233: 09-09 12:17:44.084  2784  3361 D bt_avp  : avdt_ccb_event: event=API_GETCAP_RSP_EVT state=CCB_OPEN_ST action=24
	Line 8234: 09-09 12:17:44.084  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_GETCAP_CMD_EVT state=CCB_OPEN_ST action=36
	Line 8247: 09-09 12:17:44.102  2784  3361 D bt_avp  : tcid: 0, type: 0
	Line 8248: 09-09 12:17:44.102  2784  3361 D bt_avp  : msg_type=0, sig=0
	Line 8249: 09-09 12:17:44.102  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 2 found: p_scb=0x73b7b18980 scb_index=0
	Line 8250: 09-09 12:17:44.102  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_GETCAP_CMD_EVT state=CCB_OPEN_ST action=5
	Line 8251: 09-09 12:17:44.102  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 2 found: p_scb=0x73b7b18980 scb_index=0
	Line 8252: 09-09 12:17:44.102  2784  3361 D bt_avp  : avdt_ccb_event: event=API_GETCAP_RSP_EVT state=CCB_OPEN_ST action=14
	Line 8253: 09-09 12:17:44.102  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
	Line 8254: 09-09 12:17:44.102  2784  3361 D bt_avp  : avdt_msg_send label:2, msg:2, sig:12
	Line 8262: 09-09 12:17:44.102  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
	Line 8263: 09-09 12:17:44.103  2784  3361 D bt_avp  : avdt_ccb_event: event=API_GETCAP_RSP_EVT state=CCB_OPEN_ST action=24
	Line 8264: 09-09 12:17:44.103  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_GETCAP_CMD_EVT state=CCB_OPEN_ST action=36
	Line 8285: 09-09 12:17:44.119  2784  3361 D bt_avp  : tcid: 0, type: 0
	Line 8286: 09-09 12:17:44.119  2784  3361 D bt_avp  : msg_type=0, sig=0
	Line 8287: 09-09 12:17:44.119  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 3 found: p_scb=0x73b7b18b38 scb_index=0
	Line 8288: 09-09 12:17:44.119  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_GETCAP_CMD_EVT state=CCB_OPEN_ST action=5
	Line 8289: 09-09 12:17:44.119  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 3 found: p_scb=0x73b7b18b38 scb_index=0
	Line 8290: 09-09 12:17:44.119  2784  3361 D bt_avp  : avdt_ccb_event: event=API_GETCAP_RSP_EVT state=CCB_OPEN_ST action=14
	Line 8291: 09-09 12:17:44.119  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
	Line 8292: 09-09 12:17:44.119  2784  3361 D bt_avp  : avdt_msg_send label:3, msg:2, sig:12
	Line 8300: 09-09 12:17:44.120  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
	Line 8301: 09-09 12:17:44.120  2784  3361 D bt_avp  : avdt_ccb_event: event=API_GETCAP_RSP_EVT state=CCB_OPEN_ST action=24
	Line 8302: 09-09 12:17:44.120  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_GETCAP_CMD_EVT state=CCB_OPEN_ST action=36
	Line 8307: 09-09 12:17:44.153  2784  3361 D bt_avp  : tcid: 0, type: 0
	Line 8308: 09-09 12:17:44.153  2784  3361 D bt_avp  : msg_type=0, sig=0
	Line 8309: 09-09 12:17:44.153  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 2 found: p_scb=0x73b7b18980 scb_index=0
	Line 8310: 09-09 12:17:44.153  2784  3361 D bt_avp  : elem=1 elem_len: 0 psc_mask=0x2
	Line 8311: 09-09 12:17:44.153  2784  3361 D bt_avp  : elem=7 elem_len: 8 psc_mask=0x82
	Line 8312: 09-09 12:17:44.153  2784  3361 D bt_avp  : err=0x0, elem:0x7 psc_mask=0x2
	Line 8313: 09-09 12:17:44.153  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 2 found: p_scb=0x73b7b18980 scb_index=0
	Line 8314: 09-09 12:17:44.153  2784  3361 D bt_avp  : avdt_scb_hdl_setconfig_cmd: p_scb->in_use=0 p_avdt_scb=0x73b7b18980 scb_index=0
	Line 8315: 09-09 12:17:44.153  2784  3361 D bt_avp  : avdt_scb_hdl_setconfig_cmd: codec:   name: AAC
	Line 8316: 09-09 12:17:44.153  2784  3361 D bt_avp  :      objectType: (MPEG-2 AAC LC) (0x80)
	Line 8317: 09-09 12:17:44.153  2784  3361 D bt_avp  :      samp_freq: 44100 (0x0001)
	Line 8318: 09-09 12:17:44.153  2784  3361 D bt_avp  :      ch_mode: Stereo (0x04)
	Line 8319: 09-09 12:17:44.153  2784  3361 D bt_avp  :      variableBitRateSupport: false
	Line 8320: 09-09 12:17:44.153  2784  3361 D bt_avp  :      bitRate: 320000
	Line 8321: 09-09 12:17:44.153  2784  3361 D bt_avp  : avdt_scb_hdl_setconfig_cmd: codec:   name: AAC
	Line 8322: 09-09 12:17:44.153  2784  3361 D bt_avp  :      objectType: (MPEG-2 AAC LC) (0x80)
	Line 8323: 09-09 12:17:44.153  2784  3361 D bt_avp  :      samp_freq: 44100 (0x0001)
	Line 8324: 09-09 12:17:44.153  2784  3361 D bt_avp  :      ch_mode: Stereo (0x04)
	Line 8325: 09-09 12:17:44.153  2784  3361 D bt_avp  :      variableBitRateSupport: false
	Line 8326: 09-09 12:17:44.153  2784  3361 D bt_avp  :      bitRate: 320000
	Line 8402: 09-09 12:17:44.155  2784  3361 D bt_avp  : AVDT_ConfigRsp: handle=2 label=4 error_code=0x0 category=0
	Line 8403: 09-09 12:17:44.155  2784  3361 D bt_avp  : avdt_scb_by_hdl: SCB for handle 2 found: p_scb=0x73b7b18980 scb_index=0
	Line 8404: 09-09 12:17:44.155  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
	Line 8405: 09-09 12:17:44.155  2784  3361 D bt_avp  : avdt_msg_send label:4, msg:2, sig:3
	Line 8413: 09-09 12:17:44.155  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
	Line 8414: 09-09 12:17:44.155  2784  3361 D bt_avp  : AVDT_ConfigRsp: result=0
	Line 8417: 09-09 12:17:44.155  2784  3361 D bt_avp  : AVDT_DiscoverReq
	Line 8418: 09-09 12:17:44.155  2784  3361 D bt_avp  : avdt_ccb_event: event=API_DISCOVER_REQ_EVT state=CCB_OPEN_ST action=11
	Line 8419: 09-09 12:17:44.155  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=25
	Line 8420: 09-09 12:17:44.155  2784  3361 D bt_avp  : avdt_msg_send label:0, msg:0, sig:1
	Line 8428: 09-09 12:17:44.155  2784  3361 D bt_avp  : avdt_ccb_event: event=SENDMSG_EVT state=CCB_OPEN_ST action=36
	Line 8429: 09-09 12:17:44.155  2784  3361 D bt_avp  : avdt_ccb_event: event=API_DISCOVER_REQ_EVT state=CCB_OPEN_ST action=24
	Line 8430: 09-09 12:17:44.155  2784  3361 D bt_avp  : AVDT_DiscoverReq: result=0
	Line 8502: 09-09 12:17:48.155  2784  3361 D bt_avp  : avdt_ccb_event: event=RSP_TOUT_EVT state=CCB_OPEN_ST action=20
	Line 8503: 09-09 12:17:48.155  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_DISCOVER_RSP_EVT state=CCB_OPEN_ST action=2
	Line 8504: 09-09 12:17:48.155  2784  3361 D bt_avp  : avdt_ccb_event: event=MSG_DISCOVER_RSP_EVT state=CCB_OPEN_ST action=4
	Line 8508: 09-09 12:17:48.155  2784  3361 D bt_avp  : avdt_ccb_event: event=RSP_TOUT_EVT state=CCB_OPEN_ST action=24
	Line 8551: 09-09 12:17:51.060  2784  3361 D bt_avp  : avdt_l2c_disconnect_ind_cback lcid: 95, ack_needed: 0
	Line 8552: 09-09 12:17:51.061  2784  3361 D bt_avp  : avdt_ad_tc_close_ind: tcid: 0, old: 6
	Line 8553: 09-09 12:17:51.061  2784  3361 D bt_avp  : avdt_ccb_event: event=LL_CLOSE_EVT state=CCB_IDLE_ST action=33
	Line 8554: 09-09 12:17:51.061  2784  3361 D bt_avp  : avdt_ccb_ll_closed peer ac:43:6e:73:db:c5
	Line 8558: 09-09 12:17:51.061  2784  3361 D bt_avp  : avdt_ccb_dealloc: deallocated (index 0) peer=ac:43:6e:73:db:c5 p_ccb=0x73b7b187c0
	Line 8561: 09-09 12:17:51.061  2784  3361 D bt_avp  : avdt_ccb_event: event=LL_CLOSE_EVT state=CCB_IDLE_ST action=36

分析


avdt_msg_send 发送了 bt_avp  : avdt_msg_send label:0, msg:0, sig:1
创建定时器 发送事件 AVDT_CCB_RSP_TOUT_EVT
avdt_ccb_rsp_ccb_timer_timeout -> avdt_ccb_event -> 

avdt_ccb_snd_suspend_rsp

avdt_ccb_cong_state

avdt_ccb_chk_close

同时

bta_av_st_rc_timer -> bta_sys_start_timer 创建定时器 超时发送事件 BTA_AV_AVRC_TIMER_EVT

avdt_ccb_event -> avdt_ccb_hdl_discover_rsp -> bta_av_proc_stream_evt -> bta_sys_sendmsg -> bta_sys_event -> bta_av_hdl_event -> bta_av_ssm_execute -> bta_av_cleanup

猜测:
source执行到AVDT_DiscoverReq 
sink未回复 导致超时然后AVDT连接失败

参考

Android 蓝牙(三) Settings Bluetooth 搜索流程详解
Android 蓝牙(一) Bluetooth Settings 开启流程详解

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值