Moode Forum

Full Version: tags, moOde/MPD and UPNP/OPenHome
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3
Hi,

I used a UPNP controler (Linn Kazoo) to play from a UPNP/OpenHome server (minimserver).

In this mode, does moOde/mpd read the file information (tags) directly from the file or does it rely on the information that minimserver sends to the renderer (moOde) ?

I am trying to troubleshoot the display of certain tags, particularly: performer

I understand that moOde is limited, in terms of tag handling, by MPD.

This document (https://mpd.readthedocs.io/en/stable/protocol.html#tags) include the tag: performer, but it is unclear what mapping may be going on (for example the ID3v2.3 equivalent appears to be "INVOLVEDPEOPLE").. and weather or not moOde/MPD is relying on the UPNP/OpenHome server to supply the tag info or reading it directly from the file.
You might want to ask in one of the UPnP forums but I think MPD is reading whatever tags are present in the file being played.

You can send MPD the "currentsong" command via telnet to see the tags.

Code:
pi@moode:~ $ telnet localhost 6600
Trying ::1...
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
OK MPD 0.23.5
currentsong
file: NAS/FLAC/Antoine Hervé/Summertime/07 In Your Own Sweet Way.flac
Last-Modified: 2021-01-08T16:05:04Z
Format: 44100:16:2
Title: In Your Own Sweet Way
Artist: Antoine Hervé
Album: Summertime
Genre: Jazz
Composer: Dave Brubeck
AlbumArtist: Antoine Hervé
Track: 7
Disc: 1
Date: 2002
Time: 431
duration: 431.000
Pos: 7
Id: 8
OK
I did try:
Code:
telnet localhost 6600
Trying ::1...
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
OK MPD 0.23.4
currentsong
file: http://path/minimserver/*/music/_lossless/Cannonball*20Adderley/1958*20-*20Somethin*27*20Else/01*20-*20Cannonball*20Adderley*20-*20Autumn*20Leaves.flac
Title: Autumn Leaves
Album: Somethin' Else
AlbumArtist: Cannonball Adderley
Artist: Cannonball Adderley
Genre: Jazz
Date: 1958
Track: 1
Performer: Alto Saxophone: Cannonball Adderley; Trumpet: Miles Davis; Drums: Art Blakey; Bass: Sam Jones; Piano: Hank Jones; Engineer: Rudy Van Gelder
Label: Blue Note/Universal
Location: Van Gelder Studio, Hackensack, New Jersey
Pos: 0
Id: 2355
OK

I believe .flac use vorbis tags. The fields:
  • Performer
  • Label
  • Location
appear exactly like that (as above) when I edit the .flac tags using 'tag' on macos.


When I try and add the equivalent tags (id3v2.3.0) to .mp3 files, using 'kid3' ... for example:

For Performer, I use the: TIPL frame which equates to InvolvedPeople and should map to Performer (somehow?) but doesn't.

For Label, I use the: TPUB frame which equates to Publisher / and should map to Label (somehow?) but doesn't.
... If I add: 'performer' to "preferences > Show extra metadata", it displays under the coverart.

However, If I add 'label' or 'location' to "preferences > Show extra metadata", neither of them display under the coverart ?
Below is from the ( i ) help for that Preferences setting.


Display under the cover art any combination of the tags listed below. If no tags are to be displayed enter None or leave the field blank.

Tags: album, genre, track, disc, date, composer, conductor, performer, encoded
@schliden

Welcome to the weird and wonderful world of music metadata, where there is no industry-wide agreement on what information elements should be captured, how they should be identified, and how they should be encoded.

Yes, the FLAC specification says metadata shall (only) be contained in a VORBIS_COMMENT block where each entry is in the form of FieldName=Data. In general, the case-insensitive FieldNames can be user-defined, although the VORBIS specification includes a proposed minimal list of FieldNames and their intended usage which includes "performer"  so there has been general acceptance of the use of this name.

OTOH, the MP3 specification did not include a method of including metadata. The de facto ID3 specification(s) came later. In the ID3v2.3 approach, each entry is contained in a frame with a 4-character frame title/identifier. The spec includes a list of predefined 4-character identifiers and their intended usage; it also includes the catchall TXXX (user-defined) frame. 

As you've discovered, there isn't universal agreement on how the predefined frames should be used. In the case of the concept of performer, I've seen the use of various TPEx frames, IPLS ("Involved People List") frame, and TXXX frame with Performer/Value pair. (Note that TIPL is an ID3v2.4 frame identifier and ID3v2.4 is not commonly used.)

I just checked the source code for MPD's decoding of tags and found that it maps the content of a TPE4 frame into performer in its library database.

Regards,
Kent
(05-16-2022, 02:23 PM)Tim Curtis Wrote: [ -> ]Below is from the ( i ) help for that Preferences setting.


Display under the cover art any combination of the tags listed below. If no tags are to be displayed enter None or leave the field blank.

Tags: album, genre, track, disc, date, composer, conductor, performer, encoded

Thanks Tim..

I naively thought that list in the (i) help was an example of the format required and perhaps a reminder of the defaults..

I thought that it could be extended to handle any tag that MPD could cope with.

Thanks for the clarification.
(05-16-2022, 08:42 PM)TheOldPresbyope Wrote: [ -> ]@schliden

Welcome to the weird and wonderful world of music metadata, where there is no industry-wide agreement on what information elements should be captured, how they should be identified, and how they should be encoded.

Yes, the FLAC specification says metadata shall (only) be contained in a VORBIS_COMMENT block where each entry is in the form of FieldName=Data. In general, the case-insensitive FieldNames can be user-defined, although the VORBIS specification includes a proposed minimal list of FieldNames and their intended usage which includes "performer"  so there has been general acceptance of the use of this name.

OTOH, the MP3 specification did not include a method of including metadata. The de facto ID3 specification(s) came later. In the ID3v2.3 approach, each entry is contained in a frame with a 4-character frame title/identifier. The spec includes a list of predefined 4-character identifiers and their intended usage; it also includes the catchall TXXX (user-defined) frame. 

As you've discovered, there isn't universal agreement on how the predefined frames should be used. In the case of the concept of performer, I've seen the use of various TPEx frames, IPLS ("Involved People List") frame, and TXXX frame with Performer/Value pair. (Note that TIPL is an ID3v2.4 frame identifier and ID3v2.4 is not commonly used.)

I just checked the source code for MPD's decoding of tags and found that it maps the content of a TPE4 frame into performer in its library database.

Regards,
Kent

@TheOldPresbyope

Thanks Kent.

I will try and set the mp3 performer tag to use the TPE4 frame and see if that works.

Do you have any suggestions on tag tools that allow reading / writing specific frames into mp3's ?

I'm on MacOs and use a combination of iTunes (1st) and Kid3 (final) for mp3 tag editing, but both seem to decide on the underlying frame used for a particular tag type.
@schliden

Several years ago, I embarked on a project to create a "universal" tag map that took into account all the tools I was able to put my hands on...life got in the way and I never finished it Rolleyes 

Each of the tag editors I experimented with had some set of known metadata types which it mapped into ID3v2.x frame types but I couldn't figure out how to modify that mapping in a reasonable way.

I don't have access to MacOS. For Kid3 I have a description of its use of ID3 frames (and other schemes). See Table 3.1 in https://docs.kde.org/trunk5/en/kid3/kid3...frame-list

They map their "Unified frame type" Remixer to the ID3v2.3 TPE4 frame type. You might experiment with that, keeping in mind that you're customizing your tracks to fit MPD's Procrustean Bed. [Note that the table does not list a Performer type.] I just now tried this on a test track using Kid3 on my Linux laptop. After I updated the moOde folder the value I gave for "Remixer" now shows up in mpc list performer. I don't see it in the Playback panel when I play the track but I don't have time ATM to figure out why.

When I want to tag a track "my" way, I tend to use the Python Mutagen module but that's just me. There are other flexible, non-GUI tools too.

Regards,
Kent
roon can read files with tags and it seems that roon use 2nd layer of software (or method) to read the tags . or maybe --auto updated using internet. i am not so sure.

but comparing to moode, it seems lack of something that i don't know..
Pages: 1 2 3