Post Reply 
 
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
displayRole versus displayFormat
21-05-2018, 12:41
Post: #11
RE: displayRole versus displayFormat
(21-05-2018 09:20)simoncn Wrote:  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.

Hi Simon. I'm still unsure about the pros and cons of the two settings listed in my OP. Each one seems to be capable by itself of achieving my objective of ensuring that the Artist display in the Playing Now screen actually shows the composer name. Deleting my tagCustom setting doesn't stop this working if my tagFormat setting is still in effect.

Is there some subtle difference between these two methods?
Find all posts by this user
Quote this message in a reply
21-05-2018, 14:43
Post: #12
RE: displayRole versus displayFormat
Your tagFormat setting is sending the composer as the artist value. Your tagCustom setting is sending the composer as the composer value. By deleting your tagCustom setting, you are no longer sending the composer as the composer value but you are still sending the composer as the artist value. With most control points, this will make the composer appear on the Now Playing screen.
Find all posts by this user
Quote this message in a reply
21-05-2018, 14:54
Post: #13
RE: displayRole versus displayFormat
(21-05-2018 14:43)simoncn Wrote:  Your tagFormat setting is sending the composer as the artist value. Your tagCustom setting is sending the composer as the composer value. By deleting your tagCustom setting, you are no longer sending the composer as the composer value but you are still sending the composer as the artist value. With most control points, this will make the composer appear on the Now Playing screen.

Perhaps I'm being a bit thick here, but I don't quite see how a tagCustom setting of Composer.displayRole={artist} can be described as "sending the composer as the composer value". Such a description implies that no tag transposition has been made, which is not the observed effect of that setting.
Find all posts by this user
Quote this message in a reply
21-05-2018, 16:52
Post: #14
RE: displayRole versus displayFormat
Without your tagCustom setting, the server isn't sending anything to the control point as the composer value, so the control point doesn't know who the composer is. However, your tagFormat setting is sending the name of the composer as if it were the artist name, so the control point is receiving composer names but thinks these are artist names.
Find all posts by this user
Quote this message in a reply
21-05-2018, 21:02
Post: #15
RE: displayRole versus displayFormat
Before I made my OP, I tried to work out the purpose of my long-standing tagCustom and tagFormat settings by reading the online User Guide. The description of tagFormat was quite complex, but I got the general idea. However, I found the description of tagCustom to be particularly opaque. I then tried each setting by itself and convinced myself that they each had the capability of making a control point display the Composer name in place of the Artist on the Now Playing screen.

However, I have just re-run those tests and got different results. I had always run a rescan of MinimServer after making my changes and refreshed the server link on my control points, but I now suspect that I may have failed to refresh the Now Playing screen on some occasions and thoroughly confused myself Sad

I'm still quite bewildered by the User Guide description of tagCustom, but I can now see that the real effect of tagCustom=Composer.displayRole={artist} in my case is that it enables the optional display of Composer on BubbleUPnP's Now Playing screen. Contrary to my initial belief, this setting does NOT make a control point display the Composer name in place of the Artist (that is only achieved via my tagFormat setting).

My biggest source of confusion with this tagCustom setting is that I don't understand why it contains the word 'artist'. If the purpose is "sending the composer as the composer value", then having tagCustom=Composer.displayRole={composer} would seem more logical to my simple mind! I also struggle to understand why you need any special setting for "sending the composer as the composer value" when the absence of that setting does not prevent the browsing tree from successfully displaying all my Composer names.

All this brain fog would probably be dissipated by a clearer definition of displayRole.
Find all posts by this user
Quote this message in a reply
21-05-2018, 22:14
Post: #16
RE: displayRole versus displayFormat
The 'artist' in this option is used in a technical sense and I understand why this could be confusing.

Historically, control points have used one of two alternative XML tags to receive composer information from the server. One of these is <upnp:artist role="composer"> and the other is <upnp:author role="composer">. The UPnP specification unfortunately doesn't define which of these should be used, so MinimServer provide the displayRole option of the tagCustom property to enable the user to specify which of these (or both, or neither) should be used. The correct choice would depend on which control point(s) the user is using.

