Partially revert "Simplify code by using av_metadata_set2()."

This reverts snprintf->av_d2str part of r20840.
With it, track number is exported as a float, which is not
desirable.

Originally committed as revision 25845 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Anton Khirnov 2010-11-29 16:38:12 +00:00
parent 4da71f18f6
commit 82f19afefe
1 changed files with 5 additions and 3 deletions

View File

@ -21,7 +21,6 @@
#include "id3v1.h" #include "id3v1.h"
#include "libavcodec/avcodec.h" #include "libavcodec/avcodec.h"
#include "libavutil/avstring.h"
const char * const ff_id3v1_genre_str[ID3v1_GENRE_MAX + 1] = { const char * const ff_id3v1_genre_str[ID3v1_GENRE_MAX + 1] = {
[0] = "Blues", [0] = "Blues",
@ -202,6 +201,7 @@ static void get_string(AVFormatContext *s, const char *key,
*/ */
static int parse_tag(AVFormatContext *s, const uint8_t *buf) static int parse_tag(AVFormatContext *s, const uint8_t *buf)
{ {
char str[5];
int genre; int genre;
if (!(buf[0] == 'T' && if (!(buf[0] == 'T' &&
@ -213,8 +213,10 @@ static int parse_tag(AVFormatContext *s, const uint8_t *buf)
get_string(s, "album", buf + 63, 30); get_string(s, "album", buf + 63, 30);
get_string(s, "date", buf + 93, 4); get_string(s, "date", buf + 93, 4);
get_string(s, "comment", buf + 97, 30); get_string(s, "comment", buf + 97, 30);
if (buf[125] == 0 && buf[126] != 0) if (buf[125] == 0 && buf[126] != 0) {
av_metadata_set2(&s->metadata, "track", av_d2str(buf[126]), AV_METADATA_DONT_STRDUP_VAL); snprintf(str, sizeof(str), "%d", buf[126]);
av_metadata_set2(&s->metadata, "track", str, 0);
}
genre = buf[127]; genre = buf[127];
if (genre <= ID3v1_GENRE_MAX) if (genre <= ID3v1_GENRE_MAX)
av_metadata_set2(&s->metadata, "genre", ff_id3v1_genre_str[genre], 0); av_metadata_set2(&s->metadata, "genre", ff_id3v1_genre_str[genre], 0);