jellyfin/jellyfin-web

Playback Error when using shuffle

Closed this issue · 1 comments

Whenever I shuffle media that I've filtered by genre, such as horror for instance, I get a Playback error that says "No player found for the requested media" every time. Happens on any web browser, JMP and on the WebOS app.

Steps To Reproduce

  1. Go to 'Movies' (TV shows have this issue too)
  2. Click on 'Genres'
  3. Select any genre
  4. Click 'Shuffle'
  5. Error occurs

Expected Behavior
Media should play shuffled.

Logs
Because it refuses to play, I see no relevant logs, but after opening the browser dev console (Firefox) I saw this message that could be related: "No player found for the requested media: undefined main.jellyfin.bundle.js:2:142706".

System:

  • Platform: Linux, WebOS
  • Browser: Firefox
  • Jellyfin Version: 10.9.9, 1.11.1 (JMP)

Additional Context
Curiously enough, no problem occurs when clicking on "Play all" instead. This issue was first reported on the Jellyfin forums, some additional info could be posted here.

I don't know how it worked before, but now we don't generate a play queue for Genre item:

function getPlaybackPromise(firstItem, serverId, options, queryOptions, items) {

I tried adding a similar thing to MusicGenre:
case 'MusicGenre':
return getItemsForPlayback(serverId, mergePlaybackQueries({
GenreIds: firstItem.Id,
Filters: 'IsNotFolder',
Recursive: true,
SortBy: options.shuffle ? 'Random' : 'SortName',
MediaTypes: 'Audio'
}, queryOptions));

But it fetches items across different libraries because Genre item has no parent (and the query as well).