Allow more than two tags per metadata item

When fetching a batch of metadata via the Plex API, it returns a maximum of 2 tags for each item, which is likely fine for many users, but for those of us who use more than two genre tags it isn’t quite enough. This means that mobile apps and other devices aren’t able to to even download the additional genres, let only include it within playlist filters. Allowing more (say up to like 8) would be much more ideal.

Thanks! :slight_smile:

Just for some additional context, this came up in a discussion around my app only supporting 2 genres per album.

It would be useful if we could optionally get more than 2 tags per item from the Plex API when fetching batches of metadata from a URL like:

https://SERVER_ADDRESS/library/sections/30/all?type=9

2 Likes

This is already discussed in this bigger request:

The Plex internal database and API basically isn’t set up for multivalued attributes, and does not handle multiple genres per song or per album, or multiple artist per song, etc. With more powerful front-ends like Prism (awesome app btw) you do run into these limitations.

Should all be part of a bigger overhaul of Music, but when we’ll get that…

2 Likes

I’m happy to say that Plex now displays more than the first two genres it finds in embedded tags.

1 Like

Whoa whoa whoa! When did this happen? :open_mouth:

About a week ago with new web app update. a bunch of things changed to preplay page so individual things were not listed out.

1 Like

I see this in the UI, multiple genres, which is great. But via the API, I still only get the first two. Is there a new flag I need to give it or something to make it expand the query?

1 Like

I only see genres at the album level and have a guess as to why.
Notice the plex employee’s picture is album level. Perhaps, Plex still doesn’t support track-level genres.

Plex server 1.20.1.3252
Using the new Plex Music agent, configured it to PREFER LOCAL METADATA and Genres=EMBEDDED TAGS.

My tracks (as a prior DJ) are individually labeled with genre id3v2 tags (aka TCON). For this example, I used a track I purchased from Beatport. They are tagged with id3v2 and use the TCON tag with semicolons separating any multiple values. This is the output with the linux tool id3v2 -l

id3v1 tag info for Keep On Pushing feat-Nightrhymes.mp3:
Title  : Keep On Pushing feat. Tasita D  Artist: Nightrhymes
Album  : Heavenly Soul                   Year: 2012, Genre: Unknown (255)
Comment:                                 Track: 9
id3v2 tag info for Keep On Pushing feat-Nightrhymes.mp3:
TLEN (Length): 497659
RVAD (Relative volume adjustment):  (unimplemented)
GEOB (General encapsulated object): (Serato Overview)[]: application/octet-stream, 3842 bytes
GEOB (General encapsulated object): (Serato Analysis)[]: application/octet-stream, 2 bytes
GEOB (General encapsulated object): (Serato Autotags)[]: application/octet-stream, 21 bytes
GEOB (General encapsulated object): (Serato Markers_)[]: application/octet-stream, 318 bytes
GEOB (General encapsulated object): (Serato Markers2)[]: application/octet-stream, 470 bytes
GEOB (General encapsulated object): (Serato Offsets_)[]: application/octet-stream, 38161 bytes
TPE1 (Lead performer(s)/Soloist(s)): Nightrhymes
TALB (Album/Movie/Show title): Heavenly Soul
TPE2 (Band/orchestra/accompaniment): Various
TIT2 (Title/songname/content description): Keep On Pushing feat. Tasita D'mour (Aaron Ross Vocal Mix)
TIT1 (Content group description): 2012-04-06 beatport
TIT3 (Subtitle/Description refinement): Aaron Ross Vocal Mix
TPUB (Publisher): Heavenly Bodies
TRCK (Track number/Position in set): 9
TYER (Year): 2012
TDRC ():  frame
POPM (Popularimeter): no@email, counter=0 rating=252RGAD ():  frame
TXXX (User defined text information): (replaygain_track_gain): -5.50 dB
TCON (Content type): House-Soulful; Vocal (255)
TBPM (BPM (beats per minute)): 125
APIC (Attached picture): ()[, 3]: image/jpeg, 29097 bytes

I went to Plex web and refreshed metadata on the track and then on the album containing that track.

Debug logs show

2020-10-02 14:54:49,149 (7fe6797fa700) :  INFO (__init__:320) - Skipping local poster (folder.jpg) for file /media/music-laptop/Various/Heavenly Sou/Keep On Pushing feat-Nightrhymes.mp3 since it's already added
2020-10-02 14:54:49,151 (7fe6797fa700) :  INFO (audiohelpers:171) - Reading ID3 tags from: /media/music-laptop/Various/Heavenly Sou/Keep On Pushing feat-Nightrhymes.mp3
2020-10-02 14:54:49,152 (7fe6797fa700) :  INFO (audiohelpers:174) - Found tags: [u'GEOB:Serato Markers2', u'TXXX:replaygain_track_gain', u'GEOB:Serato Overview', 'TDRC', u'GEOB:Serato Autotags', 'TPE2', 'TPE1', 'TALB', 'TLEN', 'TIT1', 'TIT3', 'TIT2', 'TCON', u'GEOB:Serato Offsets_', u'GEOB:Serato Analysis', u'GEOB:Serato Markers_', u'APIC::f68db2cfdc75b45185702df08e78a944', 'TPUB', 'TBPM', 'TRCK', u'POPM:no@email']

I see TCON listed on the third line.

When I view the track in Plex web, menu edit, click on Tags, there is only an empty “Moods” field. Nothing else. When I click General I see reasonable values for album artist, album, title, track, disc, and artist.

When I view the album containing that track in Plex web, I see the album cover and to the right of it I see Genre with several genre listed; two of those genre match the two genre TCON tags in the specific track.

From this behavior, I would guess that Plex read the two TCON genre tags, then applied them to the album, and not to the track itself.
Therefore, genre don’t appear in the track edit info, nor is it possible to search/query for the track using genre.

1 Like

Early 2021 clean-up: implemented