aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnton Khirnov <wyskas@gmail.com>2010-11-29 16:38:12 +0000
committerAnton Khirnov <wyskas@gmail.com>2010-11-29 16:38:12 +0000
commit82f19afefe4f28db0e2eefbc2d06eee0def74a53 (patch)
tree50ff890cc7c6bb0b49842425ffe1e90f00375933
parent4da71f18f68877b57806308b7d79ffbb5f076272 (diff)
downloadffmpeg-82f19afefe4f28db0e2eefbc2d06eee0def74a53.tar.gz
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
-rw-r--r--libavformat/id3v1.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/libavformat/id3v1.c b/libavformat/id3v1.c
index c72fca49cb..481db9735e 100644
--- a/libavformat/id3v1.c
+++ b/libavformat/id3v1.c
@@ -21,7 +21,6 @@
#include "id3v1.h"
#include "libavcodec/avcodec.h"
-#include "libavutil/avstring.h"
const char * const ff_id3v1_genre_str[ID3v1_GENRE_MAX + 1] = {
[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)
{
+ char str[5];
int genre;
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, "date", buf + 93, 4);
get_string(s, "comment", buf + 97, 30);
- if (buf[125] == 0 && buf[126] != 0)
- av_metadata_set2(&s->metadata, "track", av_d2str(buf[126]), AV_METADATA_DONT_STRDUP_VAL);
+ if (buf[125] == 0 && buf[126] != 0) {
+ snprintf(str, sizeof(str), "%d", buf[126]);
+ av_metadata_set2(&s->metadata, "track", str, 0);
+ }
genre = buf[127];
if (genre <= ID3v1_GENRE_MAX)
av_metadata_set2(&s->metadata, "genre", ff_id3v1_genre_str[genre], 0);