diff options
author | Anton Khirnov <wyskas@gmail.com> | 2009-08-03 17:40:22 +0200 |
---|---|---|
committer | Max Kellermann <max@duempel.org> | 2009-08-03 17:40:22 +0200 |
commit | bff72634cafb68d53ad8902dee991d644164aa10 (patch) | |
tree | c8f6f909c1da999dc051fd583517aff5bd5cd4df | |
parent | 6f060081be272d4a8b1bcf1ad0197de4ea5cd5e3 (diff) | |
download | mpd-bff72634cafb68d53ad8902dee991d644164aa10.tar.gz mpd-bff72634cafb68d53ad8902dee991d644164aa10.tar.xz mpd-bff72634cafb68d53ad8902dee991d644164aa10.zip |
ffmpeg_plugin: convert metadata to generic format
-rw-r--r-- | NEWS | 1 | ||||
-rw-r--r-- | src/decoder/ffmpeg_plugin.c | 4 |
2 files changed, 4 insertions, 1 deletions
@@ -10,6 +10,7 @@ ver 0.16 (20??/??/??) - id3: revised "performer" tag support * decoders: - ffmpeg: support multiple tags + - ffmpeg: convert metadata to generic format - sndfile: new decoder plugin based on libsndfile - flac: load external cue sheet when no internal one * encoders: diff --git a/src/decoder/ffmpeg_plugin.c b/src/decoder/ffmpeg_plugin.c index f6003d2f3..e6646f649 100644 --- a/src/decoder/ffmpeg_plugin.c +++ b/src/decoder/ffmpeg_plugin.c @@ -353,13 +353,15 @@ ffmpeg_copy_metadata(struct tag *tag, AVMetadata *m, static bool ffmpeg_tag_internal(struct ffmpeg_context *ctx) { struct tag *tag = (struct tag *) ctx->tag; - const AVFormatContext *f = ctx->format_context; + AVFormatContext *f = ctx->format_context; tag->time = 0; if (f->duration != (int64_t)AV_NOPTS_VALUE) tag->time = f->duration / AV_TIME_BASE; #if LIBAVFORMAT_VERSION_INT >= ((52<<16)+(31<<8)+0) + av_metadata_conv(f, NULL, f->iformat->metadata_conv); + ffmpeg_copy_metadata(tag, f->metadata, TAG_ITEM_TITLE, "title"); ffmpeg_copy_metadata(tag, f->metadata, TAG_ITEM_ARTIST, "author"); ffmpeg_copy_metadata(tag, f->metadata, TAG_ITEM_ALBUM, "album"); |