feishin icon indicating copy to clipboard operation
feishin copied to clipboard

[Feature request] View and play similar songs

Open Explosion-Scratch opened this issue 1 year ago • 4 comments

I know you can do this in full screen but there should be a context menu item for it and a route to a song's "radio".

I hate feature requesting without contributing to a project so I'm trying to implement this myself but I can't figure out how to navigate to a page from context-menu-provider.tsx or where to put the new route (app-router.tsx? - How do I pass data to routes, like song ID?)

I'll figure it out if I get some time

Explosion-Scratch avatar Mar 30 '24 23:03 Explosion-Scratch

If you actually want to take a look at this (would be great!), you could look at the following sections:

  1. Add a new event for ContextMenuItemType in events.ts
  2. Add that event where appropriate in context-menu-items.tsx (probably just queue/song/playlist)
  3. Implement that feature in context-menu-provider.tsx. There is already a controller for this, so you could call that. Of note, while Jellyfin instant mix should always work, Navidrome (really, Subsonic) similar tracks may not work always

kgarner7 avatar Apr 06 '24 03:04 kgarner7

@kgarner7 I would love to! Thanks for your advice on which sections, I'm very new to react 😅 (more of a Svelte/Vue guy). I have a busy week this week and next due to some travel but likely after that things will settle down.

Navidrome/subsonic similar songs seem to fail for me so I'll need to read some docs first. My ultimate goal would be something like spotify's song radios, so: Corner click -> List of similar songs is displayed (like an album layout) -> Play from there

Explosion-Scratch avatar Apr 08 '24 14:04 Explosion-Scratch

Yeah, gettSimilarSongs relies on last.fm so it isn't as reliable. I've added fallbacks to both Navidrome (just get random songs from the artist) and Jellyfin (InstantMix; not as good, but at least you'll get a playlist). There are still cases where there will be no tracks at all (e.g. album artist with only one track, no similar), but I think that's about as good as it'll get.

kgarner7 avatar Apr 08 '24 15:04 kgarner7

gettSimilarSongs works great on the ios clients play:sub and substreamer. This feature would be nice to see in Feishin and then add the ability to save the result into a playlist, this would make it a great playlist management for Navidrome!

BobWs avatar Jun 02 '24 11:06 BobWs

Given #650 and the ability to see similar songs in full screen player, I'll mark this as resolved

kgarner7 avatar Aug 20 '24 05:08 kgarner7