OxygenCobalt / Auxio

A simple, rational music player for android
GNU General Public License v3.0
2.21k stars 148 forks source link

Song list can load slow in Android Auto #855

Open HellsBells24 opened 3 months ago

HellsBells24 commented 3 months ago

Describe the Bug/Crash

When scrolling thorough music on device using Android Auto recently, I noticed that a large amount of albums and artists were not displayed on my car's head unit. For example, under Artists, "Rush" was nowhere to be found, and under albums, their self-titled debut was not either.

Describe the intended behavior

Android Auto should display the entire Auxio music library so that a driver does not have to pull out their phone to select the music they want to listen to while their focus should be on the road.

What android version do you use?

Android 14

What device model do you use?

Pixel 8, running GrapheneOS

Provide a sample file

N/A

Bug report

N/A

Duplicates

OxygenCobalt commented 3 months ago

I need photos of this @HellsBells24 since I've never seen this on my end. Can you provide them?

HellsBells24 commented 3 months ago

The first three photos are pictures of the car's head unit while the phone is plugged in. As you can see from the following three screenshots, in each instance the artists/albums are missing from what should be present.

IMG_20240825_193626_207 IMG_20240825_193649_669 IMG_20240825_193703_639 Screenshot_20240825-193428 Screenshot_20240825-193441 Screenshot_20240825-193905

OxygenCobalt commented 3 months ago

Yeah, this is weird @HellsBells24. I would think it might be a pagination problem, but this just flat out seems like it just failed to fetch half of the items and I can't tell why. Do other android auto-compatible players, like Vinyl, not have this issue?

HellsBells24 commented 3 months ago

Retro/Metro does not. Vinyl does but it seems to be intentional on their end, to prevent staring at the car's head unit for too long (which is weird because Android has built in safety pauses while scrolling)

HellsBells24 commented 3 months ago

Did not mean to close

OxygenCobalt commented 3 months ago

Retro/Metro does not. Vinyl does but it seems to be intentional on their end, to prevent staring at the car's head unit for too long (which is weird because Android has built in safety pauses while scrolling)

This is a little unclear @HellsBells24, can you provide photos for these cases so I can see what you mean? I'll look at Retro's impl to see where the discrepancy may be.

OxygenCobalt commented 3 months ago

My current guess @HellsBells24 is either:

HellsBells24 commented 3 months ago

When I get out of work I'll show you how it pops up on Vinyl and Retro.

pixel2user commented 3 months ago

