navidrome / navidrome

🎧☁️ Modern Music Server and Streamer compatible with Subsonic/Airsonic
https://www.navidrome.org
GNU General Public License v3.0
10.64k stars 808 forks source link

Subsonic API Multi disk view #1049

Open SenorSmartyPants opened 3 years ago

SenorSmartyPants commented 3 years ago

Is your feature request related to a problem? Please describe.

Option to display a individual disks in a boxset, instead of the current list of all tracks. I saw this mentioned in #272 but it was crossed out. Was this decided against or just not implemented?

Describe the solution you'd like

Display sub folders for each disk in a boxset, using disk subtitle for folder name (and year of release). Bonus material sometimes has a different release date than the original CD.

Additional context

DSub does not have a way to provide separation of disks in the track list (other than just the track number). I would like to be able to select play all on 1 disk in a box set easily.

deluan commented 3 years ago

As the UI does not support folders, the best we can do is what is already implemented. With the current implementation you can see the tracks grouped by discs in a boxset, play/shuffle one disc and so on. The image in the mentioned issue, is what you see if the album is properly tagged with disc subtitle tags.

The crossed-out item in that issue is related to your "Additional context": To allow Subsonic clients like DSub to show discs as subfolders in a boxset, if using browse by folder (browse by tag does not support it). I may implement it in the future.

SenorSmartyPants commented 3 years ago

Yes, I'm only asking about the subsonic API. No need to change the Navidrome Web UI.

Consider this my +1 for browse by folder to show discs as subfolders.

certuna commented 3 years ago

The Subsonic API already supports DiscNumber (it's included in the Child ComplexType), it's up to the client app to subdivide an album into discs. If it doesn't do that, what could Navidrome do?

KingDuckZ commented 3 years ago

It would be nice if the boxset displayed the cover art for the corresponding disc too, for albums that have a different cover for each disc!

Anyways I noticed the spinning disc in the play bar already displays the correct cover, so thank you for that :)

The grouping itself works fine with me in Strawberry (and also the cover art for each song seems to be the correct one).

certuna commented 3 years ago

In principle songs can have individual covers in the Subsonic API, but not sure how Navidrome handles this in the DB?

deluan commented 3 years ago

The Subsonic API already supports DiscNumber (it's included in the Child ComplexType), it's up to the client app to subdivide an album into discs. If it doesn't do that, what could Navidrome do?

@certuna, I agree it is up to the client to do The Right Thing ™️ , but some simply don't. In my use case, DSub correctly displays shows the tracks in order, but does not make a clear separation between discs: Screenshot_20210506-102533

My idea is to leverage the "browse by folder" API, which would allow an album to have "subfolders" (the discs), and each could have its own cover (answering @KingDuckZ question)

In principle songs can have individual covers in the Subsonic API, but not sure how Navidrome handles this in the DB?

From Subsonic API getCoverArt docs:

id - The ID of a song, album or artist.

So yes, if the client calls this endpoint passing a song ID, it will return the embedded cover of that song, if available. It falls back to the album cover.

SenorSmartyPants commented 2 years ago

Any updates on the possibility of implementing the "Browse by folder" option.

deluan commented 2 years ago

I took a look, it is not that simple, but easier to implement than browse-by-folder itself. I'll try to implement it after the next release

SenorSmartyPants commented 1 year ago

@deluan any updates on this?

github-actions[bot] commented 1 year ago

This issue has been automatically marked as stale because it has not had recent activity. The resources of the Navidrome team are limited, and so we are asking for your help. If this is a bug and you can still reproduce this error on the master branch, please reply with all of the information you have about it in order to keep the issue open. If this is a feature request, and you feel that it is still relevant and valuable, please tell us why. This issue will automatically be closed in the near future if no further activity occurs. Thank you for all your contributions.

SenorSmartyPants commented 1 year ago

This is a feature request, and I still value it as an easy way to play a single disk from a multi disk album in subsonic clients.

deluan commented 1 year ago

Update: I'm revisiting the DB schema to support multiple folders, and will try to squeeze this in. No promises on timeline, though.

github-actions[bot] commented 7 months ago

This issue has been automatically marked as stale because it has not had recent activity. The resources of the Navidrome team are limited, and so we are asking for your help. If this is a bug and you can still reproduce this error on the master branch, please reply with all of the information you have about it in order to keep the issue open. If this is a feature request, and you feel that it is still relevant and valuable, please tell us why. This issue will automatically be closed in the near future if no further activity occurs. Thank you for all your contributions.

SenorSmartyPants commented 7 months ago

This is a feature request and I would still find it valuable and hopefully others would as well.

deluan commented 6 months ago

Hey @SenorSmartyPants are you still using DSub? Symfonium and Tempo both have a clear separation of discs in an album, and soon OpenSubsonic clients will display disc titles as well:

So, can we close this, as the OS discTitle attribute is already supported by Navidrome?

SenorSmartyPants commented 6 months ago

I am still using DSub. I've been checking out Ultrasonic but haven't made that my daily driver yet as I have some issues with it/getting used to it. I need a client that supports Android Auto (Tempo does not seem to), and would prefer open source.

Checking out Tempo: it does delineate where one disc starts, but does not give the ability to click to play one disc and not the other (which is the functionality I am looking for)

github-actions[bot] commented 3 weeks ago

This issue has been automatically marked as stale because it has not had recent activity. The resources of the Navidrome team are limited, and so we are asking for your help. If this is a bug and you can still reproduce this error on the master branch, please reply with all of the information you have about it in order to keep the issue open. If this is a feature request, and you feel that it is still relevant and valuable, please tell us why. This issue will automatically be closed in the near future if no further activity occurs. Thank you for all your contributions.