OS X Chooses SBC audio Codec over AAC for Bluetooth A2DP Connection
| Originator: | jeff | ||
| Number: | rdar://19312818 | Date Originated: | 2014-12-19 |
| Status: | Closed as Duplicate of 18202172 (Open) | Resolved: | |
| Product: | OS X | Product Version: | OS X 10.10.1 (14B25) |
| Classification: | Reproducible: |
Attachments: https://jeffvautin.com/wp-content/uploads/openradar/radar19312818OSXChoosesSBCOverAAC.zip
Summary:
I was observing bluetooth connections from an iPhone and a MacBook Pro to a 2015 Corvette (Premium Audio). The Corvette advertises both SBC and AAC capabilities:
[Dec 17 16:06:29.175] [AVDTP RECEIVE] Get Cap.: Accept-Response (0x02)
Get Cap.: Accept-Response (0x02)
Msg Type: Accept-Response (0x02)
Transaction Label: 0x00
Packet Type: Single (0x0)
Size: 12 (0x0C)
Media Transport
SBC Encoding:
Sample Frequency: 44.1kHz 48kHz
Channel Mode: Mono Dual Stereo Joint
Blocks: 4 8 12 16
Subbands: 4 8
Allocation: SNR Loudness
Min Bitpool: 2 (0x02)
Max Bitpool: 81 (0x51)
[Dec 17 16:06:29.440] [AVDTP RECEIVE] Get Cap.: Accept-Response (0x02)
Get Cap.: Accept-Response (0x02)
Msg Type: Accept-Response (0x02)
Transaction Label: 0x03
Packet Type: Single (0x0)
Size: 14 (0x0E)
Media Transport
MPEG24Codec (AAC)
Object Type: MPEG-2 LC MPEG-4 LC
Sampling Frequency: 44.1kHz 48kHz
Channels: Mono Stereo
Variable Bit Rate: YES
Bit Rate: 128
The iPhone chooses to use the AAC codec:
2014-12-17T16:29:40.896 A2DPClient.cpp:626 MediaConfig Info A2DP MTU for device E0:75:0A:CE:DE:F2 "Chevrolet MyLink" has been changed to 660
2014-12-17T16:29:40.896 A2dpStreamConfig.cpp:636 SetAacDataRate Info A2DP AAC frame len: 645 bytes, num frames: 1, bitrate: 256 kb/s, rtp intr: 23219, rtpFrameLen 645, latency 92879
While the MacBook Pro chooses to use the SBC codec:
[Dec 17 16:06:29.446] [AVDTP SEND] Set Config.: Signal (0x03)
Set Config.: Signal (0x03)
Msg Type: Signal (0x00)
Transaction Label: 0x03
Packet Type: Single (0x0)
Size: 14 (0x0E)
Endpoint: 1
Media Transport
SBC Encoding:
Sample Frequency: 44.1kHz
Channel Mode: Stereo
Blocks: 16
Subbands: 8
Allocation: Loudness
Min Bitpool: 2 (0x02)
Max Bitpool: 64 (0x40)
Since the AAC codec provides higher fidelity, the MacBook Pro should also be choosing to use the AAC codec to provide audio to the Corvette.
Steps to Reproduce:
1. Pair a MacBook Pro with a 2015 Corvette (or any other Bluetooth A2DP sink capable of using AAC codec).
2. Observe codec selected by OS X (option-click Bluetooth Menubar icon and Create Diagnostics Report on Desktop…).
Expected Results:
OS X should select the AAC codec for the Bluetooth A2DP connection.
Actual Results:
OS X selects the inferior SBC codec.
Version:
OS X 10.10.1 (14B25)
Notes:
I would be happy to provide more information about this over the phone. I've attached both the Mac and iOS Bluetooth Diagnostics logs the above excerpts came from so that you can see the communications in context:
BluetoothReporter_2014-12-17_16.08.18.zip - Mac diagnostic logs
Logs-2014.12.17-16.29.56.zip - iPhone 6 diagnostic logs
Configuration:
Hardware Overview:
Model Name: MacBook Pro
Model Identifier: MacBookPro8,2
Processor Name: Intel Core i7
Processor Speed: 2.5 GHz
Number of Processors: 1
Total Number of Cores: 4
L2 Cache (per Core): 256 KB
L3 Cache: 8 MB
Memory: 16 GB
Boot ROM Version: MBP81.0047.B27
SMC Version (system): 1.69f3
Serial Number (system): C02H7074DV7P
Hardware UUID: 100164E7-D5FA-5D4D-9AC3-9A6415C7E715
Sudden Motion Sensor:
State: Enabled
System Software Overview:
System Version: OS X 10.10.1 (14B25)
Kernel Version: Darwin 14.0.0
Boot Volume: Macintosh HD
Boot Mode: Normal
Computer Name: usma-m158-asd
User Name: Jeff Vautin (jeffvautin)
Secure Virtual Memory: Enabled
Time since boot: 1 day5:21
MacBook Pro.spx - configuration file has been successfully uploaded.
Attachments:
'BluetoothReporter_2014-12-17_16.08.18.zip', 'Logs-2014.12.17-16.29.56.zip' and 'MacBook Pro.spx' were successfully uploaded.
Comments
Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!