summaryrefslogtreecommitdiff
path: root/ffmpeg_opt.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2012-12-20 17:37:08 +0100
committerMichael Niedermayer <michaelni@gmx.at>2012-12-20 17:45:43 +0100
commit103410d67ec9035b9fc04a0685d6d921bdb7524e (patch)
tree13a934949e9a5151552cf63c2ca6a8cf0da88386 /ffmpeg_opt.c
parentc7a1239bf9807cc0a6a2d9a004877578c258fdbf (diff)
downloadffmpeg-103410d67ec9035b9fc04a0685d6d921bdb7524e.tar.gz
ffmpeg_opt: fix recording time in->out carryover.
This should fix valgrind complaints. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'ffmpeg_opt.c')
-rw-r--r--ffmpeg_opt.c20
1 files changed, 11 insertions, 9 deletions
diff --git a/ffmpeg_opt.c b/ffmpeg_opt.c
index a57c88515d..fcd6048cfa 100644
--- a/ffmpeg_opt.c
+++ b/ffmpeg_opt.c
@@ -95,6 +95,8 @@ static int intra_dc_precision = 8;
static int do_psnr = 0;
static int input_sync;
+static int64_t recording_time = INT64_MAX;
+
static void uninit_options(OptionsContext *o, int is_input)
{
const OptionDef *po = options;
@@ -125,21 +127,21 @@ static void uninit_options(OptionsContext *o, int is_input)
av_freep(&o->audio_channel_maps);
av_freep(&o->streamid_map);
- if (!is_input)
- o->recording_time = INT64_MAX;
+ if (is_input)
+ recording_time = o->recording_time;
+ else
+ recording_time = INT64_MAX;
}
static void init_options(OptionsContext *o, int is_input)
{
- OptionsContext bak= *o;
memset(o, 0, sizeof(*o));
- if (!is_input) {
- o->recording_time = bak.recording_time;
- if (o->recording_time != INT64_MAX)
- av_log(NULL, AV_LOG_WARNING,
- "-t is not an input option, keeping it for the next output;"
- " consider fixing your command line.\n");
+ if (!is_input && recording_time != INT64_MAX) {
+ o->recording_time = recording_time;
+ av_log(NULL, AV_LOG_WARNING,
+ "-t is not an input option, keeping it for the next output;"
+ " consider fixing your command line.\n");
} else
o->recording_time = INT64_MAX;
o->mux_max_delay = 0.7;