Jellyfin Forum
Possibilities to customize index - Printable Version

+- Jellyfin Forum (https://forum.jellyfin.org)
+-- Forum: Development (https://forum.jellyfin.org/f-development)
+--- Forum: Plugin Development (https://forum.jellyfin.org/f-plugin-development)
+--- Thread: Possibilities to customize index (/t-possibilities-to-customize-index)



Possibilities to customize index - marcelv - 2024-05-27

Hi all,

This is my first post here and as a software developer I am currently investigating if I will be able to customize several features of Jellyfin to meet my personal needs. This means that I want to implement one or more plugins for Jellyfin that will allow me to what I want if at all possible. That is what this question is about and if things are possible, if there are any rough pointers to the interfaces that allow me to do what I want.

The DLNA navigation tree is something I would like to change to my personal preference. However, currently this tree is fixed and seems to be dependent on the different data fields available in the index when browsing my music library. Is this correct? Is there a way to customize the navigation tree any other way, so that I can add multiple levels, like Artist/Album, or Artist/Year, or Genre/Artist?

Now into the other customizations. This is based on the fact that when I encode my FLAC files (from owned CDs), I add additional, non-standard Vorbis tags to the files. All music servers and music players use the ARTIST tag to display the recording artist, and the ALBUMARTIST tag to identify the artist of the entire album, etcetera. Added to these tags I also add other tags, for example ARTISTSORT, that contains the sortable name of an arist, COMPOSERSORT that contains the sortable name of a composer, and some other additional tags.

What I now want is that e.g. the ARTISTSORT tag will be used for the artist instead of the ARTIST tag, and similar customizations for other fields that are indexed. And I would like to add additional fields coming from additional tags in the music database and show these too in the web gui (and use them in the DLNA menu structure). Is this possible? If yes, which interfaces defined in the Jellygfin SDK are most appropriate for this?

I am also curious that when it is possible that I use the sorted names instead of the original names, how this will affect the search for additional metadata as provided by other plugins like the MusicBrainz plugin.

Thank you for the information,
Marcel


RE: Possibilities to customize index - crobibero - 2024-05-27

The DLNA feature has been moved to a plugin, so you should be able to customize it to your will.

> What I now want is that e.g. the ARTISTSORT tag will be used for the artist instead of the ARTIST tag, and similar customizations for other fields that are indexed. And I would like to add additional fields coming from additional tags in the music database and show these too in the web gui (and use them in the DLNA menu structure). Is this possible? If yes, which interfaces defined in the Jellygfin SDK are most appropriate for this?

I believe you would need to update the Jellyfin server code, likely starting with AudioFileProber.


RE: Possibilities to customize index - marcelv - 2024-05-29

Sorry for the late reply, but for some reason I did not get a notification mail, though I am subscribed to this thread.

(2024-05-27, 02:38 PM)crobibero Wrote: The DLNA feature has been moved to a plugin, so you should be able to customize it to your will.

>  What I now want is that e.g. the ARTISTSORT tag will be used for the artist instead of the ARTIST tag, and similar customizations for other fields that are indexed. And I would like to add additional fields coming from additional tags in the music database and show these too in the web gui (and use them in the DLNA menu structure). Is this possible? If yes, which interfaces defined in the Jellygfin SDK are most appropriate for this?

I believe you would need to update the Jellyfin server code, likely starting with AudioFileProber.

So if I understand it correctly, this more or less means a completely custom built Jellyfin (including the DLNA plugin) to match my needs?