[SCM] libav/experimental: use new metadata API in nut muxer This is only a straight conversion of current code, so for now, it won't mux generic metadata. It will only mux Title, Author and Copyright.

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 16:39:51 UTC 2013


The following commit has been merged in the experimental branch:
commit 73914d56d9b43ce9cc832e2c55cfd771c2d1ba3b
Author: Aurelien Jacobs <aurel at gnuage.org>
Date:   Fri Feb 27 23:12:14 2009 +0000

    use new metadata API in nut muxer
    This is only a straight conversion of current code, so for now, it won't
    mux generic metadata. It will only mux Title, Author and Copyright.
    
    Originally committed as revision 17653 to svn://svn.ffmpeg.org/ffmpeg/trunk

diff --git a/libavformat/nutenc.c b/libavformat/nutenc.c
index 3482d52..f89882b 100644
--- a/libavformat/nutenc.c
+++ b/libavformat/nutenc.c
@@ -448,6 +448,7 @@ static int add_info(ByteIOContext *bc, const char *type, const char *value){
 
 static int write_globalinfo(NUTContext *nut, ByteIOContext *bc){
     AVFormatContext *s= nut->avf;
+    AVMetadataTag *title, *author, *copyright;
     ByteIOContext *dyn_bc;
     uint8_t *dyn_buf=NULL;
     int count=0, dyn_size;
@@ -455,9 +456,13 @@ static int write_globalinfo(NUTContext *nut, ByteIOContext *bc){
     if(ret < 0)
         return ret;
 
-    if(s->title    [0]) count+= add_info(dyn_bc, "Title"    , s->title);
-    if(s->author   [0]) count+= add_info(dyn_bc, "Author"   , s->author);
-    if(s->copyright[0]) count+= add_info(dyn_bc, "Copyright", s->copyright);
+    title     = av_metadata_get(s->metadata, "Title"    , NULL, 0);
+    author    = av_metadata_get(s->metadata, "Author"   , NULL, 0);
+    copyright = av_metadata_get(s->metadata, "Copyright", NULL, 0);
+
+    if(title    ) count+= add_info(dyn_bc, "Title"    , title->value);
+    if(author   ) count+= add_info(dyn_bc, "Author"   , author->value);
+    if(copyright) count+= add_info(dyn_bc, "Copyright", copyright->value);
     if(!(s->streams[0]->codec->flags & CODEC_FLAG_BITEXACT))
                         count+= add_info(dyn_bc, "Encoder"  , LIBAVFORMAT_IDENT);
 

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list