EDIT: Tried a couple, none work - results in bluetooth instability and crashing.
I'd like to try a different bluetooth library. Essential has broken this one for well over a year and ignores my support/findings. SBC bluetooth is not routing audio correctly under certain circumstances.
I'd like to try an AOSP-based ROM's libbluetooth.so file to see if it's any different, but preferrably LineageOS 17's version. And for the hell of it, I'd like to see if a Pixel 2 or 3's will break the phone - I'm asking for Pixel because this phone closely resembles a Pixel 2, and Google can't replicate my findings per their official issue tracker. But it may break the phone since it's not built for the Essential.
File MUST come from an Android 10 ROM, but again, nothing built based on the Essential stock ROM.
-----------------------
Background
At least since Android 8, bluetooth audio using the SBC bluetooth codec won't properly route audio. Essential won't take this issue seriously, from my experience. This is dangerous as it affects being hands-free when I drive.
Steps to replicate:
1. Connect to Bluetooth device that defaults to SBC bluetooth. You can check what Bluetooth codec is being used in the developer settings -- it'll list the Bluetooth codec rather than saying "use default" or something similar. You can change the codec here, too, as long as the device supports other codecs.
2. Open Google Maps and enter any location, then start navigation
Results: No audio
3. Pause, stop, exit, etc. Navigation. Now Initiate Google Assistant -- say a command.
Results: No audio
4. Receive a text message
5. Ask Google Assistant to read your message(s)
Result: No audio
Now repeat the tests while playing music:
#2 Results: Navigation works as it should, presumably being routed over Media since music is using the Media audio channel.
Sadly, Google Assistant steps cause music to be paused, resulting in still no audio.
I have repeated these tests using every selectable audio codec for Bluetooth in the developer settings and EVERYTHING works as it should using any other codec. Once SBC is selected, the problem above exists.
Since Google can't replicate this problem, my assumption is Pixel devices don't exhibit this problem... or Google failed to test specifically using the SBC codec. Essential is ignoring this problem, so I'm stuck. Essential builds based on AOSP, I assume, so I'm skeptical an AOSP lib file will make a difference, but I can hope. It's unclear how much Essential modifies in the code. However, LineageOS has made significant changes to bluetooth, particularly enhancing SBC bluetooth for dual channel audio, increasing the bitrate significantly. So not only might this resolve the problem, but it would also improve audio quality.
EDIT: Tried a couple, none work - results in bluetooth instability and crashing.
gk1984 said:
I'd like to try a different bluetooth library. Essential has broken this one for well over a year and ignores my support/findings. SBC bluetooth is not routing audio correctly under certain circumstances.
I'd like to try an AOSP-based ROM's libbluetooth.so file to see if it's any different, but preferrably LineageOS 17's version. And for the hell of it, I'd like to see if a Pixel 2 or 3's will break the phone - I'm asking for Pixel because this phone closely resembles a Pixel 2, and Google can't replicate my findings per their official issue tracker. But it may break the phone since it's not built for the Essential.
File MUST come from an Android 10 ROM, but again, nothing built based on the Essential stock ROM.
-----------------------
Background
At least since Android 8, bluetooth audio using the SBC bluetooth codec won't properly route audio. Essential won't take this issue seriously, from my experience. This is dangerous as it affects being hands-free when I drive.
Steps to replicate:
1. Connect to Bluetooth device that defaults to SBC bluetooth. You can check what Bluetooth codec is being used in the developer settings -- it'll list the Bluetooth codec rather than saying "use default" or something similar. You can change the codec here, too, as long as the device supports other codecs.
2. Open Google Maps and enter any location, then start navigation
Results: No audio
3. Pause, stop, exit, etc. Navigation. Now Initiate Google Assistant -- say a command.
Results: No audio
4. Receive a text message
5. Ask Google Assistant to read your message(s)
Result: No audio
Now repeat the tests while playing music:
#2 Results: Navigation works as it should, presumably being routed over Media since music is using the Media audio channel.
Sadly, Google Assistant steps cause music to be paused, resulting in still no audio.
I have repeated these tests using every selectable audio codec for Bluetooth in the developer settings and EVERYTHING works as it should using any other codec. Once SBC is selected, the problem above exists.
Since Google can't replicate this problem, my assumption is Pixel devices don't exhibit this problem... or Google failed to test specifically using the SBC codec. Essential is ignoring this problem, so I'm stuck. Essential builds based on AOSP, I assume, so I'm skeptical an AOSP lib file will make a difference, but I can hope. It's unclear how much Essential modifies in the code. However, LineageOS has made significant changes to bluetooth, particularly enhancing SBC bluetooth for dual channel audio, increasing the bitrate significantly. So not only might this resolve the problem, but it would also improve audio quality.
Click to expand...
Click to collapse
First...
I use all of the features you describe as being an issue... Without issue... Are you using Viper?
Second...
Pixel2 is the one that would most likely work the best... If you grab the factory image... There is a tool... Probably in the forum somewhere... That'll let you break the image...
Third...
I wouldn't gamble on this working... Based on what I've seen with the Custom ROM scene... Bluetooth on this device is just funky
EDIT:
What Bluetooth version is your car audio doodad?
rignfool said:
First...
I use all of the features you describe as being an issue... Without issue... Are you using Viper?
Second...
Pixel2 is the one that would most likely work the best... If you grab the factory image... There is a tool... Probably in the forum somewhere... That'll let you break the image...
Third...
I wouldn't gamble on this working... Based on what I've seen with the Custom ROM scene... Bluetooth on this device is just funky
EDIT:
What Bluetooth version is your car audio doodad?
Click to expand...
Click to collapse
Have you confirmed everything works with the SBC bluetooth codec? Not all cars/audio devices use the same codec. Everything works just fine on the other supported codecs on this phone. It's JUST the SBC codec that's problematic. I've replicated it with my car, a knock-off Chinese bluetooth speaker that only supports SBC audio, and Marshall Major bluetooth headphones by forcing the SBC codec. I've tried both with a factory reset and zero modifications as well as with Viper4Android and JamesDSP. Even fully stock, the problem exists.
Many people comment that there is no problem, but none confirm the codec they're using.
Related
Hello guys,
I'm facing a problem and I simply can't seem to find any info on the web on how to go about fixing it...
There is a sound quality issue when I connect my Huawei P8 Lite to my Alpine UTE-72BT Head Unit. Aside from the fact that it keeps disconnecting at random, it sounds as though the bitrate isn't high enough on transfer, thus producing sort of a "crackling" effect on the highs (something similar to clipping). I've also read that some other users have experienced issues with bass being much louder, although I can't say for sure that this is the same case.
It's regardless of the music source, be it internal storage, with 320 kbps mp3s (converted from FLACs) or Spotify on extreme quality (both from downloaded and from streaming on LTE). I haven't faced the same issue with a Microsoft Lumia 640, for example, and neither with music played from USB, so the issue is isolated to the P8. The issue seems to "fade away", so to speak, if connected to the phone via AUX cable (Cordial cable, high quality, as well). The fact of the matter is that: 1. Music played over AUX tends to be more dull, as if though it applies a wide band pass filter and 2. AUX lacks the ability to control phone media via the headunit, which makes the point of having a bluetooth player absolutely pointless.
So far, I've tried the following:
- deactivate wireless - as I've heard speculations of bluetooth and wireless being combined into a single chip;
- use EQing apps, such as Dolby Atmos (actually, this was the moment I noticed the crackling, on account of the fact that highs can be controlled much better with Dolby's app);
- Update firmware on HU (more like a refress, to be honest. I was already running the latest bluetooth firmware);
- Updated to Marshmallow (B550);
I'm guessing that there is some issue with the codecs used to transmit data to the player, although I wouldn't know how to go about modyfing them, as the only resource I've found, up to now, is related to a Samsung S2. Counting on the fact that there might be some OS modifications (in what regards coding standards and such), I consider that the resource would not be very helpful.
If there's anyone out there willing to help me find a solution, I would very much appreciated, and, also, if there is any info that I have omitted, please don't hesitate to ask. Thank you!
Hey all,
Ever since opting into the Android O beta, my Nexus 6p has been working fine, except for connected to my car via BT. It connects, but just shows 'Unknown Artist' for any kind of track info, and if I switch playback apps (for instance, from Pocketcasts to Google Play Music), my phone disconnects from the car for a second or two, connects again, and still doesn't work. The car in question is a 2016 Mini Cooper S. Anyone else seeing issues like this? Works fine on 7.1.2.
ive got the same issue vw polo. audio plays via bluetooth but no artist info it just shows im connected to 6P and skip track controls dont work just mute and volume
Yeah, I don't even get audio. Nothing actually plays, car displays "unknown artist".
I have this as well on a 2017 toyota, calls etc work fine, just music dips out
sickfallout said:
Hey all,
Ever since opting into the Android O beta, my Nexus 6p has been working fine, except for connected to my car via BT. It connects, but just shows 'Unknown Artist' for any kind of track info, and if I switch playback apps (for instance, from Pocketcasts to Google Play Music), my phone disconnects from the car for a second or two, connects again, and still doesn't work. The car in question is a 2016 Mini Cooper S. Anyone else seeing issues like this? Works fine on 7.1.2.
Click to expand...
Click to collapse
what are the bluetooth settings in the developer setting section?
mine are as follows if you want to try them to see if it gives you some audio
Bluetooth AVCRP Version
AVCRP 1.6
Bluetooth Audio Codec
Streaming: SBC
Bluetooth Audio Sample Rate
Streaming: 44.1kHz
Bluetooth Audio Bits Per Sample
Streaming: 16 Bits/Sample
Bluetooth Audio Channel Mode
Streaming: Stereo
Bluetooth Audio LDAC Codec: Playback Quality
Streaming: Optimised for Audio Quality
MkBy said:
what are the bluetooth settings in the developer setting section?
mine are as follows if you want to try them to see if it gives you some audio
Bluetooth AVCRP Version
AVCRP 1.6
Bluetooth Audio Codec
Streaming: SBC
Bluetooth Audio Sample Rate
Streaming: 44.1kHz
Bluetooth Audio Bits Per Sample
Streaming: 16 Bits/Sample
Bluetooth Audio Channel Mode
Streaming: Stereo
Bluetooth Audio LDAC Codec: Playback Quality
Streaming: Optimised for Audio Quality
Click to expand...
Click to collapse
Thanks for the setting tips, I'll try them out tomorrow and report back.
No luck, same issue persists. I even tried usb-c to usb-a, but my Mini doesn't recognize it as an audio device that way Time to get a new head unit possibly.
No luck, still 'unknown artist' and no audio, even though my phone thinks it's connected and playing.
sickfallout said:
No luck, still 'unknown artist' and no audio, even though my phone thinks it's connected and playing.
Click to expand...
Click to collapse
Do you have this issue on 7.1.2 as well? Don't forget Android O is still in "beta" and I wouldn't be surprised if the BT is a little screwy still.
Triscuit said:
Do you have this issue on 7.1.2 as well? Don't forget Android O is still in "beta" and I wouldn't be surprised if the BT is a little screwy still.
Click to expand...
Click to collapse
Everything works fine on 7.1.2, I had to decide what was more important: working car audio or a much faster OS experience. Hopefully this is something that's either fixed in the release of O, or something my car manufacturer can patch into their system.
Not sure if this will help but my car seems to have pretty good luck with this technique and BMW/Mini ICE systems are similar. I use the aac codec keeping everything else default. I've had the issue a well where it's playing on my phone but not the car; the info also doesn't show. Restarting the phone right before starting the car or soon after seems to be relatively effective as it would then connect after the restarts and actually play the music correctly and show the info.
Not the best solution but hopefully this ends after the final is released.
Hi! I hope this helps. It seem like changing the setting (unchecking) for AAC audio helps with the issue. This seems to be a new feature in Oreo, so go to Bluetooth settings and in the little gear next to device it will popup with a couple of options, uncheck AAC.
I recently switched headphones from MDR-XB950BT's to MDR-XB950N1's. I started noticing an intermittent, half-second drop in audio, like what you would hear if you were starting to go out of range of the phone. Both models are almost identical, except for some extra controls and noise cancelling being added to the N1's. With the extra settings disabled, the dropping continues. I didn't realize it before I switched, but they both support the AptX codec (as well as AAC). There is a power-on option for both to start up forcing the 'better' codecs and another to force SBC. Forcing AptX changed nothing, but forcing SBC eliminated the drops. I tried using a Galaxy S8+ (unmodded) and an iPhone 7 and they didn't seem to have the issue. I exchanged the headphones just in case. The replacement set does the same thing.
So, I started changing settings in /etc/bluetooth/bt_stack.conf, turning off everything optional and changing the codec preference order. I found that anything other than SBC causes these audio drops. Checking logcat, I don't see any messages reporting issues with the audio stream. I disabled Viper4Android, which I had read has no ill-effects on AptX anyway, and the issue persists. I switched from roms from WETA to Mega, to even Notsostock, got drops on all of them. I also tried different media players.
I'm stuck. I can't figure out why the old set doesn't have an issue using AptX and I can't seem to get this phone to work properly with the new set. One of the hype points for this phone was AptX HD, which I read is backward compatible, but I can't seem to use it without hearing annoying pauses in audio. Anyone have any ideas on what I could do to fix AptX?
Phone config:
H910 running MegaROM 4.0
I have the Sony WH1000x BT headphones that support Aptx HD. I have no issues. When Aptx HD is in use i get a notification. I use the Onkyo Hi Res music player or the standard LG player. I use the standard ROM.
Hi folks, wondering if anyone has dealt with this issue before.
I have a Kenwood KDC-X701 headunit in my Jeep which supports APT-X. I have never had an issue with any of my android phones connecting to the headunit, specifically my Galaxy S5 running LOS 14 nightlies. Always auto-connects and displays APT-X on the headunit (NOT AAC)
I broke the screen on the S5 so I bought an LG V20 (LS997) knowing full well that development has ceased on the V20, with the assumption that a stock ROM will at least be fairly stable.
Enter the issues I am having with my new V20, latest Sprint build 100% stock.
When I let the headunit auto-connect to the V20, it displays APT-X but no audio comes through the head unit unless I initiate a call (no music regardless of application, no google maps audio, etc). After disconnecting the call, it goes back to not passing audio.
If I disable auto-connect on the headunit and manually connect my V20, it connects and displays "AAC" and will play audio without issues.
Now, normally I would say "screw it, I found a workaround", but I tested my S5 and V20 side-by-side with some Modest Mouse FLAC files (through PowerAmp), and APT-X makes a noticeable difference in clarity. The mids/highs sound muddy on the V20 (AAC), and super clear on the S5 (APT-X). Enough so that I spent quite some time debugging it to see if I could figure out what the source of the issue was.
Is this something related to the APT-X HD codec? I spent an hour just now messing with it and I can NOT get the V20 to pass audio when connected via APT-X, but it passes audio just fine via AAC. 100% sure this is the V20 because every other Android I have tried (even my friend's S7, stock VZW), and none of them have this issue!
TL;DR
My V20 won't pass audio using the APT-X codec, but will pass audio using the AAC codec. My head-unit always auto-negotiates APT-X and I have to manually disconnect/reconnect through my V20 to get it to negotiate AAC and pass audio.
Any help/feedback would be greatly appreciated
EDIT:
Here are some pics I took of the actual display
AAC https://photos.app.goo.gl/6urGBAmHOSGTy1Cn1
APT-X https://photos.app.goo.gl/VwgCoSkySW57iVSr1
Driving me mad because I like to just get in the car, hit play on the headunit, and not need to take my phone out of my pocket
Same problem here
This could have just as easily been my post word for word. I got a V20 over the weekend, replaced my old stereo with a x501 so that I could have bluetooth. Took me about a day to figure out that I have to disconnect and reconnect in order to get sound, even thou it is clearly connected via bluetooth and I can see what song is playing on the stereo. I too noticed that this is happening when its using APTX codec, when I disconnect and reconnect it for some reason switches to AAC and works perfectly. Yep, and it's very annoying because I do have to get into you phone and disconnect/reconnect every time I start my car. After that everything works as expected.
investinwaffles said:
My V20 won't pass audio using the APT-X codec, but will pass audio using the AAC codec. My head-unit always auto-negotiates APT-X and I have to manually disconnect/reconnect through my V20 to get it to negotiate AAC and pass audio.
Any help/feedback would be greatly appreciated
Click to expand...
Click to collapse
Have you checked online for a firmware update for the radio? I have the kdc-x599 and mine had an update specifically for Bluetooth related issues and mine streams just fine over the aptx codec.
Thanks for the advice! I was actually on a much older firmware version so I went ahead and updated my head unit (from v.109 to v.116) but unfortunately there was no change
I am going to try a full factory reset on the head-unit this weekend but it's not looking promising unfortunately
It is pretty annoying to have to initiate the connection from the phone, especially when you hop in/out of your car like at a gas station and end up not remembering till you are on the road. I was looking for a widget or something that could auto-initiate a specific bluetooth connection instead of having to go into the settings (or toggle bluetooth on/off) but haven't found one.
I really like the concept of the phone and the hardware, but LG is just "not good" at Android. My best advice is for them to run just pure AOSP and fire their OS development team, but hopefully Google will force their hand with Project Treble.
Compounding things further I dug out my S5 with Lineage OS to set it up as a garage phone and remembered how much I miss just pure AOSP (and root access, and no bloatware, and stability)...
I wonder if the KDC-X702 and latest models have the same issue, but confirmed that it was an issue specific to the V20 and it seems futile to change the whole head unit because of the shoddy bluetooth stack in the V20.
So, I will grudgingly deal with the issue and try to push it from my mind every single time I get into my car until I can find a suitable replacement for the V20, but the damn headphone amp has spoiled me which makes it hard. Maybe someone will come out with a nice streamlined Type-C DAC/AMP combo but I am not holding my breath
EDIT:
Last ditch effort - I am going to send an email to both Kenwood and LG tech support to try and get some engineering assistance.
I know LG is going to write me off, but Kenwood seems actively engaged in development (last firmware update for the KDC-X701 was March 15th, just days ago). It's not on their end of the equations so I am not sure what they can do anyways
@investinwaffles
Is your phone rooted? That sounds kinda similar to the issue of using certain audio mods or tweaks on the V20. I use Viper and to activate the mod over Bluetooth I have to use an app created by WETA that basically forces a phone call so it can activate the effects. My TMobile version doesn't have any problem playing over aptx on mine regardless of audio mod though but it sounds kinda similar.
KUSOsan said:
@investinwaffles
Is your phone rooted? That sounds kinda similar to the issue of using certain audio mods or tweaks on the V20. I use Viper and to activate the mod over Bluetooth I have to use an app created by WETA that basically forces a phone call so it can activate the effects. My TMobile version doesn't have any problem playing over aptx on mine regardless of audio mod though but it sounds kinda similar.
Click to expand...
Click to collapse
No, I am 100% stock, Sprint ZVD firmware (latest update)
Mine is stock and I did update the firmware on the headunit(x501) to 116, this is what Kenwood told me which I tried with no luck...
I recommend that you initialize the Bluetooth settings, reset the unit, and verify the firmware is up to date. Simply press the volume knob to enter FUNCTION, turn the knob and select BT MODE, INITIALIZE, and YES. You may then remove the faceplate and press the small button on the radio with a paper clip or ball point pen.
Click to expand...
Click to collapse
Once i told them this did not work they asked me this...
I recommend that you pair and connect a different device to confirm if you are experiencing a compatibility issue or if the unit needs to be serviced. For testing purposes try a phone manufactured by a different brand or one listed on the Bluetooth compatibility list.
Click to expand...
Click to collapse
None of the phones on their list support aptx, they are all very old phones. What I don't understand is why does it try to use aptx only when the headunit boots, then it will switch to AAC when I disconnect and reconnect bluetooth from the phone. If the phone is setup to use aptx, wouldn't try to negotiate aptx everytime it connects? Anyway, AAC works but its a hassle every time I jump in and out of the car. Is this just an issue with the LG V20 or Kenwood? I dont' have any other bluetooth devices that use aptx to test with... and since other phone I have only use aac I can verify the headunit either.
On a side note, I also have issues with hand mode. when I connect the phone via usb it will only provide power. I have spent no time troubleshooting this so it could be as simple as a cable issues. I was curious if you have connected the LG V20 via usb and been able to use hand mode?
@G2T
Do you have a Sprint variant as well?
I have a T-Mobile variant and a Kenwood unit and I have no issues with using aptx. Mine doesn't display the codec on the unit but I have used logcat to verify that it doesn't switch back to aac as I've had Bluetooth issues before on a certain TMobile firmware
I have AT&T
The NP (1) supports all "Hi-Res" Bluetooth codecs such as aptx HD; aptx adaptive; LDAC or LHDC. I connect the NP (1) to these devices:
- Fiio UTWS 5 BT adapter - preferred codec: LHDC.
- iFi Zen Blue V2 BT receiver - preferred codec: LDAC
The two BT devices can be connected reliably and stably - but always with aptx Adaptive. The settings under "Connected devices" (cogwheel next to the device name of the connected device) only show aptx adaptive, which can be activated or deactivated. If aptx-Adaptive is deactivated, the SBC codec is used. And the audio quality is correspondingly lousy.
To change the codec, the only way is via the "Developer options", which is complicated and has to be done with every new connection.
How can I assign permanently the desired BT codec to a certain receiver device?
Thank you for your tips!
I was also stuck on this, there is an app called "Bluetooth codec changer" on google play that solved my problem by auto switch to my desired codec once my Bluetooth device connected. It's a premium feature that costs 2 bucks but totally worth it.
Thank you very much for the helpful advice. A really very good app (even if I think that the corresponding function should be implemented in the Nothing OS ...).
I am missing one function in the app: the different codecs should be able to be assigned to different BT receivers so that the phone with the corresponding codec can connect to the BT receiver. Or have I overlooked this function?
(Otherwise I would send a message to the developer with my thanks and the suggestion).
I agree with you, if I have more than one device, I think I will be wanting this too.
You can contact the developer through email and see if he can add it, he is really active and pushing updates to the app with improvements consistently.
I have sent the proposal for this function to the developer.
Awesome app! To people that might dont wanna pay for it, use the app Google Opinion Rewards
Code:
https://play.google.com/store/apps/details?id=com.google.android.apps.paidtasks
You gotta answer a few questions in the app, remember to remove any battery optimisation and make sure it can send you notification.
Took me from Saturday to today to get 19dkk(which is my currency) to pay for the app, basically free.