My current guess @HellsBells24 is either:

  • My android auto implementation is wrong
  • Media3 (which my android auto implementation is based on) is doing something utterly unhinged again (I've been dealing with quite a lot of these issues)

858 sounds like this app won't use Media3 any longer. Should @HellsBells24 still run the tests?

OxygenCobalt commented 3 months ago

My current guess @HellsBells24 is either:

  • My android auto implementation is wrong
  • Media3 (which my android auto implementation is based on) is doing something utterly unhinged again (I've been dealing with quite a lot of these issues)

858 sounds like this app won't use Media3 any longer. Should @HellsBells24 still run the tests?

I just assume it's Media3 flipping out @pixel2user, it might also be my stupidity. I'm just tired of Media3 just...doing things and am going to get rid of it regardless of this issue. @HellsBells24 should run the tests.

HellsBells24 commented 3 months ago

He did - sorry for the delay...in addition to my Android Auto troubles, my tire has a puncture! Here's a photo of Retro running on my car head unit - as you can see, there appear to be no limitations on which albums/artists/etc I can select within my library IMG_20240826_152513_074 IMG_20240826_152528_227 What I'm seeing out of Auxio is closer to what I see out of Vinyl, though with Vinyl it appears to be intentional - artists cut off at "B," and I can only select albums by artists that fall within the A-B range - supposedly to prevent me from driving while distracted, although that rather defeats the purpose of AA. IMG_20240826_152623_880 IMG_20240826_152643_386

OxygenCobalt commented 3 months ago

Thanks for this @HellsBells24. I'm working on trashing Media3's session code anyway since it's just too frustrating to use, but after that I'll probably send over a test build to see if that mitigated the bug. If not, I'll try to dig deeper in how me and retro differ.

OxygenCobalt commented 2 months ago

Can you try this @HellsBells24?

Auxio_Auto2.zip

  1. There will be two Auxios with the same icon when you install this, make sure you select the right one.
  2. There might be some instability since this is a 100% redone session system that I haven't fully tested yet.
HellsBells24 commented 2 months ago

@OxygenCobalt "Auxio Debug" solves a problem and creates another. I can now scroll through my entire library on AA, however "Songs" is very slow to load compared to Albums or Artists. If I select a song from an album, rather than play the album from that song it plays my entire album alphabetically by song (see photo of queue). In this case, BU2B from Time Machine Tour 2011 by Rush was selected. IMG_20240923_143242_158

OxygenCobalt commented 2 months ago

I can now scroll through my entire library on AA, however "Songs" is very slow to load compared to Albums or Artists.

Okay, this is what I thought. Your android auto has paging enabled...somehow. I guess it's a, A/B test, since I've never had paging enabled for me. Will work on this.

If I select a song from an album, rather than play the album from that song it plays my entire album alphabetically by song (see photo of queue). In this case, BU2B from Time Machine Tour 2011 by Rush was selected.

Probably a minor bug I introduced during the refactor, will fix.

Will send a patched build soon, kinda busy @HellsBells24

HellsBells24 commented 2 months ago

No worries at all, I'm hiking and hunting and finishing my Masters. Take your time. Sent from Proton Mail Android -------- Original Message --------On 9/28/24 12:27 PM, Alexander Capehart - notifications at github.com wrote:

I can now scroll through my entire library on AA, however "Songs" is very slow to load compared to Albums or Artists.

Okay, this is what I thought. Your android auto has paging enabled...somehow. I guess it's a, A/B test, since I've never had paging enabled for me. Will work on this.

If I select a song from an album, rather than play the album from that song it plays my entire album alphabetically by song (see photo of queue). In this case, BU2B from Time Machine Tour 2011 by Rush was selected.

Probably a minor bug I introduced during the refactor, will fix. Will send a patched build soon, kinda busy @HellsBells24

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you were mentioned.Message ID: @.> [ { @.": "http://schema.org", @.": "EmailMessage", "potentialAction": { @.": "ViewAction", "target": "https://github.com/OxygenCobalt/Auxio/issues/855#issuecomment-2380734331", "url": "https://github.com/OxygenCobalt/Auxio/issues/855#issuecomment-2380734331", "name": "View Issue" }, "description": "View this Issue on GitHub", "publisher": { @.***": "Organization", "name": "GitHub", "url": "https://github.com" } } ]

OxygenCobalt commented 2 months ago

Try this out @HellsBells24:

Auxio_AutoFixed.zip

I re-added pagination, so if the bug re-appears then that's definitely an issue with your ROM sending bonkers page extras for no reason. In that case, I'll have to go deeper with logging stuff.

I also worked on some mitigations for other bugs that changed the way that I infer the album/artist/genre to play from. If you play a song from an album and it still plays from all songs, let me know and I'll revert that new system.

HellsBells24 commented 2 months ago

Sorry for the delayed response. Here's my observations:

OxygenCobalt commented 1 month ago

Songs still load very slowly (ie, they did not load before I had to move on with testing)

I could scroll through Artists and select one, however, the subsequent list of albums would not load after doing so (see Songs in first bullet point).

Okay, I guess I'm not using the right pagination strategy if the loading is still slow @HellsBells24. I'm going to have to send a third build that basically just dumps all of the configuration data your Android Auto is sending so I can actually know what I should be doing. Give me a moment.

OxygenCobalt commented 1 month ago

Okay @HellsBells24, the current fixed version (with slow loading times) is now in 3.6.0. I still can't tell why loading is so slow, will need to do further debugging.

HellsBells24 commented 1 month ago

I need to do further looking into this but the last two times I plugged my Pixel in and selected Auxio, the screen simply said "No Items." The first time it resolved itself, but the second time it didn't. Don't know what the difference was between the two. Did not affect playback selected from the device itself.