diff options
author | Anton Khirnov <anton@khirnov.net> | 2011-08-17 14:09:22 +0200 |
---|---|---|
committer | Anton Khirnov <anton@khirnov.net> | 2011-08-17 19:58:55 +0200 |
commit | 2886aee73f12f11e201f4c229d80eef549a43e1f (patch) | |
tree | a96f6478bcdd16dba2b964571b3d996d64ab779e /avconv.c | |
parent | f1176d41af9cd15164b8691e723d412c30da3777 (diff) | |
download | ffmpeg-2886aee73f12f11e201f4c229d80eef549a43e1f.tar.gz |
avconv: merge two loops in output_packet().
Diffstat (limited to 'avconv.c')
-rw-r--r-- | avconv.c | 28 |
1 files changed, 9 insertions, 19 deletions
@@ -1552,25 +1552,6 @@ static int output_packet(InputStream *ist, int ist_index, avpkt.size = 0; } -#if CONFIG_AVFILTER - if (ist->st->codec->codec_type == AVMEDIA_TYPE_VIDEO) { - for (i = 0; i < nb_ostreams; i++) { - ost = &ost_table[i]; - if (ost->input_video_filter && ost->source_index == ist_index) { - AVRational sar; - if (ist->st->sample_aspect_ratio.num) - sar = ist->st->sample_aspect_ratio; - else - sar = ist->st->codec->sample_aspect_ratio; - // add it to be filtered - av_vsrc_buffer_add_frame(ost->input_video_filter, &picture, - ist->pts, - sar); - } - } - } -#endif - // preprocess audio (volume) if (ist->st->codec->codec_type == AVMEDIA_TYPE_AUDIO) { if (audio_volume != 256) { @@ -1603,6 +1584,15 @@ static int output_packet(InputStream *ist, int ist_index, continue; #if CONFIG_AVFILTER + if (ist->st->codec->codec_type == AVMEDIA_TYPE_VIDEO && + ost->input_video_filter) { + AVRational sar; + if (ist->st->sample_aspect_ratio.num) + sar = ist->st->sample_aspect_ratio; + else + sar = ist->st->codec->sample_aspect_ratio; + av_vsrc_buffer_add_frame(ost->input_video_filter, &picture, ist->pts, sar); + } frame_available = ist->st->codec->codec_type != AVMEDIA_TYPE_VIDEO || !ost->output_video_filter || avfilter_poll_frame(ost->output_video_filter->inputs[0]); while (frame_available) { |