Post Reply 
 
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
displayRole versus displayFormat
20-05-2018, 17:22
Post: #1
displayRole versus displayFormat
I am attempting to create some notes to remind me of the exact purpose of each of my MinimServer settings, which have evolved over several years.

The following two settings are causing me some confusion, as they both appear to do the same thing, i.e. to make the Playing Now screen on my various controllers show the Composer name in place of the Artist name.

tagCustom=Composer.displayRole={artist}
tagFormat=Artist.displayFormat={$composer}

I would appreciate some clarification of the difference between these displayRole and displayFormat settings.
Find all posts by this user
Quote this message in a reply
20-05-2018, 17:26 (This post was last modified: 20-05-2018 17:35 by haggis999.)
Post: #2
RE: displayRole versus displayFormat
Ooops! I've just noticed that Paul Taylor raised a very similar question in July 2017. I will check that thread to see if it provides the answer I was looking for.
Find all posts by this user
Quote this message in a reply
20-05-2018, 17:43 (This post was last modified: 20-05-2018 17:56 by haggis999.)
Post: #3
RE: displayRole versus displayFormat
Further testing has shown that both my tagCustom and tagFormat settings have the same effect of substituting Composer for Artist on the Playing Now screen.

Is there any advantage to using one method over the other?
Find all posts by this user
Quote this message in a reply
20-05-2018, 18:00
Post: #4
RE: displayRole versus displayFormat
This is from the users guide:
“MinimServer supports customization of tag values using the option settings described in the following sections. To support customization, MinimServer gives each tag an index value, a sort value and a display value. The index value is the value shown in index lists while browsing your library, the sort value is the value used for sorting index lists, and the display value is the value shown in the control point's playlist and on the Now Playing screen.”

My understanding is - take it with a grain of salt, I’ve been known to be quite wrong - that the displayrole links a tag to a particular control point field. For example, control points typically don’t have a “composer” field in their display, so the expression composer.displayrole={artist} tells the control point to show the composer tag in its artist field. So for instance I have composer, conductor, orchestra, chorus, and soloists tags all linked to the artist field with this setting.

The tagformat, on the other hand, tells the control point how to display the information in the field. So if you have set composer.displayrole={artist} and conductor.displayrole={artist}, the tagformat setting tells the control point how to display the artist, composer and conductor in the artist field, e.g. in what order, what separators to use, etc.
Find all posts by this user
Quote this message in a reply
20-05-2018, 19:38
Post: #5
RE: displayRole versus displayFormat
It is indeed the lack of a Composer field on the Playing Now screen of my control point devices that caused me to create the two settings listed in my OP, but I don't appear to need both of them. Each one seems to be capable by itself of achieving my objective.

However, there may be some subtle differences between these two methods that I have yet to notice.
Find all posts by this user
Quote this message in a reply
20-05-2018, 20:03
Post: #6
RE: displayRole versus displayFormat
What control point and players are you using?
Find all posts by this user
Quote this message in a reply
20-05-2018, 21:16
Post: #7
RE: displayRole versus displayFormat
My music library is stored on a Synology NAS. I normally play this music on my Naim NACN272 streamer/pre-amp under the control of the Naim app (iOS and Android). However, I sometimes choose to control music playback using BubbleUPnP (Android only).

BubbleUPnP has a slicker interface and is less buggy than the Naim app, but only the latter lets you fully control the player.
Find all posts by this user
Quote this message in a reply
20-05-2018, 21:57
Post: #8
RE: displayRole versus displayFormat
(20-05-2018 18:00)antonmb Wrote:  My understanding is - take it with a grain of salt, I’ve been known to be quite wrong - that the displayrole links a tag to a particular control point field. For example, control points typically don’t have a “composer” field in their display, so the expression composer.displayrole={artist} tells the control point to show the composer tag in its artist field. So for instance I have composer, conductor, orchestra, chorus, and soloists tags all linked to the artist field with this setting.

This isn't correct. The composer.displayRole={artist} setting tells MinimServer to use the upnp:artist XML tag with the role="composer" XML attribute to convey composer information from the server to the control point. Whether or not the control point shows the composer information thus conveyed in place of artist information is for the control point to decide.
Find all posts by this user
Quote this message in a reply
21-05-2018, 01:18
Post: #9
RE: displayRole versus displayFormat
Thanks Simon, that's certainly clearer. To haggis999's point, I tried deleting all my tagCustom entries, and everything still shows up the same in Kazoo, i.e. composer, conductor and orchestra are still displayed. If, however, I leave the tagCustom entries but delete the tagFormat entries, none of this information shows. Does that mean the tagCustom entry is superfluous as long as tagFormat is configured?
Find all posts by this user
Quote this message in a reply
21-05-2018, 09:20
Post: #10
RE: displayRole versus displayFormat
Deleting the tagCustom setting doesn't prevent Composer etc. from showing in the index for browsing but it does prevent the control point from receiving this information as part of the metadata that is available to be displayed on the Now Playing screen and in some other places.
Find all posts by this user
Quote this message in a reply
Post Reply 


Forum Jump:


User(s) browsing this thread: 1 Guest(s)