Bluetooth A2DP playback quality is quite bad with iOS devices
Description
Environment
Attachments
- 01 Mar 2022, 07:39 PM
- 01 Mar 2022, 07:39 PM
- 01 Mar 2022, 07:39 PM
Activity
Scott Murray March 2, 2022 at 2:00 PM(edited)
I've not seen that that I can recall. It might be easier to test once my changes to re-enable BT AVRCP controls in the mediaplayer app get merged (hopefully today) since you can try media disconnect/connect more easily with them. For now, I'd suggest trying:
toggling BT off and on in the settings app. This should force a new BT connection and media transport connection.
if reconnecting doesn't work, perhaps try unpairing by doing a disconnect + remove in the settings app, and forgetting the h3ulcb device on your phone and doing a new pair+connect.
Ashok Sidipotu March 2, 2022 at 1:52 PM
I was able to reproduce the issue with the internal card. But to no avail as I am not able to reproduce for the 2nd time. I mean I've the following trouble. My iphone after playing onto the bluetooth device for the first time, refuses to recognize the same device as a bluetooth headphone, though I am able to pair and connect(as shown in bluetooth settings).
I never faced this issue with the external USB card, it appears to me as a internal card issue, did you face this issue? is there a way around this issue @Scott Murray ?
Scott Murray March 2, 2022 at 1:05 PM
Yes, the internal one on the refhw WLAN card, so TI WL1836 chipset. If you don't have a WLAN card for your refhw, we can attempt to get that sorted out with @Jan-Simon Moeller.
George Kiagiadakis March 2, 2022 at 10:30 AM
@Scott Murray, are you using the internal bluetooth adapter of the refhw or a USB one?
Scott Murray March 1, 2022 at 7:46 PM
I tried an image with the 0.3.47 & 0.4.8 upgrade, and still see the issue (but other audio seems to be as before, so things seem good on that front). I have attached journal logs for tests with PW log.level = 4, and also from WP with log.level = 4 on a separate second test. I pulled out the logs from the BT specific instance of WP, that's in the '-bluetooth' file. That one definitely shows xruns, which seems to makes sense for what I'm hearing, though in the past xruns seemed to get logged even at the default logging level. One thing to note wrt the logs is that having the logging turned up seems to throw off something wrt the connection timing, it was a bit finicky and took a couple of attempts to get playback started, and quality was even worse than it is with the default log level.
While testing wiring up the AVRCP controls in mediaplayer I noticed during testing of A2DP playback from my iPhone (X running iOS 15.3.1) that quality is very poor, with a large amount of choppiness. There are no error messages at all from PipeWire while this is happening. With an Android phone running Android 10, quality is passable (there are some occasional dropouts, but quality is otherwise okay). This is on the reference hardware, so it should be easily reproducible if an iPhone is available, all that is required is to pair & connect the phone in the Settings app, then try playing media from the phone (e.g. hit play in Music on the iPhone).