EDIT: 3/21/17
aptX and aptX (and possibly other flavors) are all supported "right out of the box" in Android "O".
https://xdaforums.com/showpost.php?p=71533614&postcount=286
I revoke my personal bounty as it's now just a matter of time before AOSP ROM's show up for my device at least, which work with aptX.
-------------------------------------------------------------------------------------------------------------------------
EDIT: 2/18/17
It seems that most or all Lineage OS (LOS) 14.X based ROM's are working with aptX. Multiple people with various different Qualcomm cellphones are reporting aptX working after installing the .so files.
Is there any device out there it's NOT working for?
Bounty still available if you can figure out how to make it work in AOSP ROM's.
-------------------------------------------------------------------------------------------------------------------------
EDIT: 1/15/17
@dh.harold has aptX working on a few LineageOS 14.1 devices running Qualcomm Bluetooth stacks.
Please go to his thread and give him some thanks and to read about how to install the mod.
https://xdaforums.com/oneplus-3/themes/mod-aptx-codec-t3521228
-------------------------------------------------------------------------------------------------------------------------
EDIT: 8/17/15 This thread is going nowhere fast. As of todays date there are no perfect working hacks to get APT-X working in AOSP ROM's.
-------------------------------------------------------------------------------------------------------------------------
EDIT: AFTER MORE TESTING, THE RESULTS SEEM TO BE FLAKEY.
DO NOT FLASH JUST YET (UNLESS YOU REALLY WANT TO). IT MAY REQUIRE RE-FLASHING YOUR ROM IF IT DOESN'T WORK.
-------------------------------------------------------------------------------------------------------------------------
Thanks to some helpful folks such as SPLESH & werty100 & glycolysis & others, we now have APT-X working in 4.4 AOSP ROM's for phones that originally shipped with the APT-X codec.
You'll find a list of those phones in the list further below.
To download a flashable zip that makes your phone use the APT-X high-def Bluetooth codec, then skip to post # 33below.
http://xdaforums.com/showpost.php?p=48188145&postcount=33
Thanks to:
MORAL SUPPORT:
th4r
fedevd
Topfar
withmenilu
cx5
Oli28
mojonba
stephendt0
DeKey0
wooki
CONTRIBUTORS:
farfrommovin
emprize
BenG7
CZ Eddie
DEVELOPMENTAL ADVICE:
WERTY100
glycolysis
dh.harald
DEVELOPMENTAL BREAKTHROUGH:
SPLESH
PREVIOUS/OLD THREAD DETAILS:
=============================================
What is APT-X?
It's Bluetooth for "Audiophiles".
Basically, it's the next step beyond A2DP and it delivers a "high definition", "CD" type sound. It's Bluetooth without all the compression that A2DP suffers from.
APT-X Lossless supports high-definition audio up to 96 kHz sampling rates and sample resolutions up to 24 bits.
Platforms
The aptX Lossless technology is implemented as C and C++ code and has been verified on
the following processors:
If I had to guess, normal A2DP Bluetooth might sound as good as a 96kbps music file. While APT-X Bluetooth sounds as good as a 320kpbs music file. Essentially, to the trained ears it is a HUGE difference in sound quality.
The problem is, it's not a widespread codec yet. AFAIK, only the HTC One, One X, and Samsung Galaxy lineup (S3 and newer) and proably some of the other superphones that are one year or newer, will have this Codec. It's a proprietary codec. So you're only "allowed" to have it on your phone if you bought a phone that came with it.
Because of this, it's not found in any AOSP ROM's. Just like you won't find any Google Apps in AOSP, you won't find APT-X codecs. So as with Google Apps, we just simply offer a flashable zip so the end user can add those items if he/she wishes.
So, the aim for this thread is to have the same option for APT-X codec. Because I for one am tired of running stock ROM's just because I want to use the APT-X codec that I paid for when I bought my phone.
I personally am putting up $100 to any developer who can provide a flashable zip, or similar method, of getting an AOSP ROM to use the APT-X codec.
If anyone else reading this thread wishes to add money to the pledge, just PM me or make a notation in this thread. I'll add your pledge to my own.
Pledgers so far:
So, why can't we just copy & paste the codec into our existing AOSP ROM? Well, you can do that. But you still need to tell the ROM to actually use the codec. As of now, there is nothing that points to the codec so it gets used.
Attached to this thread are the four files that I assume are necessary. These were pulled from my AT&T Galaxy S4 running 4.3 Google Play Edition ROM.
I've also attached a logcat from my ROM using this codec. And am pasting below the logcat of an S3 ROM that is using the codec.
So, please dev community. Help us figure out how to get the APT-X Bluetooth codec integrated into any ROM we choose to run on the phone we bought that came with APT-X.
Thanks!
APT-X codec files:
- libbt-aptx-4.0.3.so
- libbt-codec-aptx.so
Possibly related codecs?
- libbluetooth_jni.so
- libbt-codec.so
Galaxy S3 logcat:
And here is a list of currently supported smartphones:
aptX and aptX (and possibly other flavors) are all supported "right out of the box" in Android "O".
https://xdaforums.com/showpost.php?p=71533614&postcount=286
I revoke my personal bounty as it's now just a matter of time before AOSP ROM's show up for my device at least, which work with aptX.
-------------------------------------------------------------------------------------------------------------------------
EDIT: 2/18/17
It seems that most or all Lineage OS (LOS) 14.X based ROM's are working with aptX. Multiple people with various different Qualcomm cellphones are reporting aptX working after installing the .so files.
Is there any device out there it's NOT working for?
Bounty still available if you can figure out how to make it work in AOSP ROM's.
-------------------------------------------------------------------------------------------------------------------------
EDIT: 1/15/17
@dh.harold has aptX working on a few LineageOS 14.1 devices running Qualcomm Bluetooth stacks.
Please go to his thread and give him some thanks and to read about how to install the mod.
https://xdaforums.com/oneplus-3/themes/mod-aptx-codec-t3521228
-------------------------------------------------------------------------------------------------------------------------
EDIT: 8/17/15 This thread is going nowhere fast. As of todays date there are no perfect working hacks to get APT-X working in AOSP ROM's.
-------------------------------------------------------------------------------------------------------------------------
EDIT: AFTER MORE TESTING, THE RESULTS SEEM TO BE FLAKEY.
DO NOT FLASH JUST YET (UNLESS YOU REALLY WANT TO). IT MAY REQUIRE RE-FLASHING YOUR ROM IF IT DOESN'T WORK.
-------------------------------------------------------------------------------------------------------------------------
Thanks to some helpful folks such as SPLESH & werty100 & glycolysis & others, we now have APT-X working in 4.4 AOSP ROM's for phones that originally shipped with the APT-X codec.
You'll find a list of those phones in the list further below.
To download a flashable zip that makes your phone use the APT-X high-def Bluetooth codec, then skip to post # 33below.
http://xdaforums.com/showpost.php?p=48188145&postcount=33
Thanks to:
MORAL SUPPORT:
th4r
fedevd
Topfar
withmenilu
cx5
Oli28
mojonba
stephendt0
DeKey0
wooki
CONTRIBUTORS:
farfrommovin
emprize
BenG7
CZ Eddie
DEVELOPMENTAL ADVICE:
WERTY100
glycolysis
dh.harald
DEVELOPMENTAL BREAKTHROUGH:
SPLESH
PREVIOUS/OLD THREAD DETAILS:
=============================================
What is APT-X?
It's Bluetooth for "Audiophiles".
Basically, it's the next step beyond A2DP and it delivers a "high definition", "CD" type sound. It's Bluetooth without all the compression that A2DP suffers from.
APT-X Lossless supports high-definition audio up to 96 kHz sampling rates and sample resolutions up to 24 bits.
Platforms
The aptX Lossless technology is implemented as C and C++ code and has been verified on
the following processors:
- x86
ARM 9E
ARM Cortex M3
Texas Instruments C64xxother processor cores and DSPs to be verified and announced
- Key Features
- Compression ratio: 4:1
- Audio Format: 16-bit, 44.1kHz (CD-Quality)
- Data Rates: 352kbps
- Frequency Response: 10Hz to 22kHz
- Algorithmic Delay: <1.89ms @ Fs 48KHz
- Dynamic Range: 16-bit: >92dB
- THD+N: -68.8dB
If I had to guess, normal A2DP Bluetooth might sound as good as a 96kbps music file. While APT-X Bluetooth sounds as good as a 320kpbs music file. Essentially, to the trained ears it is a HUGE difference in sound quality.
The problem is, it's not a widespread codec yet. AFAIK, only the HTC One, One X, and Samsung Galaxy lineup (S3 and newer) and proably some of the other superphones that are one year or newer, will have this Codec. It's a proprietary codec. So you're only "allowed" to have it on your phone if you bought a phone that came with it.
Because of this, it's not found in any AOSP ROM's. Just like you won't find any Google Apps in AOSP, you won't find APT-X codecs. So as with Google Apps, we just simply offer a flashable zip so the end user can add those items if he/she wishes.
So, the aim for this thread is to have the same option for APT-X codec. Because I for one am tired of running stock ROM's just because I want to use the APT-X codec that I paid for when I bought my phone.
I personally am putting up $100 to any developer who can provide a flashable zip, or similar method, of getting an AOSP ROM to use the APT-X codec.
If anyone else reading this thread wishes to add money to the pledge, just PM me or make a notation in this thread. I'll add your pledge to my own.
Pledgers so far:
- CZ Eddie - $100 (I paid off on my last pledge of $50 for USB audio on Galaxy S3)
- farfrommovin - $20
- emprize - $20
- BenG7 - $30
- Bom Simmons - $55
- tr2ride - $50
- DanBUK - $100
- davidcie - $30
- Bill Gates - $50
So, why can't we just copy & paste the codec into our existing AOSP ROM? Well, you can do that. But you still need to tell the ROM to actually use the codec. As of now, there is nothing that points to the codec so it gets used.
Attached to this thread are the four files that I assume are necessary. These were pulled from my AT&T Galaxy S4 running 4.3 Google Play Edition ROM.
I've also attached a logcat from my ROM using this codec. And am pasting below the logcat of an S3 ROM that is using the codec.
So, please dev community. Help us figure out how to get the APT-X Bluetooth codec integrated into any ROM we choose to run on the phone we bought that came with APT-X.
Thanks!
APT-X codec files:
- libbt-aptx-4.0.3.so
- libbt-codec-aptx.so
Possibly related codecs?
- libbluetooth_jni.so
- libbt-codec.so
Galaxy S3 logcat:
V/18:43:16.142 BluetoothEventLoop.cpp( 3477)
event_filter: Received signal org.bluez.AudioSinkropertyChanged from
/org/bluez/10835/hci0/dev_00_16_94_0C_7D_95
V/18:43:16.142 BluetoothEventLoop.cpp( 3477)
event_filter: Received signal org.bluez.AudioSinkropertyChanged from
/org/bluez/10835/hci0/dev_00_16_94_0C_7D_95
V/18:43:16.142 BluetoothA2dpService.cpp( 3477)
... ignored
V/18:43:16.142 BluetoothEventLoop.cpp( 3477)
event_filter: Received signal org.bluez.AudioSinklaying from
/org/bluez/10835/hci0/dev_00_16_94_0C_7D_95
D/18:43:16.142 A2DP ( 2084)
Received BT_RESPONSE - BT_NEW_STREAM
D/18:43:16.142 A2DP ( 2084)
Received BT_RESPONSE - BT_START_STREAM
D/18:43:16.077 A2DP ( 2084)
bluetooth_start
D/18:43:16.077 A2DP ( 2084)
end of bluetooth_a2dp_aptx_hw_btaptx_params()
D/18:43:16.077 A2DP ( 2084)
bluetooth_a2dp_aptx_hw_params called bluetooth_a2dp_aptx_setup(data)
D/18:43:16.077 A2DP ( 2084)
MTU: 895
D/18:43:16.077 A2DP ( 2084)
bluetooth_a2dp_aptx_hw_params called audioservice_expect()
D/18:43:16.077 A2DP ( 2084)
Received BT_RESPONSE - BT_SET_CONFIGURATION
D/18:43:16.077 A2DP ( 2084)
bluetooth_a2dp_aptx_hw_params called audioservice_send() from
D/18:43:16.077 A2DP ( 2084)
frequency: 44100
D/18:43:16.077 A2DP ( 2084)
channel_mode: STEREO
D/18:43:16.077 A2DP ( 2084)
bluetooth_a2dp_aptx_hw_params sending configuration:
D/18:43:16.077 A2DP ( 2084)
Received BT_RESPONSE - BT_OPEN
D/18:43:16.077 A2DP ( 2084)
We are in bluetooth_a2dp_aptx_hw_params()
D/18:43:16.077 A2DP ( 2084)
aptx frequency = 3
D/18:43:16.077 A2DP ( 2084)
aptx channel mode = 15
D/18:43:16.077 A2DP ( 2084)
aptx Vendor ID3 = 0
D/18:43:16.077 A2DP ( 2084)
aptx Vendor ID2 = 0
D/18:43:16.077 A2DP ( 2084)
aptx Vendor ID1 = 0
D/18:43:16.077 A2DP ( 2084)
aptx Vendor ID0 = 4f
D/18:43:16.077 A2DP ( 2084)
aptx codec ID1 = 0
D/18:43:16.077 A2DP ( 2084)
aptx codec ID0 = 1
D/18:43:16.077 A2DP ( 2084)
paptxcodec->length=14
D/18:43:16.077 A2DP ( 2084)
~~~~~~~~~~~~~ codec type set to aptx
E/18:43:16.077 A2DP ( 2084)
bluetooth_parse_capabilities() invalid codec capabilities length
D/18:43:16.077 A2DP ( 2084)
bluetooth_parse_capabilities:: detect APTX
D/18:43:16.077 A2DP ( 2084)
Received BT_RESPONSE - BT_GET_CAPABILITIES
And here is a list of currently supported smartphones:
- Apple iPhone iOS 7
Fujitsu ARROWS NX F-06E
Fujitsu ARROWS X F-10D
Fujitsu REGZA-T02D
HTC Butterfly
HTC Butterfly S
HTC Desire 300
HTC Desire 500
HTC Desire 600 dual sim
HTC Desire 601
HTC Desire SV
HTC Desire U
HTC Desire X
HTC Droid DNA
HTC J
HTC One
HTC One S
HTC One SV
HTC One V
HTC One X
HTC One X Plus (X+)
HTC One XL
HTC One XT
HTC One Max
HTC One Mini
HTC One M8
LG G3
Motorola DROID RAZR HD
Motorola DROID RAZR M
Motorola DROID RAZR MAXX HD
Motorola RAZR
Motorola RAZR MAXX
Nokia none
Panasonic Eluga P-03 Smartphone
Samsung Galaxy Mega
Samsung Galaxy Note II
Samsung Galaxy S III (S3)
Samsung Galaxy S III (S3) Mini
Samsung Galaxy S IV (S4)
Samsung Galaxy S IV (S4) Active
Samsung Galaxy S IV (S4) Mini
Samsung Galaxy Note III
Samsung Galaxy S5
Sharp 102SH
Sharp 102SHII
Sharp 106SH
Sharp 107SH
Sharp 203SH
Sharp IS15SH
Sharp IS17SH
Sharp ISW16SH
Sharp Pantone 200SH
Sharp SH01D
Sharp SH-05E
Sharp SH07D
Sharp SH09D
Sharp SHL21
Sharp SHL22
Sony Xperia Z Ultra
Vertu Constellation
Attachments
Last edited: