After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 325994 - LAME encoder has pants support for metadata
LAME encoder has pants support for metadata
Status: RESOLVED WONTFIX
Product: GStreamer
Classification: Platform
Component: gst-plugins-ugly
git master
Other Linux
: Normal normal
: NONE
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2006-01-06 15:41 UTC by Ross Burton
Modified: 2006-03-13 10:14 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Ross Burton 2006-01-06 15:41:31 UTC
The LAME encoder plugin doesn't support much metadata:

static GstLameTagMatch tag_matches[] = {
  {GST_TAG_TITLE, id3tag_set_title},
  {GST_TAG_DATE, id3tag_set_year},
  {GST_TAG_TRACK_NUMBER, id3tag_set_track},
  {GST_TAG_COMMENT, id3tag_set_comment},
  {GST_TAG_ARTIST, id3tag_set_artist},
  {GST_TAG_ALBUM, id3tag_set_album},
  {GST_TAG_GENRE, (GstLameTagFunc) id3tag_set_genre},
  {NULL, NULL}
};

GST_TAG_DURATION needs to be supported for VBR MP3 files, Sound Juicer also sets:

_TRACK_COUNT
_ENCODER
_ENCODER_VERSION
_MUSICBRAINZ_ALBUMID
_MUSICBRAINZ_ALBUMARTISTID
_MUSICBRAINZ_ARTISTID
_MUSICBRAINZ_TRACKID
Comment 1 Andy Wingo 2006-01-13 17:04:33 UTC
Patch? :)
Comment 2 Tim-Philipp Müller 2006-01-23 17:58:17 UTC
Does lame itself support anything else (besides track count, which it apparently does support in some CVS version somewhere, at least according to bug #323693, and duration via xing headers)?

I only have:

% grep tag_set /usr/include/lame/lame.h
extern void id3tag_set_title(
extern void id3tag_set_artist(
extern void id3tag_set_album(
extern void id3tag_set_year(
extern void id3tag_set_comment(
extern void id3tag_set_track(
extern int id3tag_set_genre(

Comment 3 Christophe Fergeau 2006-02-07 21:57:29 UTC
I just filed bug #330317 with a patch to make the lame encoder write xing headers, but I'm not sure if this bug can be closed as a duplicate or not.
Comment 4 Tim-Philipp Müller 2006-02-07 23:51:36 UTC
Xing headers don't really contain any of the tags requested (like musicbrainz ids) , do they? So how would it be a duplicate? :)

IMHO this stuff should be added to id3mux rather than lame though, but that's just me.
Comment 5 Jan Schmidt 2006-02-08 01:22:08 UTC
Noone has yet been able to show me how LAME has any way of writing ID3v2 except to a _seekable_ file descriptor, so really all the ID3 writing stuff in LAME should just die and move to id3mux

Writing a Xing header is another issue, but with the same problem - LAME doesn't seem to have any API to just give us some data and ask us to write it at a location in the file, so we'll have to write our own Xing header as in bug #330317
Comment 6 Christophe Fergeau 2006-02-08 07:50:55 UTC
Tim, I quickly read the original bug report, and stopped reading at "GST_TAG_DURATION needs to be supported for VBR MP3 files" :) That's why I said it might be a duplicate :p
Comment 7 Tim-Philipp Müller 2006-03-13 09:53:23 UTC
The consensus seems to be that this is not going to be fixed in lame, and that lame shouldn't be used for tag writing at all (as it's broken anyway).

Tag writing should be done using id3mux and/or the new tagid3v2mux element, and that's where any additions should go as well.

FWIW, I've just added support for writing the musicbrainz tags to the tagid3v2mux element, and it already supports TRACK_COUNT if I'm not mistaken, so that should cover most of your request.

That leaves only the ENCODING tags and sound-juicer shouldn't be setting those anyway IMHO (the encoder is lame, not sound-juicer).

WONTFIXing this bug. Please file anything else you find missing against the id3mux element in -ugly or the tagid3v2mux element in -bad.

My intention is to move the taglib based tag muxer into -good at some point and make it (transparently) replace id3mux as well then, but that's just me.
Comment 8 Christophe Fergeau 2006-03-13 10:14:33 UTC
I can confirm that tagid3v2mux suports TRACK_COUNT. GST_TAG_DURATION can be written using xingmux (in -bad HEAD).