diff options
author | Anton Khirnov <anton@khirnov.net> | 2015-06-28 08:03:44 +0200 |
---|---|---|
committer | Anton Khirnov <anton@khirnov.net> | 2015-07-19 09:34:08 +0200 |
commit | 59245e0c5e10a849e67c632cccf4f677b2442e82 (patch) | |
tree | eb1d2d09df75d2240efc524803bb30831f740a95 | |
parent | 56c2f37727015212a404cae0f444d8bc8704d691 (diff) | |
download | ffmpeg-59245e0c5e10a849e67c632cccf4f677b2442e82.tar.gz |
avconv: set the encoding/decoding_needed flags earlier
This will be useful in the following commits.
-rw-r--r-- | avconv.c | 4 | ||||
-rw-r--r-- | avconv_opt.c | 11 |
2 files changed, 11 insertions, 4 deletions
@@ -1774,10 +1774,6 @@ static int transcode_init(void) goto dump_format; } - if (ist) - ist->decoding_needed = 1; - ost->encoding_needed = 1; - set_encoder_id(output_files[ost->file_index], ost); /* diff --git a/avconv_opt.c b/avconv_opt.c index 74307bfeb6..7adf051978 100644 --- a/avconv_opt.c +++ b/avconv_opt.c @@ -1621,6 +1621,17 @@ loop_end: } av_dict_free(&unused_opts); + /* set the encoding/decoding_needed flags */ + for (i = of->ost_index; i < nb_output_streams; i++) { + OutputStream *ost = output_streams[i]; + + ost->encoding_needed = !ost->stream_copy; + if (ost->encoding_needed && ost->source_index >= 0) { + InputStream *ist = input_streams[ost->source_index]; + ist->decoding_needed = 1; + } + } + /* check filename in case of an image number is expected */ if (oc->oformat->flags & AVFMT_NEEDNUMBER) { if (!av_filename_number_test(oc->filename)) { |