SongKong Jaikoz

SongKong and Jaikoz Music Tagger Community Forum

copy tags from one file to another or export/import tags

I have a tricky question about tagging flac files.

I have a classical CD that I’ve ripped with both EAC and dbPowerAmp Reference (trial) with 30 day AMG access.

I prefer the rip from EAC, as I feel it is more accurate for a couple of technical reasons that are not relevant to the question.

However, the rip from dbPowerAmp is properly tagged from AMG, the only source I’ve found that has the proper tagging information for this release.

Is there any way I can copy the tags from the dbPowerAmp ripped release to the rip from EAC?

Thanks,
-Mark

I can actually respond to my own question this time for the sake of anyone who may at some point need to know the answer.

The metaflac program (included with flac) has the ability to export/import flac tags to a file. I could not find a gui for metaflac but I was able to write a couple of short windows batch files that accomplished the task.

I do not generally do much windows programming as I am primarily a Java/Unix programmer but it wasn’t so hard. Just make sure both sets of files have the same file names and iterate over them with the metaflac.exe command and the appropriate flags.

It took two batch files to do this though had I been more familiar with Windows batch files it might have been less work. Someone really needs to write a metaflac gui though. It could be very useful in situations such as these.

I’ve been thinking that when I get the time I will look at the jaudiotagger library and see if I can perhaps contribute in some way. This might be a way. However, I must admit I’ve never done any work with audio tagging before.

-Mark

On the todo list in Jaikoz is a task to save/import/export tags so in the future you would be able to save the metadata from one file (your dbpoweramp rip) and then import into another file (your eac rip) - but this hasnt been done yet.

Any help with jaudiotagger would always be appreciated. There is already a MP3File.extractID3v2TagDataIntoFile(File outputFile) method for extracting the raw ID3 tag from an MP3 file, and a org.jaudiotagger.test. ExtractID3TagFromFile test program that uses this. But I really need to extract the tag in a tag format independent way so you could then add information from an MP3 to a Flac file for example. Theres nothing done for flac,oggvorbis yet…

My first thought was a black-box XSL transform engine but imagine my surprise when a quick Google search comes back with no ID3 type schemas??? I’m surprised that every music related metadata format doesn’t have an associated DTD and XML representation.

Music tagging must really be the last hold out in this respect. I’m not usually a fan of XML/XSL processing in general but it does seem like the best tool for the job, at least in this case. Or at least it would have been, had there been an existing maintained standard for all of the various music related metadata formats. It wouldn’t be practical to roll your own.

I guess that leaves good ole CSV (using standardized naming rules) as the next option. Unless you want to get into database storage again, and I think we’ve been down that road before. Then there is the question of how to deal with binary data in the tags?

Edit:

It just occurred to me that dbPowerAmp does batch conversion of formats and has an option to “preserve tags” so it must do some sort tag export/import.

I have converted ape to flac before using this method and I’d assume that there is a intermediate decompress to wav before the file is converted to flac so they must be extracting the tags to text beforehand or they’d lose the tags.

-Mark

I have found another program to do this that may be easier than metaflac.exe

http://wiki.hydrogenaudio.org/index.php?title=Tag_(tagger)#Additional_Reading

I have not tested it yet though.

-Mark

Thanks for investigating, I looked for an xml metadata format once before and was suprised not to find one, though there was a draft spec from Xiph.org (the developers of OggVorbis and Flac) described at http://wiki.xiph.org/index.php/M3F but I wasnt very impressed with this.

There is also the XML represententation of the iTunes library, but this very poor.

There is also the XML Schema that is retrieved by the MusicBrainz XML Webservice, http://wiki.musicbrainz.org/MusicBrainzXMLMetaData?highlight=(xml)

I think we might be able to use the Musicbrainz schema, as they have already discussed on the link above how to use the schema for other applications, if we took a track centric view it would probably work. And it the future it might be possible to use the output of a libbrary in this format to update the Musicbrainz database.

Csv wouldnt work because it falls over when dealing with multiple items, for example you could have a genre column , but what happens if the track has 2,3 or 5 genres.

Also remember there wouldnt be much point linking into the apps you describe because jaikoz has to work for all the formats it supports and for all the Operting systems it supports (Windows,OSX,Linux)