本篇文章主要介绍 A2DP 基础操作。
- 介绍
A2DP :Advanced Audio Distribution Profile。高质量音频数据传输的协议,其定义里了传送单声道或立体声等高质量音频(区别于蓝牙SCO链路上传输的普通语音)信息的协议和过程。A2DP的典型应用是将音乐播放器的音频数据发送到耳机或音箱。
A2DP 定义了两种角色:
Audio Source :(音频源) 音频的输入端对音频数据进行编码,发送到Sink端。
Audio Sink : (音频接收器) 接收到音频数据后,进行解码操作还原出音频。
- 初始化 A2DP 代理对象
private void initBluetooth() {
mBtAdapter = BluetoothAdapter.getDefaultAdapter();
if (!mBtAdapter.isEnabled()) {
return;
}
//获取A2DP代理对象
mBtAdapter.getProfileProxy(mContext, mListener, BluetoothProfile.A2DP);
}
private void initReceiver() {
//广播接收者监听状态
IntentFilter filter = new IntentFilter(BluetoothA2dp.
ACTION_CONNECTION_STATE_CHANGED);
filter.addAction(BluetoothA2dp.ACTION_PLAYING_STATE_CHANGED);