On Wed, Apr 22, 2020 at 3:57 PM Jun Zhao <mypopy...@gmail.com> wrote: > > From: Jun Zhao <barryjz...@tencent.com> > > Follow the http://id3.org/ID3v1, setting the year metadata > for ID3v1. > > fix #8623 > > Signed-off-by: Jun Zhao <barryjz...@tencent.com> > --- > libavformat/mp3enc.c | 13 ++++++++++++- > 1 file changed, 12 insertions(+), 1 deletion(-) > > diff --git a/libavformat/mp3enc.c b/libavformat/mp3enc.c > index 34b753f..14d4b6e 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,17 @@ 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 > + if ((tag = av_dict_get(s->metadata, "TYER", NULL, 0))) { //year > + av_strlcpy(buf + 93, tag->value, 4 + 1); > + count++; > + } else if ((tag = av_dict_get(s->metadata, "TDRC", NULL, 0))) { > + av_strlcpy(buf + 93, tag->value, 4 + 1); > + count++; > + } else if ((tag = av_dict_get(s->metadata, "TDAT", NULL, 0))) { > + av_strlcpy(buf + 93, tag->value, 4 + 1); > + count++; > + } > + > count += id3v1_set_string(s, "comment", buf + 97, 30 + 1); > if ((tag = av_dict_get(s->metadata, "TRCK", NULL, 0))) { //track > buf[125] = 0; > -- > 2.7.4 > ping ? _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".