Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Jellyfin only shows the first 100 results in Android Auto #284

Open
wasatchbell opened this issue Jan 13, 2021 · 21 comments
Open

Jellyfin only shows the first 100 results in Android Auto #284

wasatchbell opened this issue Jan 13, 2021 · 21 comments
Labels
bug Something isn't working confirmed Confirmed bug reports that shouldn't go stale

Comments

@wasatchbell
Copy link

wasatchbell commented Jan 13, 2021

No description provided.

@wasatchbell wasatchbell added the bug Something isn't working label Jan 13, 2021
@nielsvanvelzen
Copy link
Member

nielsvanvelzen commented Jan 13, 2021

Currently all screens in Android Auto are limited to 100 items. So large libraries might not show everything.

@arniom
Copy link

arniom commented Jan 30, 2021

I have the same problem, but the limit is not just the A but for the 100 first artist. After that, there's also just 100 albums of these 100 first artist...
In the "Recently played" i found the good songs even if they're not part of these 100 first artist.

Through the app "Yatse" i can browse my whole collection. I didn't counted all the artist but it's (far) more than 150, so i'm not sure this limit is real (or maybe Yatse use a trick that i don't know of)

@MiddleditchT1
Copy link

I'm not sure if this might be a quick fix at least for those using DHU.

I'm running AA 6.3.611324-release. Currently debugging through my phone forwarded to a DHU emulator.
I pulled the master branch of jellyfin-android and noticed that most of the searches in "media/car/LibraryBrowser" had "limit = 100" applied.

I removed these and recompiled in debug and now the output is displaying my entire library.
I've attached a video showing current Jellyfin Android apk result and recompiled debug one where I removed limits.

Android.Auto.-.Desktop.Head.Unit.2021-05-09.14-24-28.mp4

@Maxr1998 Maxr1998 changed the title Android Auto Jellyfin App Only Displays Artists Beginning With A (Incomplete List) Jellyfin only shows the first 100 results in Android Auto May 9, 2021
@nielsvanvelzen
Copy link
Member

FYI: increasing or removing that limit is not something can do for the Play Store version right now because of their restrictions.

@Maxr1998
Copy link
Member

Maxr1998 commented May 9, 2021

To add some more details for other users looking at this:
The 100 items limit was deliberately set to increase driver safety. The Android Auto development guidelines explicitly state that, one could even argue that 100 items is already too much, actually..

Note: Android Auto and Android Automotive OS have strict limits on how many media items they can display in each level of the menu. These limits minimize distractions for drivers and help them operate your app with voice commands.

And as Niels said, Google's review system would probably even flag our app if we removed the limit. Additionally, the limit is set for performance reasons, as there are people using the app with thousands to tens of thousands of songs, which could cause extremely long load times or even crashes, something you definitely do not want in the car.

Right now, most results are therefore sorted by last play date (server-side) and then limited. Unfortunately, the server-side sorting doesn't always work as expected. That needs some fixing eventually.

@JoLander
Copy link

JoLander commented May 9, 2021

But this limitation makes the app useless for Android Auto.
If I want to play for example the album 'The Endless River' from Pink Floyd, I can only select Artists from A to C and only Albums within this artists range due to the size of my music library. Therefore, I will be unable to play any album from any artist starting with letter D and upwards.

@MiddleditchT1
Copy link

That's fair enough.
Do you know what the official limits are? On further reading through developer.android it only states that their is a limit to the "root children" of default 4. But there is no defined limit for displayable media items.
The development and quality guidelines only state that the app must load and display content within 10 seconds.
Understandably this could be an issue with users with massive audio libraries.

It may be that the query is limited to a 10 second cut-off? Rather than a limit of content?

@Maxr1998
Copy link
Member

Maxr1998 commented May 9, 2021

But this limitation makes the app useless for Android Auto.
If I want to play for example the album 'The Endless River' from Pink Floyd, I can only select Artists from A to C and only Albums within this artists range due to the size of my music library. Therefore, I will be unable to play any album from any artist starting with letter D and upwards.

For browsing, it cannot be expected with this implementation that all albums/songs/artists will always be visible. You can, however, use voice commands to play specific songs/albums. At least if the Google Assistant understands your query correctly, which might be a problem at times. There's nothing we can do about that unfortunately.

That's fair enough.
Do you know what the official limits are? On further reading through developer.android it only states that their is a limit to the "root children" of default 4. But there is no defined limit for displayable media items.
The development and quality guidelines only state that the app must load and display content within 10 seconds.
Understandably this could be an issue with users with massive audio libraries.

It may be that the query is limited to a 10 second cut-off? Rather than a limit of content?

I haven't found an official limit when browsing the guidelines when looking earlier, and back then when first implementing it I just thought 100 items was reasonable. The 10 second limit is definitely meant as timeout for query results and not as a limit for the content.
I suppose the biggest influence for it is network latency and speed, you probably need to load a lot of data to break that 10 second timeout.

@JoLander
Copy link

JoLander commented May 9, 2021

But why not showing all letters from A to Z when hitting the search button and then load the (limited to 100) Artists or Albums starting with this letter?
I'm sure, most users do not have more than 100 artists with the same starting letter and even not more than 100 albums from this selected artist.
Right now, the decision on which letters are shown in the search is already made when the list of the first 100 results are shown.

@Maxr1998
Copy link
Member

Maxr1998 commented May 9, 2021

