Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/FFmpeg/FFmpeg.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefano Sabatini <stefano.sabatini-lala@poste.it>2010-10-16 19:25:02 +0400
committerStefano Sabatini <stefano.sabatini-lala@poste.it>2010-10-16 19:25:02 +0400
commit4bf65e2a4d6ad9a6fda368712fe7022ee990c6fb (patch)
treeb6e832d093c139744d9cfc8d0a435b05a12b0d0b /ffmpeg.c
parent4712ed26ee87d593f520c4f2bbb3d88616f5c594 (diff)
Use an AVMetadata struct for storing metadata, simplify.
Originally committed as revision 25508 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'ffmpeg.c')
-rw-r--r--ffmpeg.c15
1 files changed, 5 insertions, 10 deletions
diff --git a/ffmpeg.c b/ffmpeg.c
index 999cb46ed5..63b4b5ff77 100644
--- a/ffmpeg.c
+++ b/ffmpeg.c
@@ -188,8 +188,7 @@ static int64_t start_time = 0;
static int64_t recording_timestamp = 0;
static int64_t input_ts_offset = 0;
static int file_overwrite = 0;
-static int metadata_count;
-static AVMetadataTag *metadata;
+static AVMetadata *metadata;
static int do_benchmark = 0;
static int do_hex_dump = 0;
static int do_pkt_dump = 0;
@@ -2866,10 +2865,7 @@ static int opt_metadata(const char *opt, const char *arg)
}
*mid++= 0;
- metadata_count++;
- metadata= av_realloc(metadata, sizeof(*metadata)*metadata_count);
- metadata[metadata_count-1].key = av_strdup(arg);
- metadata[metadata_count-1].value= av_strdup(mid);
+ av_metadata_set2(&metadata, arg, mid, 0);
return 0;
}
@@ -3676,6 +3672,7 @@ static void opt_output_file(const char *filename)
int input_has_video, input_has_audio, input_has_subtitle;
AVFormatParameters params, *ap = &params;
AVOutputFormat *file_oformat;
+ AVMetadataTag *tag = NULL;
if (!strcmp(filename, "-"))
filename = "pipe:";
@@ -3757,10 +3754,8 @@ static void opt_output_file(const char *filename)
oc->timestamp = recording_timestamp;
- for(; metadata_count>0; metadata_count--){
- av_metadata_set2(&oc->metadata, metadata[metadata_count-1].key,
- metadata[metadata_count-1].value, 0);
- }
+ while ((tag = av_metadata_get(metadata, "", tag, AV_METADATA_IGNORE_SUFFIX)))
+ av_metadata_set2(&oc->metadata, tag->key, tag->value, 0);
}
output_files[nb_output_files++] = oc;