[mythtv] Re: [PATCH] Fix MythMusic metadata extracting from filename

Colin Guthrie myth at colin.guthr.ie
Tue Mar 22 14:01:15 UTC 2005


Hi all,

Sorry I've not been about for a while. Been decorating my flat in 
preparation for selling it, so havn't had much time for mything....


Paul wrote:
>>Slightly off topic, spent ages trying to work out why the tag edits
>>weren't being written to some of my mp3s...
 >
> I wrote the original metadata editor code but Colin Guthrie wrote the metaio
> classes
> that does the reading/writing of the metadata to the file. He's knows more
> about the
> tag writing code than I do.
> 
> There does seem to be many problems with the libid3tag library that is used
> to read/write
> the mp3 tag stuff in MythMusic. I believe one of the problems is that it
> cannot increase the
> size of the tag at all. The problems you are having could be related to
> that.
> 
> There was some discussion about dropping the libid3tag for another library
> but Isaac wasn't
> happy about adding another dependency.


There are a lot of caveats with the ID3 stuff :(

Due to dependancy restrictions I couldn't use taglib (my preferred 
choice for tagging stuff) and had to stick with libid3tag which is 
fairly pants if I'm honest. There are big chunks of code that are just 
"/* fix me */" style comments. :(

The code will not write to an MP3 that has no comment. THis is why in 
the encoding process for MP3s I use LAMEs id3 writing code to write a 
dummy tag and after the track is encoded I write the proper tag using 
libid3tag.

It may also fail if it has to grow the tag, although I'm pretty sure I 
coded a workaround for this.

I did have to write a libid3tag_hack.c file which is in MythMusic to try 
and work around the libraries various deficiences.



I've actually got a very different approach to solving all of the above 
problems in one foul swoop. It is by starting a separate companion 
project called (for the sake of giving it a name) MetaLibrarian. This 
will be a central resource database/api that will store all the 
metainformation about all your music (and eventually images) in a way 
that all applications on your PC/on your network can use to query meta 
information.

I use two apps mainly for music managment/playing: amarok and MythMusic 
they both have their place and have a common base of features.

I wont rant on this thread as I want to write up a more thought out 
proposal for MetaLibrarian and how it would work with Myth, amarok etc. 
as well as how it would work in a DAAP type environment too.

I'll post a link to my thoughts in the next day or two and how I see it 
fitting in with Myth (it may mean extra dependacies or a wrapped up copy 
of any extra libs in mythmusic/libmyth itself, but I've not thought it 
out that far yet).

Look out for a messsage titled "MetaLibrarian RFC"

Cheers

Col.

-- 

+------------------------+
|     Colin Guthrie      |
+------------------------+
|  myth at colin.guthr.ie   |
| http://colin.guthr.ie/ |
+------------------------+


More information about the mythtv-dev mailing list