[FFmpeg-devel] [PATCH v1] lavf/mp3enc: fix ID3v1 year metadata setting issue

Anton Khirnov anton at khirnov.net
Mon Apr 20 15:11:30 EEST 2020


Quoting mypopy at gmail.com (2020-04-20 14:05:50)
> On Mon, Apr 20, 2020 at 8:00 PM Anton Khirnov <anton at khirnov.net> wrote:
> >
> > Quoting Jun Zhao (2020-04-20 10:17:06)
> > > From: Jun Zhao <barryjzhao at tencent.com>
> > >
> > > Follow the http://id3.org/ID3v1, setting the year metadata
> > > for ID3v1.
> > >
> > > fix #8623
> > >
> > > Signed-off-by: Jun Zhao <barryjzhao at tencent.com>
> > > ---
> > >  libavformat/mp3enc.c | 3 ++-
> > >  1 file changed, 2 insertions(+), 1 deletion(-)
> > >
> > > diff --git a/libavformat/mp3enc.c b/libavformat/mp3enc.c
> > > index 34b753f..157174f 100644
> > > --- a/libavformat/mp3enc.c
> > > +++ b/libavformat/mp3enc.c
> > > @@ -45,6 +45,7 @@ static int id3v1_set_string(AVFormatContext *s, const char *key,
> > >      return !!tag;
> > >  }
> > >
> > > +// refer to: http://id3.org/ID3v1
> > >  static int id3v1_create_tag(AVFormatContext *s, uint8_t *buf)
> > >  {
> > >      AVDictionaryEntry *tag;
> > > @@ -58,7 +59,7 @@ static int id3v1_create_tag(AVFormatContext *s, uint8_t *buf)
> > >      count += id3v1_set_string(s, "TIT2",    buf +  3, 30 + 1);       //title
> > >      count += id3v1_set_string(s, "TPE1",    buf + 33, 30 + 1);       //author|artist
> > >      count += id3v1_set_string(s, "TALB",    buf + 63, 30 + 1);       //album
> > > -    count += id3v1_set_string(s, "TDRC",    buf + 93,  4 + 1);       //date
> > > +    count += id3v1_set_string(s, "TYER",    buf + 93,  4 + 1);       //year
> >
> > This will break for ID3v2.4, no?
> >
> Why? This change is just changing the ID3v1

The "date" tag is converted to "TDRC" for v2.4 and "TYER"/"TDAT" for
v2.3.

-- 
Anton Khirnov


More information about the ffmpeg-devel mailing list