But why not showing all letters from A to Z when hitting the search button and then load the (limited to 100) Artists or Albums starting with this letter?
I'm sure, most users do not have more than 100 artists with the same starting letter and even not more than 100 albums from this selected artist.
Right now, the decision on which letters are shown in the search is already made when the list of the first 100 results are shown.

Oh, with search I meant the actual voice search with Google Assistant. The "search by letter" in Android Auto is actually not a search but just a simple filter over the existing results and thus quite useless, yes..

@JoLander
Copy link

JoLander commented May 9, 2021

Yes, I see.
Unfortunately, I hate voice search. I do not use Google Assistant at all. You'll never know, what Google is listening to. Therefore I removed the access right to the microphone for Google Assistant.
That is the main reason why I like to host as much data as possible on my home servers.

@JoLander
Copy link

JoLander commented May 25, 2021

I compared this behavior with the official emby app.
I'm quite sure that emby has to follow the same rules as jellifin in terms of the maximum results shown on the car display.
Nevertheless, the emby app shows the full alphabet when I hit the search button and for every character I select, I see the full set of artist/album/song starting with that character (depending on the selection list).
I would expect the same from jellyfin as such a behavior will not work against the rules.

@deddc23efb
Copy link

deddc23efb commented Dec 1, 2021

It sounds like Emby is doing the right thing. Take a look at Spotify - they clearly have bazillions of songs - their search shows only a few, but at the least the search works. The current Jellyfin system of A-Z being a filter on top of the actual search results is a dead end.
Is there a way to query a slice of albums/songs/artists etc from Jellyfin?

@matthewabell
Copy link

...and now Emby is charging users to use their app with Android Auto. I'll admit, their implementation has been nice - no issue with not displaying all artists and they have a nice shuffle feature. If Jellyfin had a better implementation of Android Auto soon it might be a good chance to poach some disaffected Emby users.

@DuvelCorp
Copy link

DuvelCorp commented Dec 11, 2021

Appart the 100 litem list limitation, I also have a few other issues, like :

  1. not being able to see the Artists. I only see the artists from the root music folder (say /media/music), but anything that would be like /media/music/anyfolder/artist/album don't show at all in the artist list, while I have no issue at all in the web app or android app. Its just in Android Auto. Its like it is only using a folder structure arrangement instead of the internal jellyfin DB , I don't understand this behavior...

  2. I also find the lack of a search function very disappointing. Google voice assistant is not an option for me for the exact same reason as @JoLander wrote above. If we do invest in our own server hosting tools, this is precisely to not give our data to evil GAFAs... So this is not an acceptable solution. And having a real search feature is a necessity if you have a large music library, especially with the limited car listing and browsing interfaces.

  3. My vehicle starts playing automatically the very first song in the list of Jellyfin as soon as I startup. Always the same song. Extremely annoying. He should retain the last song/album played (in Android auto OR other support), but not play always the same first song of the library. At least give us the choice to disable that behavior. I would rather prefer no auto-play at all then always that same song. It goes a little bit over my nerves as soon as I start the car...

All this make the use of Jellyfin in Android auto, a pain :)

@jellyfin-bot
Copy link
Contributor

This issue has gone 120 days without comment. To avoid abandoned issues, it will be closed in 21 days if there are no new comments.

If you're the original submitter of this issue, please comment confirming if this issue still affects you in the latest release or master branch, or close the issue if it has been fixed. If you're another user also affected by this bug, please comment confirming so. Either action will remove the stale label.

This bot exists to prevent issues from becoming stale and forgotten. Jellyfin is always moving forward, and bugs are often fixed as side effects of other changes. We therefore ask that bug report authors remain vigilant about their issues to ensure they are closed if fixed, or re-confirmed - perhaps with fresh logs or reproduction examples - regularly. If you have any questions you can reach us on Matrix or Social Media.

@deddc23efb
Copy link

Jellyfin music with a library of any significant size is still broken.

@Maxr1998 Maxr1998 added confirmed Confirmed bug reports that shouldn't go stale and removed stale labels Apr 11, 2022
@kaysond
Copy link

kaysond commented Apr 30, 2022

I feel like at the moment there's a huge void of useful self-hosted media players that work well (or at all, really) with android auto. Jellyfin is pretty close except for this huge issue.

@B16WLL
Copy link

B16WLL commented May 13, 2022

Also wanted to say that this is a major usability issue. I've been using DSub with Airsonic Advanced until recently. Whilst Jellyfin Web app is great, the Android Auto implementation is awful. Playlists can't be shuffled?

As for Artist or Album searches, these are my results from a library of approx 55,000 tracks. Great, so long as I only want artists beginning with A, B, C, I, P or S!
20220513_151913
20220513_151825

@FazeThree71
Copy link

FazeThree71 commented Oct 24, 2022

Chiming in to keep this from expiring.

I see 123 and A-G.

Files are in a Docker on my NAS under /media/music/A-C, D-F, etc /[artist]/[album]

Server is 10.8.8.
AA is 8.6.124844-release.daily (AA Beta)
JF Android app is 2.4.4

Edited to add: 123 and A-G is a total of 49 playlists for me. Looking locally via web browser, 123 and A halfway through S would be 100 items (119 playlists in total)

@B16WLL
Copy link

B16WLL commented Oct 24, 2022

I have to say I've ditched the Jellyfin app because of this issue. Yatse does almost* everything very well, and works correctly with Android Auto, no library display size limits.

*for some reason it only supports its own internal playlists, not the system-wide Jellyfin ones.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working confirmed Confirmed bug reports that shouldn't go stale
Projects
None yet
Development

No branches or pull requests