Related
So far I have not seen any Nougat ROMs including the library meant for aptX support. I tried to manually place the library (libbt-aptx-x86-4.x.x.so, like the one from ARISE), but it doesn't work as my aptX-capable headset is still choosing SBC, implying the actual support of such is more than just a library. As SBC introduces a ~500ms latency, for my use cases (including but not limited to videos and rhythm games) it's completely unacceptable.
On the other hand, is aptX working with stock MM based ROMs? Apparently the device is in the official supported devices list, so I assume that might be the case. But anyway, is it possible to include aptX on recent Nougat ROMs?
Installing ARISE appears to be a no-go for this device as while it includes aptX-related libraries, it doesn't magically enable aptX and instead breaks all sensors.
EDIT: It seems most ROMs still use Bluedroid, and for that it seems the x86 aptX libs alone won't be enough. I did confirm that my headset (EP725) does support aptX on my Pixel C (currently running Oreo, though the aptX Magisk module for Oreo is required for it to actually work).
EDIT 2: A late update... apparently, the latency is not that much different with aptX, and it turned out to be more a problem with Unity than with the bluetooth codec itself after searching for a bit further... so I was wrong about aptX anyway...
Bump on this thread.
I found the libs here which seems to have been taken from stock MM ROM. But obviously just replacing libbluetooth_jni.so from TWRP with that one would only lead to crashes as there's probably some additional work needed (maybe recompile the Bluetooth apk)...
Unfortunately most of that thread is about how to get it working on ARM based smartphones and/or on Oreo (which our phone doesn't have yet, and most likely the Magisk modules and such are as well ARM-only). The post I referenced is the only one that's at least helpful to some extent, after some basic searching.
EDIT: If all isn't going to work then I have no choice but to look for ways to downsample system audio output to 8-11kHz (or maybe 8-bit) to mitigate the latency... since the usage involved is already lossy with low bitrate, I don't think downsampling would cause any unacceptable loss of quality anyway.
EDIT 2: The libs alone definitely aren't enough. Tried replacing the libs in both /system/lib/ and /system/app/Bluetooth/lib/x86/ and it still crashed when opening.
I've researched on the web for quite some time on this topic but didn't find anything definitive yet (a clear answer if it works - how to set up, etc.):
some are mentioning that only the right app would be needed to be used (well, no)
a few are mentioning that there is supposed to be an app that toggles between default dac (wcd934x) and quad dac (es9218p)
others are referring to a setting in build.prop (nope, the ROM doesn't have the mechanisms to react to that - and neither do the drivers most likely - or at least we need to make sure that this stuff is included for us)
then there are a few mentioned cases that there's support on lineageOS on board to utilize the es9218*
there's also occurences where it's mentioned that the sound stops working entirely when switching tracks (?!) - so it's still WIP
so at least the kernel needs to be set up that way - but there's probably more to it
*referencing:
https://forum.xda-developers.com/v20/development/dev-cm14-t3509953/page25 [ROM][ALL VARIANTS] LineageOS-14.1 for LG V20 [Weeklys']
https://forum.xda-developers.com/v20/development/kernel-gamma-kernel-us996-ls997-h910-t3788279/page2 [KERNEL][AOSP][AnyKernel][LOS-15.1+EAS] Gamma Kernel for [All Lineage Variants
https://forum.xda-developers.com/v2...fficial-lineageos-15-1-lg-v20-t3775689/page19 [ROM][H910|H918|LS997|US996|VS995|H990*] UNOFFICIAL LineageOS-15.1 for LG V20
https://pastebin.com/uQgyHm3b
further references:
https://forum.xda-developers.com/lg-v30/how-to/v30-quad-dac-root-bybass-fix-t3725854 V30 Quad DAC Root Bybass fix
edit:
For those who only use the quad dac for local playback (music stored on their device; NO Youtube, Streaming, etc. with Quad DAC on LineageOS/AEX/RR for now) - there is an app (for purchase) that activates & uses the quad dac (es9218p)
I've tested it and got the same specific quirk / behavior I got on LG Stock ROM with activated quad dac option.
The app is not cheap (6.99 EUR, >8 USD) - but it's totally worth it, the UI is great, the sound output is awesome (finally quad dac on non-stock !) and it uses a "custom developed USB audio driver"
extreamsd said:
This bypasses the Android audio system completely, meaning that Android's limitations regarding bit resolution and sample rate (16-bit/48kHz) are made irrelevant and high quality audio streams are fed directly to the DAC, making playback up to 32-bit at 384kHz possible (depending on the DAC capabilities) or even DSD.
Click to expand...
Click to collapse
Source: http://www.extreamsd.com/index.php/products/usb-audio-player-pro
GooglePlay link: https://play.google.com/store/apps/details?id=com.extreamsd.usbaudioplayerpro
zacharias.maladroit said:
Well, it's not fully "solved" - since only locally played content (no videos ! no streaming !),
but at least local content is played through the quad dac (es9218p).
So thank you very much for that hint (and everyone else who kept on mentioning it)
And: YES, the quad dac definitely is being used with USB Audio Player PRO
First I thought that the more punchy sound output could be placebo/imagination (with Xiaomi Piston V2 & the B & O Play Headphones),
but then I plugged in the Xiami Hybrid Pro (these are the only headphones that don't work with the quad dac for me - since they cause a extreme loud hissing/static on the left channel),
and after a few seconds I got the characteristic hissing on the left channel - that means that the es9218p DAC/sound card/AMP is definitely being used
That's the same behavior I got on LG Stock ROM after enabling the quad dac
Click to expand...
Click to collapse
https://forum.xda-developers.com/showpost.php?p=77233521&postcount=209
In theory we would just need to write a HAL or something like that, which interacts with the kernel driver, its already there, just something needs to talk to it.
And some Overlay in the Settings to enable/disable the HAL.
The HAL would be C/++ while the Settings overlay would then be Java .... I could do the later.
SGCMarkus said:
In theory we would just need to write a HAL or something like that, which interacts with the kernel driver, its already there, just something needs to talk to it.
And some Overlay in the Settings to enable/disable the HAL.
The HAL would be C/++ while the Settings overlay would then be Java .... I could do the later.
Click to expand...
Click to collapse
I don't really have the programming skills to do either, but I'll buy you guys a beer if you figure it out. That and the vibration motor issues are the only reason I'm still on a stock ROM.
MaxusValtron said:
I don't really have the programming skills to do either, but I'll buy you guys a beer if you figure it out. That and the vibration motor issues are the only reason I'm still on a stock ROM.
Click to expand...
Click to collapse
Vibration motor issues may be solved. Dev is currently trying user @Krakophyst suggestion to replace vibration motor files with those from V35. Now why that would work better than actual V30 files, don't know. But it worked for the user.
Krakophyst said:
The vibration problem came up, but I think I fixed it by replacing vibration related files in /vendor and its subfolders with LG V35's files and it has been working fine for about three days now.
Click to expand...
Click to collapse
ChazzMatt said:
Vibration motor issues may be solved. Dev is currently trying user suggestion to replace vibration motor files with those from V35. Now why that would work better than actual V30 files, don't know. But it worked for the user.
Click to expand...
Click to collapse
It works, because the V35 files have to work on AOSP (because of treble implementation on the V35), while ours depend heavily on the LG framework (which probably does its own stuff to the vibration services), and arent supposed to ever run on AOSP.
SGCMarkus said:
It works, because the V35 files have to work on AOSP (because of treble implementation on the V35), while ours depend heavily on the LG framework (which probably does its own stuff to the vibration services), and arent supposed to ever run on AOSP.
Click to expand...
Click to collapse
Aha. Then score one for Treble on an LG phone that has some similar features to ours. V35 may never get bootloader unlock and root, but we can cannibalize it for the V30.
SGCMarkus said:
It works, because the V35 files have to work on AOSP (because of treble implementation on the V35), while ours depend heavily on the LG framework (which probably does its own stuff to the vibration services), and arent supposed to ever run on AOSP.
Click to expand...
Click to collapse
Wait!?!? So could volte possibly work with the v35 files???
suzook said:
Wait!?!? So could volte possibly work with the v35 files???
Click to expand...
Click to collapse
IF (a big if) volte works on GSIs (which nobody tried so far from what i know, i only know 1 person with a G7, and he cant use VoLTE, thanks to the carrier), those files are highly device specific (or atleast SoC specific), its very unlikely that those would work for us.
I could try, but dont get your hopes up on that.
SGCMarkus said:
IF (a big if) volte works on GSIs (which nobody tried so far from what i know, i only know 1 person with a G7, and he cant use VoLTE, thanks to the carrier), those files are highly device specific (or atleast SoC specific), its very unlikely that those would work for us.
I could try, but dont get your hopes up on that.
Click to expand...
Click to collapse
One can dream though! Lol. Of you need me to test, let me know. Thanks!
Added: USB Audio Player PRO to the first post
and practical proof/experience that it utilizes the quad dac on non-Stock ROMs (AEX, AOSP Extended as example)
PlayStore Link:
https://play.google.com/store/apps/details?id=com.extreamsd.usbaudioplayerpro
zacharias.maladroit said:
Added: USB Audio Player PRO to the first post
and practical proof/experience that it utilizes the quad dac on non-Stock ROMs (AEX, AOSP Extended as example)
PlayStore Link:
https://play.google.com/store/apps/details?id=com.extreamsd.usbaudioplayerpro
Click to expand...
Click to collapse
I grabbed the app, it had some Network options (notably for Tidal and Google Play Music) I would assume using those options from within the app would use the DAC? Can't test personally as I'm currently using Spotify but would happily switch if I could use the DAC on a streaming service, assuming at least ~80% songs I have on Spotify are available there.
zomgalama said:
I grabbed the app, it had some Network options (notably for Tidal and Google Play Music) I would assume using those options from within the app would use the DAC? Can't test personally as I'm currently using Spotify but would happily switch if I could use the DAC on a streaming service, assuming at least ~80% songs I have on Spotify are available there.
Click to expand...
Click to collapse
Could very well be that it provides or uses hooks to interact with those and I guess it should work (if it works, if it doesn't you can nag the devs to fix it - it's a somewhat "premium" priced app after all, and support is to be expected )
I'm not using any streaming services, sorry - so can't test.
Pretty sure there must be users of Spotify here around so maybe those can give some feedback
Edit: mistyped
Anyways I started a Tidal subscription (hifi student plan). From listening to a couple songs things definitely seem clearer but can't say for sure if it's using the DAC or placebo/better quality audio is the cause.
zacharias.maladroit said:
Could very well be that it provides or uses hooks to interact with those and I guess it should work (if it works, if it doesn't you can nag the devs to fix it - it's a somewhat "premium" priced app after all, and support is to be expected )
I'm not using any streaming services, sorry - so can't test.
Pretty sure there must be users of Spotify here around so maybe those can give some feedback
Click to expand...
Click to collapse
I probably will be switching off Spotify in favor of this; only because the student plan for it exists and I do hear an audible difference with their hifi settings ($19.99/month for hifi plan without a student discount yeeesh).
even using this app on non stock rom can we still get the same high volume output from the stock rom with HIM sound mod?
Sent from my LG-H930 using Tapatalk
chalmizzle said:
Anyone tried the Onkyo HF Player app?
Click to expand...
Click to collapse
just tried it with the Xiaomi Pro HD Hybrid and I get the characteristic strong hissing noise in one of the channels (left channel) - that's the only headphones I get that weird thing with when the quad dac is activated (on stock ROM).
This confirms that the es9218p ("quad dac") also works with Onkyo HF Player on non-Stock :good:
So obviously these applications HF player and USB audio pro player have some line of code that is triggering the quad DAC to be utilized. Correct?
u4icpain said:
So obviously these applications HF player and USB audio pro player have some line of code that is triggering the quad DAC to be utilized. Correct?
Click to expand...
Click to collapse
And one also works with streaming media.
zacharias.maladroit said:
Added: USB Audio Player PRO to the first post
and practical proof/experience that it utilizes the quad dac on non-Stock ROMs (AEX, AOSP Extended as example)
PlayStore Link:
https://play.google.com/store/apps/details?id=com.extreamsd.usbaudioplayerpro
Click to expand...
Click to collapse
Would you still need to use higher ohm headphones to enable the quad DAC , or will this (USB Player Pro) allow any headphones to work with it?
I've got 4 sets of IEMs that I love, and would hate to have to start all over again buying new ones.
christoophat said:
Would you still need to use higher ohm headphones to enable the quad DAC , or will this (USB Player Pro) allow any headphones to work with it?
I've got 4 sets of IEMs that I love, and would hate to have to start all over again buying new ones.
Click to expand...
Click to collapse
Nope, I'm using the quad/dedicated DAC with "normal", low ohm/impedance headphones myself,
the only "difference" is that there isn't much noticeable difference compared to the default (qualcomm) audio DAC
So you'll be fine,
you can choose to get yourself higher ohm headphones in the future (after careful evaluation, of course) take your time to choose the ones that best fit your hearing preferences (sound response, etc.)
Any updates on getting the dac to work with non stock roms?
Hello people,
i'll be getting an OP5T soon and even though OxygenOS has a favorable reputation i'll certainly end up flashing a custom ROM anyway. however, there's a nagging question, as hinted at in the title, that doesn't seem to have been addressed anywhere, or at least i couldn't find anything searching the forums and it's never mentioned in respective ROM threads. the OP5T running stock Oreo OOS supports both aptX HD and LDAC, if i'm not mistaken, but do custom ROMs generally support those codecs as well?
my current phone is a Z1 Compact running one of the last official CM nightlies released back then and those didn't support aptX, which the stock ROM did, afaik. i don't really have experience in Android customization but from what i've read in various threads, just unlocking the bootloader can inevitably trash various things like DRM keys and camera functionality. the advanced BT audio codecs are important to me, so i need to know what i can and can't do in order to preserve them.
any input on this?
I think any Android 8 based rom support these codecs
I have a Xperia z3c with carbon rom (Android 8.1) and it support these codecs
SUPER KOKA said:
I think any Android 8 based rom support these codecs
I have a Xperia z3c with carbon rom (Android 8.1) and it support these codecs
Click to expand...
Click to collapse
first things first, thanks for the input.
that does sound promising. i mean, if the codecs didn't work on a custom ROM no matter what, because BL unlocking erases/invalidates the libs or something, surely the dev would've removed them from the selection.
i've read about the matter with Oreo, its native support for all BT audio codecs (whatever that actually means) and Sony's LDAC donation to AOSP. though apparently there was some confusion, as all codecs appeared in the settings selection even though they didn't actually work due to lacking libraries. and while LDAC is part of AOSP and technically free to use by any OEM, it still requires a device certification from Sony.
so... there seems to be a difference between "supported" and "functional". you don't happen to have a pair of compatible BT headphones at hand for testing, do you? your Z3C should at least give you regular aptX, as that's what it shipped with, and perhaps LDAC
Valfaun said:
first things first, thanks for the input.
that does sound promising. i mean, if the codecs didn't work on a custom ROM no matter what, because BL unlocking erases/invalidates the libs or something, surely the dev would've removed them from the selection.
i've read about the matter with Oreo, its native support for all BT audio codecs (whatever that actually means) and Sony's LDAC donation to AOSP. though apparently there was some confusion, as all codecs appeared in the settings selection even though they didn't actually work due to lacking libraries. and while LDAC is part of AOSP and technically free to use by any OEM, it still requires a device certification from Sony.
so... there seems to be a difference between "supported" and "functional". you don't happen to have a pair of compatible BT headphones at hand for testing, do you? your Z3C should at least give you regular aptX, as that's what it shipped with, and perhaps LDAC
Click to expand...
Click to collapse
My z3c's stock rom doesn't support ldac but with a custom rom ldac is functional
SUPER KOKA said:
My z3c's stock rom doesn't support ldac but with a custom rom ldac is functional
Click to expand...
Click to collapse
thanks for the screenshot, that was a nice confidence booster. i went ahead and flashed Zoe ROM, can confirm that both aptX HD and LDAC still work. so unlocking the bootloader doesn't touch the libraries, which i guess are located in a partition that you don't usually wipe, and every ROM based on 8.0 or later should support the codec selection
my car audio player is supporting of android phone and sound quality much better than aux, but Any custom ROMs I have installed so far do not support AOA2 PROTOCOL. It's so difficult to do, does it not matter for developers?
can anyone suggest any aosp/lineage based rom that didnt have bluetooh delay , i had tried crdroid , but it had huge delay on bluetooth earbuds especially when playing gamed , unlike miui based that only had tiny unnoticable delay.
lawong said:
can anyone suggest any aosp/lineage based rom that didnt have bluetooh delay , i had tried crdroid , but it had huge delay on bluetooth earbuds especially when playing gamed , unlike miui based that only had tiny unnoticable delay.
Click to expand...
Click to collapse
The delay/latency is entirely depended on what BT Audio Codec is supported by both the phone and the BT Audio device (unless there's something wrong with the ROM).
"AptX" is recommended. Your BT Audio device may have its own app and a setting called something like "Gaming Mode", which would reduce latency.
Behind the Gaming Mode would basically be "AptX Low Latency" or AptX LL.
If you don't have such settings in your earbuds' corresponding app, and nothing is Bluetooth Settings, you can try and check the Developer Options and try and force a Codec..
AOSP ROMs can have random bugs, so the big delay may be just from that ROM. ^^
dreamytom said:
The delay/latency is entirely depended on what BT Audio Codec is supported by both the phone and the BT Audio device (unless there's something wrong with the ROM).
"AptX" is recommended. Your BT Audio device may have its own app and a setting called something like "Gaming Mode", which would reduce latency.
Behind the Gaming Mode would basically be "AptX Low Latency" or AptX LL.
If you don't have such settings in your earbuds' corresponding app, and nothing is Bluetooth Settings, you can try and check the Developer Options and try and force a Codec..
AOSP ROMs can have random bugs, so the big delay may be just from that ROM. ^^
Click to expand...
Click to collapse
my earbuds had that gaming mode option , but the problem is when using aosp based it still had huge amount of delay.
had tried switching different codec from developer option but nothing works. i dont know if any other aosp based rom had that delay or not because i had only tried crdroid and one more aosp based which i forgot which one LoL!
lawong said:
my earbuds had that gaming mode option , but the problem is when using aosp based it still had huge amount of delay.
had tried switching different codec from developer option but nothing works. i dont know if any other aosp based rom had that delay or not because i had only tried crdroid and one more aosp based which i forgot which one LoL!
Click to expand...
Click to collapse
Hm. In that case I'd do a backup and try an older version of crDroid or a different AOSP..,..,,,.,,..,,,,,,.,,..,,
dreamytom said:
Hm. In that case I'd do a backup and try an older version of crDroid or a different AOSP..,..,,,.,,..,,,,,,.,,..,,
Click to expand...
Click to collapse
older are just as same as the new one ahha , i guess all aosp based are like that?
lawong said:
can anyone suggest any aosp/lineage based rom that didnt have bluetooh delay , i had tried crdroid , but it had huge delay on bluetooth earbuds especially when playing gamed , unlike miui based that only had tiny unnoticable delay.
Click to expand...
Click to collapse
I don't know if it is an aosp based rom but i am currently testing this https://forum.xda-developers.com/t/...elos-aosp-alioth-aliothin-09-05-2022.4392649/. Bluetooth audio lag is very low even lower than miui based roms.