Commit 13f6917c authored by Anton Khirnov's avatar Anton Khirnov

avconv: set discard on input streams automatically.

parent 790a367d
...@@ -3170,6 +3170,7 @@ static void add_input_streams(OptionsContext *o, AVFormatContext *ic) ...@@ -3170,6 +3170,7 @@ static void add_input_streams(OptionsContext *o, AVFormatContext *ic)
ist->st = st; ist->st = st;
ist->file_index = nb_input_files; ist->file_index = nb_input_files;
ist->discard = 1; ist->discard = 1;
st->discard = AVDISCARD_ALL;
ist->opts = filter_codec_opts(codec_opts, ist->st->codec->codec_id, ic, st); ist->opts = filter_codec_opts(codec_opts, ist->st->codec->codec_id, ic, st);
ist->ts_scale = 1.0; ist->ts_scale = 1.0;
...@@ -3178,10 +3179,6 @@ static void add_input_streams(OptionsContext *o, AVFormatContext *ic) ...@@ -3178,10 +3179,6 @@ static void add_input_streams(OptionsContext *o, AVFormatContext *ic)
ist->dec = choose_decoder(o, ic, st); ist->dec = choose_decoder(o, ic, st);
switch (dec->codec_type) { switch (dec->codec_type) {
case AVMEDIA_TYPE_AUDIO:
if (o->audio_disable)
st->discard = AVDISCARD_ALL;
break;
case AVMEDIA_TYPE_VIDEO: case AVMEDIA_TYPE_VIDEO:
if (dec->lowres) { if (dec->lowres) {
dec->flags |= CODEC_FLAG_EMU_EDGE; dec->flags |= CODEC_FLAG_EMU_EDGE;
...@@ -3189,17 +3186,10 @@ static void add_input_streams(OptionsContext *o, AVFormatContext *ic) ...@@ -3189,17 +3186,10 @@ static void add_input_streams(OptionsContext *o, AVFormatContext *ic)
dec->width >>= dec->lowres; dec->width >>= dec->lowres;
} }
if (o->video_disable)
st->discard = AVDISCARD_ALL;
else if (video_discard)
st->discard = video_discard;
break; break;
case AVMEDIA_TYPE_AUDIO:
case AVMEDIA_TYPE_DATA: case AVMEDIA_TYPE_DATA:
break;
case AVMEDIA_TYPE_SUBTITLE: case AVMEDIA_TYPE_SUBTITLE:
if (o->subtitle_disable)
st->discard = AVDISCARD_ALL;
break;
case AVMEDIA_TYPE_ATTACHMENT: case AVMEDIA_TYPE_ATTACHMENT:
case AVMEDIA_TYPE_UNKNOWN: case AVMEDIA_TYPE_UNKNOWN:
break; break;
...@@ -3873,6 +3863,7 @@ static void opt_output_file(void *optctx, const char *filename) ...@@ -3873,6 +3863,7 @@ static void opt_output_file(void *optctx, const char *filename)
ost->source_index = index;\ ost->source_index = index;\
ost->sync_ist = &input_streams[index];\ ost->sync_ist = &input_streams[index];\
input_streams[index].discard = 0;\ input_streams[index].discard = 0;\
input_streams[index].st->discard = AVDISCARD_NONE;\
} }
/* video: highest resolution */ /* video: highest resolution */
...@@ -3936,6 +3927,7 @@ static void opt_output_file(void *optctx, const char *filename) ...@@ -3936,6 +3927,7 @@ static void opt_output_file(void *optctx, const char *filename)
ost->sync_ist = &input_streams[input_files[map->sync_file_index].ist_index + ost->sync_ist = &input_streams[input_files[map->sync_file_index].ist_index +
map->sync_stream_index]; map->sync_stream_index];
ist->discard = 0; ist->discard = 0;
ist->st->discard = AVDISCARD_NONE;
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment