History log of /system/bt/stack/a2dp/a2dp_vendor_aptx_encoder.cc
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
c95e5dd827275ca33d84ee8084b8511c0dd9892e 11-May-2017 Pavlin Radoslavov <pavlin@google.com> Removed A2DP_GetTrackBitsPerSample() API because it is not needed

The A2DP_GetTrackBitsPerSample() API was replaced in the past
by A2dpCodecConfig::getAudioBitsPerSample() .
* Removed A2DP_GetTrackBitsPerSample() and related codec-specific APIs:
- A2DP_GetTrackBitsPerSampleSbc
- A2DP_GetTrackBitsPerSampleAac
- A2DP_GetTrackBitsPerSampleAptx
- A2DP_GetTrackBitsPerSampleAptxHd
- A2DP_GetTrackBitsPerSampleLdac
NOTE: The removed A2DP_GetTrackBitsPerSampleLdac implementation
had a bug: a2dp_ldac_caps.bits_per_sample -> ldac_cie.bits_per_sample
This bug itself was uncovered when switching to clang-3960126
- A2DP_VendorGetTrackBitsPerSample()
* Replaced few leftover usages of A2DP_GetTrackBitsPerSample()
A2dpCodecConfig::getAudioBitsPerSample()
* Updated the unit tests

Test: Code compilation, unit tests, A2DP streaming
Bug: 37752547
Change-Id: I7feeda0f32922b8ef888b157673e3e2ade98b179
/system/bt/stack/a2dp/a2dp_vendor_aptx_encoder.cc
302113d4e44f06e90f90a5903e33ae830edb58a3 07-Apr-2017 Pavlin Radoslavov <pavlin@google.com> Add A2DP codec-specific information to dumpsys output

Now we print the following information:
* Current codec name
* Info for each supported codec:
- Priority
- Encoder interval (ms)
- Codec Config: Sampling rate, Bits per sample, Channel mode (MONO/STEREO)
- Selectable codec configuration
- Codec's local capability
- Packet counts (expected/dropped)
- PCM read counts (expected/actual)
- PCM read bytes (expected/actual)
* LDAC codec-specific info:
- LDAC quality mode: HIGH/MID/LOW/ABR
- LDAC saved transmit queue length [used in ABR mode]
* SBC codec-specific info:
- Frames counts (expected/dropped)

Sample of the new format is below:

---
A2DP Codecs State:
Current Codec: LDAC

A2DP LDAC State:
Priority: 1000000
Encoder interval (ms): 20
Config: Rate=96000 Bits=32 Mode=STEREO
Selectable: Rate=44100|48000|88200|96000 Bits=16|24|32 Mode=MONO|STEREO
Local capability: Rate=44100|48000|88200|96000 Bits=16|24|32 Mode=MONO|STEREO
Packet counts (expected/dropped) : 596 / 161
PCM read counts (expected/actual) : 2488 / 2488
PCM read bytes (expected/actual) : 2547712 / 2547712
LDAC quality mode : ABR
LDAC saved transmit queue length : 0

A2DP aptX-HD State:
Priority: 4001
Encoder interval (ms): 0
Config: Invalid
Selectable: Invalid
Local capability: Rate=44100|48000 Bits=24 Mode=STEREO
Packet counts (expected/dropped) : 0 / 0
PCM read counts (expected/actual) : 0 / 0
PCM read bytes (expected/actual) : 0 / 0

A2DP aptX State:
Priority: 3001
Encoder interval (ms): 0
Config: Rate=44100 Bits=16 Mode=STEREO
Selectable: Rate=44100|48000 Bits=16 Mode=STEREO
Local capability: Rate=44100|48000 Bits=16 Mode=STEREO
Packet counts (expected/dropped) : 0 / 0
PCM read counts (expected/actual) : 0 / 0
PCM read bytes (expected/actual) : 0 / 0

A2DP AAC State:
Priority: 2001
Encoder interval (ms): 20
Config: Rate=44100 Bits=16 Mode=STEREO
Selectable: Rate=44100|48000 Bits=16 Mode=STEREO
Local capability: Rate=44100|48000|88200|96000 Bits=16 Mode=STEREO
Packet counts (expected/dropped) : 0 / 0
PCM read counts (expected/actual) : 0 / 0
PCM read bytes (expected/actual) : 0 / 0

A2DP SBC State:
Priority: 1001
Encoder interval (ms): 20
Config: Rate=44100 Bits=16 Mode=STEREO
Selectable: Rate=44100 Bits=16 Mode=STEREO
Local capability: Rate=44100 Bits=16 Mode=STEREO
Packet counts (expected/dropped) : 580 / 0
PCM read counts (expected/actual) : 2900 / 2900
PCM read bytes (expected/actual) : 1484800 / 1484800
Frames counts (expected/dropped) : 3724 / 0
---

Bug: 36567128
Test: Stream A2DP and "adb shell dumpsys bluetooth_manager"
Change-Id: Idd86005b842a4e569b7df91b8bbaf0632ed7f7c9
/system/bt/stack/a2dp/a2dp_vendor_aptx_encoder.cc
39bbfab26d69fe373b3e11843d1157249db86d09 14-Jan-2017 Pavlin Radoslavov <pavlin@google.com> Reduced the log verbosity level for aptX/aptX-HD data packets

Also, fixed a typo in a log message.

Test: A2DP streaming to headset, and capturing "adb logcat" output
Change-Id: I525d78e3ebde334857261f0cbd256a7f6a946e96
/system/bt/stack/a2dp/a2dp_vendor_aptx_encoder.cc
f8e2670d12ee55ec48635ef55a86ecfa643cc761 11-Jan-2017 Pavlin Radoslavov <pavlin@google.com> Removed the feeding_init call from tA2DP_ENCODER_INTERFACE

The feeding_init call is not used anymore - it has been superseded
by the newer A2dpCodecs.setCodecAudioConfig() mechanism.

Also, moved aptx_init_framing_params() and aptx_hd_init_framing_params()
calls to the corresponding encoder_update functions.

Test: A2DP streaming to Bluetooth headsets
Change-Id: I52f42b4701d04fe2ddb8f115bb9cd57fe38e2b38
/system/bt/stack/a2dp/a2dp_vendor_aptx_encoder.cc
d43a901c579ef08a1b5d7cfe18f759aad0a14f1a 07-Jan-2017 Pavlin Radoslavov <pavlin@google.com> Renamed the aptX and aptX-HD shared libraries

* The names of the expected aptX and aptX-HD shared libraries are
updated to reflect better their purpose:
- aptX: libaptX.so -> libaptX_encoder.so
- aptX-HD: libaptXHD.so -> libaptXHD_encoder.so

Also:
* Add a missing upcall with the codec info the first time the codec
is selected internally
* Minor cleanup

Bug: 30958229
Test: A2DP streaming to aptX/aptX-HD headsets
Change-Id: Ib2bfc83823190fb7a057353eb47cd71c5b4d5a3a
/system/bt/stack/a2dp/a2dp_vendor_aptx_encoder.cc
3a3ec66a1bb7f5c99b17239021d6d184a3abd4ee 25-Oct-2016 Pavlin Radoslavov <pavlin@google.com> Integration of the aptX and aptX-HD codecs for A2DP source

Each of the codecs can be used if the corresponding encoding
shared library is installed on the device:
- aptX: libaptX.so
- aptX-HD: libaptXHD.so

Test: A2DP streaming to aptX and aptX-HD headsets
Bug: 30958229
Change-Id: I1ca36da653721576f5a5b6bdac186b9ea2790c85
/system/bt/stack/a2dp/a2dp_vendor_aptx_encoder.cc