diff options
author | Stefano Sabatini <stefano.sabatini-lala@poste.it> | 2011-04-16 23:11:01 +0200 |
---|---|---|
committer | Stefano Sabatini <stefano.sabatini-lala@poste.it> | 2011-04-19 12:23:59 +0200 |
commit | 0f230c53df9001023b0c9e35b467096336beed85 (patch) | |
tree | d469ec99dd372af4a03f9439b2417850cef7d145 | |
parent | 6a46aab49b68a79973dfa86f0966c081fc807961 (diff) | |
download | ffmpeg-0f230c53df9001023b0c9e35b467096336beed85.tar.gz |
ffmpeg: factorize resampling condition check in do_video_out()
Simplify and improve readability.
Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
-rw-r--r-- | ffmpeg.c | 15 |
1 files changed, 7 insertions, 8 deletions
@@ -1141,7 +1141,7 @@ static void do_video_out(AVFormatContext *s, AVFrame *in_picture, int *frame_size) { - int nb_frames, i, ret; + int nb_frames, i, ret, resample_changed; AVFrame *final_picture, *formatted_picture, *resampling_dst; AVCodecContext *enc, *dec; double sync_ipts; @@ -1189,9 +1189,11 @@ static void do_video_out(AVFormatContext *s, final_picture = formatted_picture; resampling_dst = &ost->pict_tmp; - if ( ost->resample_height != ist->st->codec->height - || ost->resample_width != ist->st->codec->width - || (ost->resample_pix_fmt!= ist->st->codec->pix_fmt) ) { + resample_changed = ost->resample_width != dec->width || + ost->resample_height != dec->height || + ost->resample_pix_fmt != dec->pix_fmt; + + if (resample_changed) { av_log(NULL, AV_LOG_INFO, "Input stream #%d.%d frame changed from size:%dx%d fmt:%s to size:%dx%d fmt:%s\n", ist->file_index, ist->index, @@ -1204,10 +1206,7 @@ static void do_video_out(AVFormatContext *s, #if !CONFIG_AVFILTER if (ost->video_resample) { final_picture = &ost->pict_tmp; - if( ost->resample_height != ist->st->codec->height - || ost->resample_width != ist->st->codec->width - || (ost->resample_pix_fmt!= ist->st->codec->pix_fmt) ) { - + if (resample_changed) { /* initialize a new scaler context */ sws_freeContext(ost->img_resample_ctx); sws_flags = av_get_int(sws_opts, "sws_flags", NULL); |