HydrogenAudio

Hydrogenaudio Forum => General Audio => Topic started by: 2Bdecided on 2013-07-31 13:52:30

Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: 2Bdecided on 2013-07-31 13:52:30
This is not just a foobar2k question - please don't move this thread to the fb2k forums.


tl/dr: Does anyone know of a standard or quasi-standard of how metadata can be mapped between various tagging schemes (Vorbis comments, ID3, UPnP/DLNA, etc)?



Having tried to figure out sensible filenames (http://www.hydrogenaudio.org/forums/index.php?showtopic=100273), I realised that I don't know what I'm doing with tags either. I rip to FLAC, and convert to mp3. Because I use the mp3s more, I usually find tag errors in the mp3s first, but flac2mp3 (http://www.hydrogenaudio.org/forums/index.php?showtopic=101669) has the potential to makes it easier to keep both collections in-sync.

The problem is, I want to understand what's happening (and what "should" happen) to the tags on their way from FLAC (Flac tags = Vorbis comments), to mp3 (ID3v2.3 or ID3v2.4) to a UPnP/DLNA server.

Knowing that the tags have a good probability of working and making sense whatever mp3 player or DLNA renderer I might use in the future is important. I don't want to keep messing around with them. Hence my desire to understand how they work and map.


I've found some useful information on-line, but not the whole story:

mp3tag has a helpful list...
http://help.mp3tag.de/main_tags.html (http://help.mp3tag.de/main_tags.html)

fb2k has a list of displayed tag names vs id2v3+4 mp3 tags...
http://wiki.hydrogenaudio.org/index.php?ti...ID3_Tag_Mapping (http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:ID3_Tag_Mapping)
...and a list of ways it now knowingly breaks the standard...
http://wiki.hydrogenaudio.org/index.php?ti...y_1.1.6_changes (http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:Metadata_Compatibility_1.1.6_changes)

The description of Vorbis comments starts here...
http://wiki.xiph.org/index.php/VorbisComment (http://wiki.xiph.org/index.php/VorbisComment)
...with the list here...
http://xiph.org/vorbis/doc/v-comment.html (http://xiph.org/vorbis/doc/v-comment.html)
...newer additions here...
http://wiki.xiph.org/Field_names (http://wiki.xiph.org/Field_names)
...and a useful guide here...
http://age.hobba.nl/audio/mirroredpages/ogg-tagging.html (http://age.hobba.nl/audio/mirroredpages/ogg-tagging.html)

I can't find an on-line list of how fb2k maps Vorbis Comments to ID3. Is there one?

In dBpoweramp, if I dive deeply into the menus, there are options for changing how tags are mapped and named on screen. I can't find an on-line list that states what the defaults are.

Asset UPnP, Serviio, and some other DLNA/UPnP servers have options to try to make things work properly with various clients. My stuff tends to be thrown at Twonky and I had no idea what it was doing but found this on line...
http://www.twonkyforum.com/mediawiki/index...Twonky_Database (http://www.twonkyforum.com/mediawiki/index.php/Mapping_your_Media_file_tags_to_the_Twonky_Database)

I've heard of (but not tried) MinimServer which tries to make the tags needed for classical music work properly.

The intricacies of making various things work is played out in full on the Linn forums (http://forums.linn.co.uk/bb/forumdisplay.php?fid=3), though thankfully they share some of the things they have created (http://docs.linn.co.uk/wiki/index.php/Specs%3a%44pl).


That's all I can find. Anyone have any other useful links?


Is there a "standard", or does everyone just try to figure it out for themselves?

It would also be nice to find documentation of the compatibility and quirks. e.g. for multiple values, do you add multiple tags or one tag with a specific delimiter etc. and e.g. what works on various players.

If anyone spots any flying pigs, feel free to mention that as well  .

Cheers,
David.
Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: 2Bdecided on 2013-08-12 11:03:40
I've found a similar thread on the mp3tag forums...
http://forums.mp3tag.de/index.php?showtopic=15983 (http://forums.mp3tag.de/index.php?showtopic=15983)

It mentions an issue I hadn't noticed: ALBUMARTIST vs ALBUM ARTIST. I don't think worth worrying about with current fb2k versions though...
http://www.hydrogenaudio.org/forums/index....showtopic=92294 (http://www.hydrogenaudio.org/forums/index.php?showtopic=92294)
http://www.hydrogenaudio.org/forums/index....howtopic=100012 (http://www.hydrogenaudio.org/forums/index.php?showtopic=100012)

It also mentions an issue I had noticed...
DISCTOTAL or TOTALDISCS
TRACKTOTAL or TOTALTRACKS
vs track/totaltracks
...which isn't always cleanly mapped.


One thing that confused me at first is that most programs use some mapping from tag names to what they display on screen, and try to help you, but when you're trying to figure out exactly what tags are written this help isn't helpful!

Cheers,
David.
Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: marc2003 on 2013-08-12 11:39:19
Quote
but when you're trying to figure out exactly what tags are written this help isn't helpful!


yup, you can't tell with foobar at all. mp3tag is good for showing flac/vorbis comments in the extended tags dialog. if you really want to see what frames are written to an mp3 then the only useful thing i've found is axone.jar but it's cumbersome to use as it can only open one file at a time.
Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: 2Bdecided on 2013-08-12 15:18:27
Thanks marc2003 - I hadn't found that.

Googling for axone.jar also found this old thread...
http://www.hydrogenaudio.org/forums/index....showtopic=87844 (http://www.hydrogenaudio.org/forums/index.php?showtopic=87844)

which mentions Kid3...
http://sourceforge.net/projects/kid3/?source=dlp (http://sourceforge.net/projects/kid3/?source=dlp)
...it doesn't give you the raw tags, but does show you the names of the TXXX fields. Unless I'm missing something, axone.js only shows you the values which is rather unfortunate! You can read them in Hexeditor.jar alongside but it's not ideal.

Cheers,
David.
Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: marc2003 on 2013-08-12 15:30:16
Quote
Unless I'm missing something, axone.js only shows you the values which is rather unfortunate!


just highlight each frame on the left to get the full name and value.

(https://dl.dropboxusercontent.com/u/22801321/2013/august/axone.png)



Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: 2Bdecided on 2013-08-12 17:01:42
That's great, thank you. Thank you for taking the time to post a screen shot or I might not have realise what you meant! Shame it's not in the core File>Tree view all in one place, but it's easier to flick through the individual TXXX frames than launch another program.

Cheers,
David.
Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: Rescator on 2013-08-12 23:52:11
You might want to take a peek at http://www.mp3tag.de/ (http://www.mp3tag.de/)

Not sure if that is exactly what you'll need.
But as far as tagging goes I've been using it for years.
And it does allow to list/edit non standard tags.
I've got it customized to also show replaygain tags in it's main listview for example.
It is also regularly updated so it's not collecting dust either.


One major issue tough is that it is custom tags/comments you are messing with.
Unless it's written down in some official documentation by the folks behind the audio/container format or tagging standard then it's anybody's guess whats out there and what matches with which.
iTunes for example has a lot of it's own iTunes specific tags again.

The HA Wiki would probably be a great place to map out what matches what across formats and tags.

Most of the "common practice" tags are the same across formats and players and tag software, but a lot of variants and outliers still exist. A Wiki might help developers come together on some of those.
Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: db1989 on 2013-08-13 00:02:01
Did you totally miss the bits in the OP where he specifically said he has already incorporated MP3tag and our Knowledgebase into his research but wants more information?
Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: Rescator on 2013-08-13 00:24:40
*doh* I did see a mention of
Quote
mp3tag has a helpful list...
http://help.mp3tag.de/main_tags.html (http://help.mp3tag.de/main_tags.html)

But did not connect that as to him actually using mp3tag.
I was posting in relation to axone.jar and tag readers/editors so I probably got some blinders on focusing only on that part of the discussion.

And you mention the HA knowledgebase, I see no mention of any pages in the wiki which crossreferences meta tags, now if I missed that then my bad again.
But lest ignore my little blooper there and get back to the subject at hand.

My suggestion was to make such a page and pool our efforts and kill two birds with one stone sort of speaking.
The draft could be done on a Wiki talk page and then moved to the actual page when done for example.

And to make sure to get fully back on track with the OP...
I assume that there does exist some standards in some whitepapers, but these are probably stuck as pay only (MPEG, MP4 whitepapers?) then there is the BWF stuff. And RF64.
Microsoft "might" have some stuff on msdn.microsoft.com "somewhere", I'm sure someone here has access to those whitepapers and can help out?

Also, focusing on just FLAC/Vorbis and mp3 is too narrow. With tags being copied to and from, a tag from say mp4, or some obscure SID chipmusic format may find it's way to other formats at some point.
So a community classification project may actually provide results much faster. Just my two cents.

Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: 2Bdecided on 2013-08-13 09:39:58
Yes, I'm using mp3tag - though I wish I'd started using it years ago.

I agree that a good place for this information would be the HA wiki. Then of course other people can add information for other formats.

The information itself isn't so clear cut though. In practice, some tagging standards (especially with mp3) have to be abused just to make the files work with a wide variety of players. So, for example, we all know what an artist is, and what a composer is - but when tagging classical music it's de rigueur to put the composer in the artist field, and store the artist somewhere else...
http://wiki.slimdevices.com/index.php/Begi...de_To_Classical (http://wiki.slimdevices.com/index.php/Beginners_Guide_To_Classical)
(I know that's a squeezebox specific page, but pretty much anywhere classical tagging is discussed this suggestion comes up, even if not everyone uses it).

When people don't even agree on what the tags mean, it's hard to be definitive about a mapping between them. Lots of software tries though, so unless everyone does it completely differently, it must be possible to document the lose consensus that's out there. I think that's about as good as it gets when it comes to tagging!

btw, the official metadata dictionaries that I know of aren't behind a paywall...
http://tech.ebu.ch/lang/en/MetadataEbuCore (http://tech.ebu.ch/lang/en/MetadataEbuCore)
http://www.movielabs.com/md/md/ (http://www.movielabs.com/md/md/)
http://www.smpte-ra.org/mdd/index.html (http://www.smpte-ra.org/mdd/index.html)
...but apart from being less relevant or irrelevant to tagging CD rips, even they have poor or incomplete mappings.

It may be worth mentioning...
http://www.rovicorp.com/products/discovery...ta.htm#packages (http://www.rovicorp.com/products/discovery/metadata/music-data.htm#packages)
http://prod-doc.rovicorp.com/mashery/index...APIs/Rovi-Music (http://prod-doc.rovicorp.com/mashery/index.php/Data/APIs/Rovi-Music)
...because they have had to think a lot of issues through, and this data is routinely mapped to tags by rippers. I'm not sure that's the most relevant link though.

Cheers,
David.
Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: 2Bdecided on 2013-08-14 11:04:59
I was/am hacking something together on the HA wiki, but look what I found...

http://wiki.musicbrainz.org/MusicBrainz_Picard/Tags/Mapping (http://wiki.musicbrainz.org/MusicBrainz_Picard/Tags/Mapping)

...that's a pretty good answer!


It has some holes, but it's better than anything else I've found.

Cheers,
David.

Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: 2Bdecided on 2013-08-14 17:24:34
Here is my attempt. It is not finished yet! I intend to cull the items which don't map, but I'm leaving them ALL there for now to see if there's a soft mapping (TXXX or IPLS/TIPL) which works. I intend to organise it better too. Other formats can be added fairly easily from the URLs at the bottom of the table, but later. Anyway...

http://wiki.hydrogenaudio.org/index.php?title=Tag_Mapping (http://wiki.hydrogenaudio.org/index.php?title=Tag_Mapping)


Here are some problems...

1. When inventing new frames for ID3v2, some sources just invent a new frame (especially a new ID3v2.3 frame with the same name as a real ID3v2.4 frame - but sometimes an entirely new T frame), some sources invent a new frame with an X at the start, and many use TXXX:framename (which is the correct method according to ID3.org). Any thoughts on these three approaches? Anyone seen yet another approach?

2. With Vorbis Comments, Who/what is using TOTALDISCS in preference to DISCTOTAL? ditto TOTALTRACKS vs TRACKTOTAL? If it's lots of things, then ideally you need to read+write both versions for compatibility, but the xiph.org docs only mention DISCTOTAL and TRACKTOTAL.

3. Given the now common mapping of TPE2 to Album Artist, is there a field left for Orchestra/Band? Given that TPE1 is mapped to Artist, it also loses its original meaning of "soloist". I guess soloists can now be listed first in one of the performer/musician/IPLS/TIPL fields, leaving TPE1 free for Orchestra? I only ask because I'm wondering how many IPLS/TIPL/TMCL vs Vorbis Comments mappings to figure out.


It gets worse if you assume that, when tagging classical music, some people will abuse Artist=composer - but that's for another day (and thread!).

Cheers,
David.
Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: Rescator on 2013-08-14 18:40:06
Here is my attempt. It is not finished yet! I intend to cull the items which don't map, but I'm leaving them ALL there for now to see if there's a soft mapping (TXXX or IPLS/TIPL) which works. I intend to organise it better too. Other formats can be added fairly easily from the URLs at the bottom of the table, but later. Anyway...

http://wiki.hydrogenaudio.org/index.php?title=Tag_Mapping (http://wiki.hydrogenaudio.org/index.php?title=Tag_Mapping)


OFFS! That's what I get for not being vigilant at checking the forums constantly.

*cough* http://wiki.hydrogenaudio.org/index.php?ti...Metatag_Mapping (http://wiki.hydrogenaudio.org/index.php?title=Metatag_Mapping)

This too is a rough draft. (I had it on my wiki userpage while working on it).
I was planning to work further on it but now that yours is up too.

This info need to be merged obviously.

Too many cooks in the kitchen I guess.


Quote
1. When inventing new frames for ID3v2, some sources just invent a new frame (especially a new ID3v2.3 frame with the same name as a real ID3v2.4 frame - but sometimes an entirely new T frame), some sources invent a new frame with an X at the start, and many use TXXX:framename (which is the correct method according to ID3.org). Any thoughts on these three approaches? Anyone seen yet another approach?

Seeing all the ID3v2 tags almost felt like my eyes was about to bleed (almost as nasty as the MP4/iTunes ones).
TXXX is defined as being user defined, so anything goes I guess.
I feel like many of the ID3v2 things have a "designed by committee" feel to them, where somebody said they wanted this or that without actually explaining why, and then later it probably never got used anyway.

Quote
2. With Vorbis Comments, Who/what is using TOTALDISCS in preference to DISCTOTAL? ditto TOTALTRACKS vs TRACKTOTAL? If it's lots of things, then ideally you need to read+write both versions for compatibility, but the xiph.org docs only mention DISCTOTAL and TRACKTOTAL.


Actually if you right click a entry in Foobar2000, then choose properties you should get a Poroperties window with a Metadata tab. If you double click "Disc Number" for example you should get a new window that shows the actual Field name, and Field value as it is stored.
Foobar2000 seems to use DISCNUMBER and TOTALDISCS and TOTALTRACKS for Flac, this clashes with what it says on Xiph.org and in my tables you can see I've got both variants listed for now.

Quote
3. Given the now common mapping of TPE2 to Album Artist, is there a field left for Orchestra/Band? Given that TPE1 is mapped to Artist, it also loses its original meaning of "soloist". I guess soloists can now be listed first in one of the performer/musician/IPLS/TIPL fields, leaving TPE1 free for Orchestra? I only ask because I'm wondering how many IPLS/TIPL/TMCL vs Vorbis Comments mappings to figure out.

ID3v2.x does allow multiple tags of the same kind so having more than one TPE2 is actually OK. I think MP4 (more correctly iTunes) is the only one that does not allow that?
VorbisComments standard encourages multiples of a field, it certainly makes searching/matching easier as you can get a hit on each member, having  them all separated by , or / in a singe field is not that search friendly and causes issues when sorting.


I think some kind of statistics gathering is needed.
I.e. Populate all fields in all the most popular software (players/taggers/editors/transcoders/media servers), and do so for all formats they support, then extract that info and see what they are actually stored as.
But it needs to be directed somehow, we already got two wiki pages now because of the lack thereof.


I like the way that the HTML5 working group (WHATWG) are doing things. They are basically adapting HTML5 constantly to reflect the common practice, and this means that only a few developers here or there need to adapt to the majority instead.
Maybe a similar approach could be done with the Tag Mapping/Metatag Mapping page.
But WHATWG has one awesome guy that act as the director to help filter the whole thing and thus avoids making the whole thing messy by having too many cooks.

I'd like to point out 2bdecided as a good candidate to oversee this project, you certainly frequent HA a lot
Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: tuffy on 2013-08-14 20:07:27
Seeing all the ID3v2 tags almost felt like my eyes was about to bleed (almost as nasty as the MP4/iTunes ones).
TXXX is defined as being user defined, so anything goes I guess.
I feel like many of the ID3v2 things have a "designed by committee" feel to them, where somebody said they wanted this or that without actually explaining why, and then later it probably never got used anyway.

I get the same impression from ID3v2.4's text tags, which have four different possible text encodings - three of which are just Unicode variants.

The format is littered with flags that nobody sets and tags that nobody uses that make it more cumbersome without really adding anything.  Yet despite having three different (and incompatible) ID3v2 versions, there's hardly any difference in capability between them which makes me wonder what the point is.
Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: 2Bdecided on 2013-08-14 22:48:34
Well, we're either great minds or fools because that's certainly thinking alike!

I nominate you - yours is much prettier. However, I'm still going to try to complete the data in mine from the sources I have. As you say, some kind of further analysis of what's out there is also needed.

I think some of the devil is in the detail. I intend to add explicit information about some of the non-obvious mappings, to make it more like a proper explicit standard. I see you have added notes along these lines.

I wasn't sure whether my numbered footnotes (listing the source of some information) would make it to the final cut. It's useful to track this stuff I think.

Like you, I categorised the tags, but using colours (green for easiest to map) and sections (to make finding + merging them easier). Your way makes sense too, though I think beyond a third level it'll get quite arbitrary. Amazing how persistently useful ID3v1.1 is.

Finally, I think ID3v2.3 tags made some sense when the standard was written, but they never made provision for a machine algorithm to know the different meanings, or defined a simple way to use a subset when you didn't care that much. If a tag can be one of three things (look at each of the artist fields), and another format has different fields for each of those three things (e.g. TEXT vs Lyricist and Author), then an automatic universal mapping is impossible. If normal lazy use reduces three separate tag values inconsistently into a single tag (TIT1, 2 and 3 just end up in TIT2 as the title), you're in trouble. Once certain software/hardware (most software/hardware) ignores key things (how many players sort by composer?), you're kind of doomed. That said, it's not quite as bad as I feared.

Impressive stuff though Rescator. I didn't even think of Matroska. I did think of Dublin Core/UPnP/DLNA, but haven't gone there yet. I have trawled all the links I provided earlier in the thread yet, just the ones listed below my table. I think I'll keep the references to where the non-obvious information came from until everything is finished.

It crops up in several places second-hand, but is there a first-hand source for the various Apple extensions to ID3v2.x? Or did people only figure it out from looking at mp3 files from iTunes?

Cheers,
David.
Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: marc2003 on 2013-08-14 23:18:49
Foobar2000 seems to use DISCNUMBER and TOTALDISCS and TOTALTRACKS for Flac, this clashes with what it says on Xiph.org and in my tables you can see I've got both variants listed for now.


this is incorrect. you cannot rely on what you see in the foobar properties dialog for what is actually inside the file. this does not show the internal name used. mp3tag will show you via the extended tags dialog or you can use the metaflac command line tool. currently there is no way to tell from within foobar itself. it still reads from both and what it writes is determined under file>preferences>advanced>tagging>vorbis & flac>metadata writing mode.

(https://dl.dropboxusercontent.com/u/22801321/2013/august/preferences.png)

i actually took this next screenshot some time ago to show the difference between the 2 modes. i created 2 copies of the same track and tagged each one in foobar, switching modes for each one. the foobar properties dialog is not showing the difference but metaflac is....

https://dl.dropboxusercontent.com/u/2280132...ch/metaflac.jpg (https://dl.dropboxusercontent.com/u/22801321/2013/march/metaflac.jpg)

Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: Rescator on 2013-08-15 02:07:00
Foobar2000 seems to use DISCNUMBER and TOTALDISCS and TOTALTRACKS for Flac, this clashes with what it says on Xiph.org and in my tables you can see I've got both variants listed for now.


this is incorrect. you cannot rely on what you see in the foobar properties dialog for what is actually inside the file. this does not show the internal name used. mp3tag will show you via the extended tags dialog

Darnit! Thanks Marc.

Well, we're either great minds or fools because that's certainly thinking alike!

I nominate you - yours is much prettier.

We're both fools probably.
And I actually like the look of yours. Maybe a hybrid of sorts would be better. I know next to nothing about Wiki markup. So having some Wiki guru to help out on this would be nice.

Quote
However, I'm still going to try to complete the data in mine from the sources I have. As you say, some kind of further analysis of what's out there is also needed.

I think I'll hold off on mine until you have completed yours. I'm pondering just redoing it all locally in a database and then just export/prep it in some way that allows to copy'n'paste it into the wiki in one go.
Moving stuff around in the wiki itself is a pain. Small edits here and there is not an issue, but it was never designed for this stuff/type of editing.

Quote
I think some of the devil is in the detail. I intend to add explicit information about some of the non-obvious mappings, to make it more like a proper explicit standard. I see you have added notes along these lines.
I wasn't sure whether my numbered footnotes (listing the source of some information) would make it to the final cut. It's useful to track this stuff I think.

Yeah! You should probably steal the way I did the footnotes, they are autonumbering, autoordering, self referencing and linking within the page in both directions and a multiple can point to the fame footnote. As far as I can see this is the most powerfull/flexible way to do footnotes on the Wiki (though I'm sure a Wikiguru will laugh and point out something better though).

Quote
Amazing how persistently useful ID3v1.1 is.

Heh! Well the tags from it formed the base for all others I suspect. But damn the limited lengths and lack of extensibility is depressing. I stopped using it myself when I noticed text was cut off sometimes. Oops!

Quote
If a tag can be one of three things (look at each of the artist fields), and another format has different fields for each of those three things (e.g. TEXT vs Lyricist and Author), then an automatic universal mapping is impossible. If normal lazy use reduces three separate tag values inconsistently into a single tag (TIT1, 2 and 3 just end up in TIT2 as the title), you're in trouble.

Yeah! I felt my brain trying to escape through my ear at one point when looking at the multiple artist tags.

It's just as messy with others though like. Subtitle, Remixed By, Mixed By, Version. All these overlap or intersect in some way. VorbisComments treat Version as a Subtitle synonym. Matroska ... well, I think they got a little too eager and got all except Version in their standard.

Quote
Impressive stuff though Rescator. I didn't even think of Matroska. I did think of Dublin Core/UPnP/DLNA, but haven't gone there yet. I have trawled all the links I provided earlier in the thread yet, just the ones listed below my table. I think I'll keep the references to where the non-obvious information came from until everything is finished.

Might be one or two links at the bottom om my wiki that you haven't seen yet too.
Matroska is just the tip of the iceberg I'm sure. There is also BWF (used in WAV (RIFF)/RF64/Wave64, and maybe CAF as well).

Quote
did people only figure it out from looking at mp3 files from iTunes?

Looks like a lot of reverse engineering to me.


Quote
I nominate you

I'm probably not the best person for that, I'm awesome at telling people what to do, but just as easily to piss them off in the process (some might call that perfect delegation but...)...and besides you carry a little more weight around here, hence more respect, you did do an alright job with ReplayGain after all

But I tell you what. I'm happy to help out (obviously) and so are you (obviously).
So I guess that makes you and me the first fools in the Metatag Working Group, aka the Meta What Group now?

It would be nice to have some more peeps on this (especially some Wiki wiz).
With a handful of folks we could delegate some research tasks and editing tasks among us.
The discussion page on the wiki article page could be used to coordinate edits. while this thread could be used to help coordinate the research and delegation. (or would a new thread be more appropriate?)
I also like this open forum way of doing it as it allows others to poke us (like Marc did) and say "Hey your doing it wrong!"

Ideally the end result of all this will be a unifying standard or guideline that developers (and others, maybe even standard/format designers) can just pop by look at the Wiki article and save themselves, the end users and a while bunch of developers a lot of time and headaches. Or at the very least be able to use it to avoid some of the pitfalls of the existing ones.

And since it's a wiki, supplemental pages could be made to detail particular fields and maybe act as a guide for designing machine parsing of the most used fields at least.
Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: 2Bdecided on 2013-08-15 18:26:20
It's the first time I've typed a HA wiki page too - thanks for the hint about references - that's the way to do it!

I've found a couple of other comparison/mapping pages...
http://www.matroska.org/technical/specs/ta...mparetable.html (http://www.matroska.org/technical/specs/tagging/othertagsystems/comparetable.html)
http://age.hobba.nl/audio/tag_frame_reference.html (http://age.hobba.nl/audio/tag_frame_reference.html)

Worrying, because we're heading into "the great thing about standards is that there are so many of them!" territory just for the mapping "standard"! At least they mostly agree.

I think the way TPE2 is universally stolen for album artist, leaving nowhere ideal for the band/orchestra of a classical work, is probably the biggest problem.

When I've got through all the existing sources and it's looking a bit neater, I would love it if the authors of the popular software packages could chip-in themselves.

I won't have internet access for ten days, but it doesn't mean I've given up.

Cheers,
David.
Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: Rescator on 2013-08-15 19:01:19
I've found a couple of other comparison/mapping pages...
http://www.matroska.org/technical/specs/ta...mparetable.html (http://www.matroska.org/technical/specs/tagging/othertagsystems/comparetable.html)
http://age.hobba.nl/audio/tag_frame_reference.html (http://age.hobba.nl/audio/tag_frame_reference.html)

Worrying, because we're heading into "the great thing about standards is that there are so many of them!" territory just for the mapping "standard"! At least they mostly agree.

Woa! That Matroska comparison there; wish I'd known about that sooner. You are a better Googler than me Sir.

Quote
I think the way TPE2 is universally stolen for album artist, leaving nowhere ideal for the band/orchestra of a classical work, is probably the biggest problem.

When I've got through all the existing sources and it's looking a bit neater, I would love it if the authors of the popular software packages could chip-in themselves.

I won't have internet access for ten days, but it doesn't mean I've given up.

*nod*
I'll use yours as the basis and then merge/blend mine in. I will probably keep the Primary separate like on mine, but instead of Secondary/Tertiary etc, I'll group the rest per their purpose instead. And then start adding all the other standards out there.

Going the common practice/current practice route (even if it's wrong at times) is smartest at first. Once that is done, folks can start to bump heads on whether old fields should change their meaning or new ones should be added etc.

Considering how quiet others are I'm guessing they are thinking "there's no way I'm touching THAT mess"

I mentioned I'd do a sort of database thing later locally here to help manage all these formats/tags, and the fact that you use the notes/refs I suggested is even more practical as they can actually stay/ride along in the database, the notes are semi-portable in a way.
Which is a good thing, some of those links you've found just revealed that I didn't shoot big enough for my own tables.
Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: 2Bdecided on 2013-08-15 22:29:32
OK, well I might get chance to add+fix some bits tomorrow, then it's yours for ten days.

Cheers,
David.
Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: marc2003 on 2013-08-16 03:59:14
I think the way TPE2 is universally stolen for album artist, leaving nowhere ideal for the band/orchestra of a classical work, is probably the biggest problem.

When I've got through all the existing sources and it's looking a bit neater, I would love it if the authors of the popular software packages could chip-in themselves.


are these 2 points related or am i reading too much into it? i think it's probably a bit too late to be proposing changes.

the big behemoths like windows media player and itunes aren't ever going to change and i think other software is more or less forced to use what they do for maximum compatibility. take foobar for example. that wrote album artist and rating to TXXX for years. it also wrote id3v2.4 with no consideration for compatibility with other software at all. but now it uses defaults of TPE2, POPM and id3v2.3 and you can only assume the driving force behind all this change was for compatibility with WMP and windows explorer.
Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: 2Bdecided on 2013-08-16 10:36:38
I think the way TPE2 is universally stolen for album artist, leaving nowhere ideal for the band/orchestra of a classical work, is probably the biggest problem.

When I've got through all the existing sources and it's looking a bit neater, I would love it if the authors of the popular software packages could chip-in themselves.


are these 2 points related
No.

I meant it would be helpful to understand what some products do by hearing directly from their authors. I'm not expecting Microsoft or Apple to drop by or change anything.


I raised the first point because it would be interesting to hear good ideas for coping with it that allow sensible mapping. In an ideal world, sensible mapping that works whether someone has abused the artist fields for composer, or not. Might be impossible.

Cheers,
David.
Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: 2Bdecided on 2013-08-16 14:40:10
While I'm collecting resources...

Some explanations of the podcast extensions...
https://github.com/judwhite/IdSharp/pull/1 (https://github.com/judwhite/IdSharp/pull/1)

Some mappings for radio information...
https://github.com/dinkypumpkin/get_iplayer/wiki/tagging (https://github.com/dinkypumpkin/get_iplayer/wiki/tagging)
http://squarepenguin.co.uk/wiki/tagging/ (http://squarepenguin.co.uk/wiki/tagging/)
Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: 2Bdecided on 2013-08-16 22:08:48
There are two things that I think would make it much better, but I don't know how to do either on a wiki.

Firstly, it would be helpful to be able to show/hide each column, letting people focus only on the format(s) they arer interested in, and reducing the table to less than one screen width if needed.

Secondly, I think a good way of highlighting the "main" tags would be to be able to optionally hide all the others, rather than separate them out permanently. When looking at the full list, it has less context (and obvious holes) when the main ones are separate. There seem to be three categories - main, others, and unmapped. It would be helpful to be able to toggle all three, with unmapped hidden by default.

I haven't finished the UPnP entries, or started some of the others. It's still here...
http://wiki.hydrogenaudio.org/index.php?title=Tag_Mapping (http://wiki.hydrogenaudio.org/index.php?title=Tag_Mapping)
...but if you merge things, I think it needs a new search-friendly title like "Tag and Metadata mapping for audio files" with a list of the formats covered near the top.

That's me done for now. I'll point some folks at this thread to see what they think. Have fun.

Cheers,
David.
Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: Rescator on 2013-08-17 15:12:34
Have fun.


*twitch*

We'll see how much damage I can do in a week.
Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: 2Bdecided on 2013-08-27 17:23:30
Any progress? Should I pick it up where I left it, or is there a newer version somewhere?

Cheers,
David.
Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: Rescator on 2013-08-28 18:31:15
Any progress? Should I pick it up where I left it, or is there a newer version somewhere?

Cheers,
David.


I've been swamped with various projects lately (prepping work to be done on 3 albums, a book (possibly series), two programming projects, website re-design plans, getting a regular job etc,, plus I've understandably refrained from doing any further work on my page, so I have not done anything to further the table contents themselves yet (I also underestimated the work, going from initially from "Hey, I can easily do this!" to "Holy shit there's a lot of insane tags out there, and more existing lists than I thought.").

However...

I did some improvements to the look of your page. I sectioned the whole thing. This allows possible contributors to edit parts/sections of the page instead of the entire page. (see Edit link to the far right on each section).
The bonus is also a nice Content table at the top of the page.
I also sectioned the other text/parts of the page, moved the issues to the bottom of the page, and added category links so that the page will show up on the wiki category page/searches as well.

I did not touch/edit the table contents or text contents. I think I might have corrected a spelling mistake here or there though (when Firefox underline something in red I have a habit of right-clicking and picking the correct spelling of a word so... Probably not the worst habit to have!  )

I also added the links that was at the bottom of my page, these should probably be blended into the notes over time (some of them most likely are referenced in the notes already.
Whether the Links section have any other use in the future who knows.

And I suggest that you look over my page and nab anything (if anything is of use at all, your page is way beyond mine now) and then just let me know and I'll delete that page. Two pages on this is just counterproductive in my opinion.

I think any coordination of page editing details with you should be done on the wiki comments page for your page if/when I come up with table additions/changes etc. (I advise others to do the same) and then you can use/coordinate those edits there. Also now that stuff is sectioned it would be easier to assign a section to somebody if they'd like to help fill/populate a particular table section fully.

But this topic/thread is still nice to discuss overall planning of the wiki page. (the comments page on a wiki page is not really that suitable for forum type of chatter IMO).
Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: 2Bdecided on 2013-08-29 11:45:18
Thanks Rescator. I like the sections, and agree with all of your suggestions.

Is there a way to make all the tables + columns the same width?

Where can I go to find a wiki formatting expert? I think lining the columns up, and allowing show/hide of columns and/or rows is the only way it'll ever look sane to anyone else.

I don't have much time to work on it either. No hurry though.

Thanks again.

Cheers,
David.
Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: 2Bdecided on 2013-09-04 10:58:26
Nothing new to add, but found relevant comments at line 3455 of this...
https://github.com/robinbowes/flac2mp3/blob.../lib/MP3/Tag.pm (https://github.com/robinbowes/flac2mp3/blob/master/lib/MP3/Tag.pm)
...bemoaning the difficulty of knowing exactly what you are mapping when you map the track artist.

Also line 77 onwards here...
https://github.com/robinbowes/flac2mp3/blob...ter/flac2mp3.pl (https://github.com/robinbowes/flac2mp3/blob/master/flac2mp3.pl)
...shows mapping used by flac2mp3. Line 113 onwards lists the names associated with each TXXX frame. Copying ReplayGain peaks when transcoding without noting the fact is unorthodox. Loss of TRACKTOTAL and DISCTOTAL is visibly annoying on many players. I guess when the "right" mapping is properly defined it can go into this code.
Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: marc2003 on 2013-09-04 18:40:19
Loss of TRACKTOTAL and DISCTOTAL is visibly annoying on many players.


i'm not sure loss is the right word? if converting flac>mp3, they should be added to the tracknumber (TRCK) and discnumber (TPOS) fields.

from id3.org (which appears to be down but i used google's cache)

Quote
TRCK
    The 'Track number/Position in set' frame is a numeric string containing the order number of the audio-file on its original recording. This may be extended with a "/" character and a numeric string containing the total numer of tracks/elements on the original recording. E.g. "4/9".


if your player/converter software doesn't make use of this, poke them with a sharp stick.

Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: JJZolx on 2013-09-04 20:48:02
if your player/converter software doesn't make use of this, poke them with a sharp stick.


Make use of it how? If the software compiles a database, it usually counts actual tracks found for an album. I haven't used any players or software where the track count from metadata would be of any use.

I also haven't encountered anything that uses the disc count. Even the disc number is of minimal use. It's either ignored completely or else used only when displaying the track number, typically shown as something like 1-1, 1-2 ... 2-1 (disc-track).
Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: marc2003 on 2013-09-04 21:19:13
just read the bit i quoted. it's useful to someone. i must admit, i can't think of anything beyond cosmetic purposes.

Quote
Even the disc number is of minimal use.


i'd have to disagree with that. it's useful to group albums with multiple discs. i suppose appending (Disc X) to the album title is a workaround but not everyone is going to be happy doing that.
Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: 2Bdecided on 2013-09-05 10:04:29
i'm not sure loss is the right word? if converting flac>mp3, they should be added to the tracknumber (TRCK) and discnumber (TPOS) fields.
Yes, exactly. flac2mp3 doesn't. I know it's open source and I could fix it. Not likely, but I've added it to my overly long list of things to do.

Quote
from id3.org (which appears to be down but i used google's cache)
id3.org has been struggling for a while.

if your player/converter software doesn't make use of this, poke them with a sharp stick.


Make use of it how? If the software compiles a database, it usually counts actual tracks found for an album.
You're assuming the player can see all the tracks and wants to scan them and/or maintain a database. That's a pretty big assumption. Several tags are there specifically to enable functionality by only reading the current track which would otherwise require scanning all the tracks. ReplayGain Album Peak is one. TRACKTOTAL and DISCTOTAL are others.

Quote
I also haven't encountered anything that uses the disc count.
I've used it when creating filenames+folders from TAGs.

A DLNA player will only have the current track, but could display all the data if it's in the tags. Knowing the total number of tracks on an album is basic functionality that's been available since albums were invented.

The totals (if correct!) also show you if a track or disc is missing.

Sorry for going OT though. This thread isn't really for arguing about the use of X or Y tag, but how it could/should be mapped between formats. I only added the info about flac2mp3 as another data point.

Cheers,
David.
Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: Sapagrino on 2013-09-27 13:31:33
Hello. I have been following this thread and recently registered on this forum. I am working though similar issues with various formats, and am in the process of creating an Excel file that shows all of the data fields used by JRiver Media Center and trying to match that up with those used by dbPoweramp and iTunes.  Being able to filter the list, hide columns, and create Pivot Tables is already proving useful.  Wondering if that is something that could be useful to this commendable effort?  Happy to share it. Thanks.

Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: 2Bdecided on 2013-09-27 17:32:08
Yes please!

Haven't made any progress on this recently, but hope to get back to it at some point.

Cheers,
David.
Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: Sapagrino on 2013-09-27 23:17:18
Great.  I can't seem to figure out how to upload the Excel file to this forum.  Could you point me in the right direction?  Thank you.
Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: 2Bdecided on 2013-09-30 09:52:50
Start a thread in the dedicated uploads forum.
Title: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: Rescator on 2013-10-11 23:31:23
Made a tiny tweak, the tables columns are now sortable.

Looking back at your previous comments....
1. With multiple tables you can't really make the columns be the same width as previous columns, the content in the cells dictate the width.
2. Hiding columns, if various formats/standards are added then the table will just get wider and wider, very little one can do about that I'm afraid.

Technically it's possible to
1. Force a column width, but this would cause text wrapping making some rows double or triple height if unlucky. And the table would get bigger without actually adding any to the content.
2. No idea if the Wiki support this (the HA wiki may not be the same as Wikipedia for example, nor may it have all the plugins or whatnot, or it might even have different plugins), hiding columns might be possible, but I know very little about Wiki formatting/syntax.

An alternative would be to use some other form of technology, some form of spreadsheet (or does Wiki have a actual spreadsheet thing that can be used?) Would a Google Spreadsheet work better? I really don't know.
Ideally something should be OOo or LibreOffice spreadsheet compatible.

Unless a Wiki guru is around, the wiki is actually possibly holding this project back (it was never designed for multi-contributor spreadsheet stuff, heck Wiki was never designed for spreadsheet stuff at all)

Anyway, I'm rambling. I was just going to quickly post and say I made all table columns sortable since it was so easy to do/add (check the version comparison and you'll see why).
Title: Re: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: alec.tron on 2016-09-12 02:00:37
Great thread & thanks for the twiki page!
Hope you don't mind me reviving it... ;)

One request though for info I was looking for but could not find in the wiki:
How do metadata value separators/delimiters tie into this ?
Any chance to have info about multi-value capabilities & formatting added to the twiki page ? (I unfortunately know too little to be able to add this myself...)

And some more in detail questions, as I'm trying to find out more in regards to this:
https://hydrogenaud.io/index.php?topic=112634
Cheers.
c.
Title: Re: Metadata/tag mapping between FLAC, mp3, and UPnP/DLNA
Post by: paultaylor on 2016-10-04 09:47:49
Hi, I am developer of SongKong and Jaikoz music taggers, but also the jaudiotagger (https://bitbucket.org/ijabz/jaudiotagger) opensrc tagging library that is used by a number of applications not just my own. I always try to use the defacto standard for tag names and make sensible choices when I have to add a new one.

Within jaudiotagger the FieldKey (https://bitbucket.org/ijabz/jaudiotagger/src/ff8c8209404022d1b78d52ce83a471f59300e663/src/org/jaudiotagger/tag/FieldKey.java?at=master&fileviewer=file-view-default) class lists all the fields and then there is a mapping for each format , i.e Mp4FieldKey (https://bitbucket.org/ijabz/jaudiotagger/src/ff8c8209404022d1b78d52ce83a471f59300e663/src/org/jaudiotagger/tag/mp4/Mp4FieldKey.java?at=master&fileviewer=file-view-default). You can see the mappings used by MusicBrainz Picard and Jaikoz here (https://docs.google.com/spreadsheets/d/1afugW3R1FRDN-mwt5SQLY4R7aLAu3RqzjN3pR1497Ok/edit#gid=0) and SongKong (which currently has more fields than Jaikoz) has a fieldmapping in the help (http://www.jthink.net/songkong/help/help.pdf)starting from page 47.

I hope this is all useful and I would be happy to discuss any issues regarding the field mappings Im using