[SCM] libav/experimental: ffmpeg.c: dynamically allocate metadata maps

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 17:18:17 UTC 2013


The following commit has been merged in the experimental branch:
commit 63e856df0ac750dd4fefb6fc72ca4826ebdb5a0f
Author: Anton Khirnov <wyskas at gmail.com>
Date:   Thu Oct 28 20:28:22 2010 +0000

    ffmpeg.c: dynamically allocate metadata maps
    
    Originally committed as revision 25599 to svn://svn.ffmpeg.org/ffmpeg/trunk

diff --git a/ffmpeg.c b/ffmpeg.c
index 3c92a26..7799868 100644
--- a/ffmpeg.c
+++ b/ffmpeg.c
@@ -124,7 +124,7 @@ static int nb_output_codecs = 0;
 static AVStreamMap *stream_maps = NULL;
 static int nb_stream_maps;
 
-static AVMetaDataMap meta_data_maps[MAX_FILES];
+static AVMetaDataMap *meta_data_maps = NULL;
 static int nb_meta_data_maps;
 
 /* indexed by output file stream index */
@@ -534,6 +534,7 @@ static int ffmpeg_exit(int ret)
     av_free(input_codecs);
     av_free(output_codecs);
     av_free(stream_maps);
+    av_free(meta_data_maps);
 
     av_free(video_codec_name);
     av_free(audio_codec_name);
@@ -2873,8 +2874,10 @@ static void opt_map_meta_data(const char *arg)
     AVMetaDataMap *m;
     char *p;
 
-    m = &meta_data_maps[nb_meta_data_maps++];
+    meta_data_maps = grow_array(meta_data_maps, sizeof(*meta_data_maps),
+                                &nb_meta_data_maps, nb_meta_data_maps + 1);
 
+    m = &meta_data_maps[nb_meta_data_maps - 1];
     m->out_file = strtol(arg, &p, 0);
     if (*p)
         p++;

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list