A further wrinkle is that some control points doesn't understand either of these forms but just ignore the role="composer" attribute. This can cause composer names to be misinterpreted as artist names. (You are doing this intentionally but many users would not want this to happen.)

There are even more twists to this saga but I think the above is enough for now.
Find all posts by this user
Quote this message in a reply
21-05-2018, 23:07
Post: #17
RE: displayRole versus displayFormat
(21-05-2018 22:14)simoncn Wrote:  There are even more twists to this saga but I think the above is enough for now.

You are probably right about that! I don't want to dig any deeper into this than is necessary for me to understand my MinimServer configuration. Suffice to say, I think an extra sentence or two of explanation would be desirable in the Custom Tag Settings section of the Other features page of your User Guide.

One result of forcing the Artist tag to include the Composer name (to meet the needs of control points such as the Naim app, which doesn't have an option to directly display Composer on its Now Playing screen), is that control points that do have this ability, such as BubbleUPnP, then end up showing Composer twice. However, thanks to the flexibility of MinimServer, adding a tagFormat setting like Composer.displayFormat={$sub-genre}, is one way to make better use of the BubbleUPnP display.
Find all posts by this user
Quote this message in a reply
22-05-2018, 07:40
Post: #18
RE: displayRole versus displayFormat
The reason you are getting the composer twice in BubbleUPnP is because you have used tagFormat to send the composer as the artist name. Most users would not be doing this and BubbleUPnP would then (correctly) be showing both the artist and the composer.

Reducing this long discussion to a sentence or two (that makes sense to a non-technical user) would be quite a challenge but I will see what I can do to improve the current explanation.
Find all posts by this user
Quote this message in a reply
22-05-2018, 10:12
Post: #19
RE: displayRole versus displayFormat
(22-05-2018 07:40)simoncn Wrote:  The reason you are getting the composer twice in BubbleUPnP is because you have used tagFormat to send the composer as the artist name. Most users would not be doing this and BubbleUPnP would then (correctly) be showing both the artist and the composer.

Yes indeed. Only those users whose MinimServer settings are optimised for another control point would hit this minor issue when using BubbleUPnP. It can easily be resolved by either turning off the Composer display in BubbleUPnP or by converting it to show another tag, as in the example I gave in my last post.

Quote:Reducing this long discussion to a sentence or two (that makes sense to a non-technical user) would be quite a challenge but I will see what I can do to improve the current explanation.

This discussion would have been considerably shorter if I hadn't made a mistake when testing out the practical effects of adding and removing the two settings mentioned in my OP. If you strip that out, the discussion only started at post #15 Blush

For me, the current explanation suffers from the following issues.
  • The meaning of displayRole is unclear
  • The meaning of 'role' is also unclear in this context
  • Readers need to be warned that the use of 'artist' in a displayRole setting is NOT a reference to the Artist tag
  • We haven't discussed this yet, but the sentence "MinimServer sets an initial default value of 'artist' for AlbumArtist" was also a source of confusion. Am I supposed to have a tagCustom setting for AlbumArtist?
I realise it won't be easy to fix these problems, but look forward to seeing how you meet this challenge.
Find all posts by this user
Quote this message in a reply
22-05-2018, 11:48
Post: #20
RE: displayRole versus displayFormat
(22-05-2018 07:40)simoncn Wrote:  The reason you are getting the composer twice in BubbleUPnP is because you have used tagFormat to send the composer as the artist name. Most users would not be doing this and BubbleUPnP would then (correctly) be showing both the artist and the composer.

Reducing this long discussion to a sentence or two (that makes sense to a non-technical user) would be quite a challenge but I will see what I can do to improve the current explanation.

Is this the time to augment the user guide explanations with separate pages of examples?

Of the top of my head, we’re practicable, a page for a specific customisation with a column containing a tag name, another with its’ contents, another with the value after any applied customisation and finally, perhaps, the value presented to the control point.

The examples may initially cover simple options but could be embellished/extended as queries are raised. Perhaps some could be provided by Minimserver users based on their own practical uses.
Find all posts by this user
Quote this message in a reply
Post Reply 


Forum Jump:


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