[SCM] libav/experimental: Add id3v2 metadata conversion table and use it in mp3 muxer.

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 16:52:07 UTC 2013


The following commit has been merged in the experimental branch:
commit 6378b062081f461b4e7d245aad7c8f67ba4bb2f1
Author: Anton Khirnov <wyskas at gmail.com>
Date:   Tue Sep 29 07:05:03 2009 +0000

    Add id3v2 metadata conversion table and use it in mp3 muxer.
    
    Patch by Anton Khirnov, wyskas gmail
    
    Originally committed as revision 20073 to svn://svn.ffmpeg.org/ffmpeg/trunk

diff --git a/libavformat/id3v2.c b/libavformat/id3v2.c
index dedc045..651c8fc 100644
--- a/libavformat/id3v2.c
+++ b/libavformat/id3v2.c
@@ -242,3 +242,22 @@ void ff_id3v2_parse(AVFormatContext *s, int len, uint8_t version, uint8_t flags)
     av_log(s, AV_LOG_INFO, "ID3v2.%d tag skipped, cannot handle %s\n", version, reason);
     url_fskip(s->pb, len);
 }
+
+const AVMetadataConv ff_id3v2_metadata_conv[] = {
+    { "TALB", "album"},
+    { "TCOM", "composer"},
+    { "TCON", "genre"},
+    { "TCOP", "copyright"},
+    { "TDRL", "date"},
+    { "TENC", "encoder"},
+    { "TIT2", "title"},
+    { "TLAN", "language"},
+    { "TPE1", "author"},
+    { "TPOS", "disc"},
+    { "TPUB", "publisher"},
+    { "TRCK", "track"},
+    { "TSOA", "albumsort"},
+    { "TSOP", "authorsort"},
+    { "TSOT", "titlesort"},
+    { 0 }
+};
diff --git a/libavformat/id3v2.h b/libavformat/id3v2.h
index 791c00c..3e981a4 100644
--- a/libavformat/id3v2.h
+++ b/libavformat/id3v2.h
@@ -24,6 +24,7 @@
 
 #include <stdint.h>
 #include "avformat.h"
+#include "metadata.h"
 
 #define ID3v2_HEADER_SIZE 10
 
@@ -51,4 +52,6 @@ void ff_id3v2_parse(AVFormatContext *s, int len, uint8_t version, uint8_t flags)
  */
 void ff_id3v2_read(AVFormatContext *s);
 
+extern const AVMetadataConv ff_id3v2_metadata_conv[];
+
 #endif /* AVFORMAT_ID3V2_H */
diff --git a/libavformat/mp3.c b/libavformat/mp3.c
index ab57227..42ca42f 100644
--- a/libavformat/mp3.c
+++ b/libavformat/mp3.c
@@ -341,5 +341,6 @@ AVOutputFormat mp3_muxer = {
     mp3_write_header,
     mp3_write_packet,
     mp3_write_trailer,
+    .metadata_conv = ff_id3v2_metadata_conv,
 };
 #endif

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list