Abstract
It is said that AAC as Bluetooth codec is supported by Windows 11, there is no corresponding description in Microsoft site. Then, Bluetooth packet capture*1 again to check whether AAC connection works. As its conclusion, Windows 11 supports AAC and it actually works.
This post introduces how to reveal it, and its working procedure.
Assumption
The work in this post was done in the following environment.
version | |
---|---|
Windows 11 Pro | 21H2 22000.795 |
Wireshark*2 | 3.6.6 |
Microsoft Bluetooth Test Platform (BTP)*3 | 1.12.2 |
Among the tools provided by BTP, use the Bluetooth Virtual Sniffer (btvs.exe) *4. Based on the default installation path, it is stored at
C:\BTP\v1.12.2\x86\btvs.exe
Earphones for verification in this post is SONY WI-SP500*5. This earphones officially support both SBA and AAC, but also unofficially support aptX as packet capture indicates.
Basic precautions
In advance of beginning the operation, all Bluetooth equipment should be disconnected. It prevents Wireshark from capturing extra packets.
Packet capture with Wireshark should be started before connecting Bluetooth earpiece. Specifically, following steps will be taken.
These steps ensures to capture packets during Bluetooth negotiation between Windows and earpiece.
In addition, connection request should be started by earpiece, not Windows. Depending on which side starting from, negotiation procedure changes.
defining negotiation as conversation between Windows and earpiece, it is expressed as followings.
Host = Windows
Guest = earpiece
The case starting by guest
G: Please let me talk
H: What language do you speak?
G: EN, FR, JP, etc
H: JP please
The case starting by host
H: Shall we talk?
G: Is it ok to speak JP?
H: JP please
In the case starting by guest, all languages are opened, but the other case is not. This language is codec in actual operation, and to identify all available codecs, negotiation must be started by earpiece.
Finally, there is a case that in spite of expected codec is available, it is not always applied in communication. Example, earpiece says aptX is available, SBC is applied in actual communication. This topic is discussed later.
Operation
Run ”C:\BTP\v1.12.2\x86\btvs.exe”, the next window appears. Then, click "Full Packet Logging". Simultaneously, Wireshark appears, too. Packet capture is already initiated.
Connect Bluetooth earpiece in this situation, all packets including negotiation are captured.
Focus next records, ”ResponseAccept” shows codec supported by earpiece, and "SetConfiguration" indicates codec in use for communication.
Column | |
---|---|
Protocol | AVDTP |
Info | Command - GetAllCapabilities ~ |
Info | ResponseAccept - GetCapabilities ~ |
Info | Command - SetConfiguration ~ |
Next sample shows codecs below, and indicates that AAC is applied for communication.
- SBC
- aptX
- AAC
Earphnes ask to PC as "Command - GetAllCapabilities", and PC responds ”ResponseAccept~” with codec information. And Earphones tell PC codec with "Command - SetConfiguration"
Although SONY WI-SP500 doesn't support aptX, packet capture shows one response implicates its support. Probably, it may work only for Xperia.
When video or audio is played in this state, Wireshark continues to capture RTP (Realtime Transport Protocol) packets. Details of packet indicates that AAC actually works.
Off topic
Windows 11 reportedly supports AAC. But somehow Microsoft doesn't disclose it officially in their web site.
In case if Windows 10, supporting aptX is mentioned below. Corresponding page for Windows 11 is not prepared.
Bluetooth audio enhancements (Wideband speech, aptX®) - High Definition sound while limiting Lip Sync and latency issues.