Gang,

A few hours ago, I checked ID3 version 2 tag support into the LAME CVS
tree.  Actually, it's a complete rewrite of all the ID3 tagging code,
including the version 1 support.  The implementation works pretty much
like what I outlined in my proposal a little over a week ago on this
mailing list at:

    http://www.mail-archive.com/mp3encoder@geek.rcc.se/msg03336.html

The only difference is that, by default, version 1 tags are padded with
nulls rather than spaces, a behavior consistent with the actual standard
and the direction other tools are moving.

But have no fear!  If you actually do use LAME to tag your new MP3
files, and you hate version 2 tags and want those spaces back in your
version 1 tags, then use a command line something like this to duplicate
the old behavior:

    lame --id3v1-only --space-id3v1 <infile> [outfile]

In case this seems really confusing, here's a partial dump of the output
of the `--longhelp' option to put this whole tagging stuff into the
proper context:


  ID3 tag options:
    --tt <title>    audio/song title (max 30 chars for version 1 tag)
    --ta <artist>   audio/song artist (max 30 chars for version 1 tag)
    --tl <album>    audio/song album (max 30 chars for version 1 tag)
    --ty <year>     audio/song year of issue (1 to 9999)
    --tc <comment>  user-defined text (max 30 chars for v1 tag, 28 for v1.1)
    --tn <track>    audio/song track number (1 to 99, creates v1.1 tag)
    --tg <genre>    audio/song genre (name or number in list)
    --add-id3v2     force addition of version 2 tag
    --id3v1-only    add only a version 1 tag
    --id3v2-only    add only a version 2 tag
    --space-id3v1   pad version 1 tag with spaces instead of nulls
    --pad-id3v2     pad version 2 tag with extra 128 bytes
    --genre-list    print alphabetically sorted ID3 genre list and exit

    Note: A version 2 tag will NOT be added unless one of the input fields
    won't fit in a version 1 tag (e.g. the title string is longer than 30
    characters), or the `--add-id3v2' or `--id3v2-only' options are used,
    or output is redirected to stdout.


I didn't make it into the 3.85 tarball with these changes but if you're
really curious and not a CVS geek, I've patched the 3.85 tarball with
this code and made it available at:

    http://blivet.com/software/lame/download/lame3.85id3v2.tar.gz

I've also made the patch file itself available at:

    http://blivet.com/software/lame/download/lame3.85id3v2.patch

XMMS, Freeamp, and MPTagger all have no problems reading and displaying
the version 2 tags.  I actually store the tag frames in exactly the same
order and format as MPTagger.  If you're a Windoze person, then you can
use MPTagger (see "http://www.mptagger.com/") to edit LAME tag output.

Currently, there is no decent ID3 version 2 tag editor on Linux.  Which
is why I'm writing one. :-)  The new code in LAME is actually based on
an early version of it.  With any luck, I'll have it available at the
end of the month in source and binary form for Linux and Windoze.

-- 
Don Melton
mailto:[EMAIL PROTECTED]
--
MP3 ENCODER mailing list ( http://geek.rcc.se/mp3encoder/ )

Reply via email to