ffmpeg | branch: master | zhaoxiu.zeng <zhaoxiu.z...@gmail.com> | Wed Feb 25 00:28:45 2015 +0800| [137fbab11b344641c9b677a3f012d25f755ab767] | committer: Michael Niedermayer
avcodec/vc1_block: move early exit code up in ff_vc1_pred_dc() Signed-off-by: Michael Niedermayer <michae...@gmx.at> > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=137fbab11b344641c9b677a3f012d25f755ab767 --- libavcodec/vc1_block.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/libavcodec/vc1_block.c b/libavcodec/vc1_block.c index 680227c..2513273 100644 --- a/libavcodec/vc1_block.c +++ b/libavcodec/vc1_block.c @@ -388,6 +388,12 @@ static inline int ff_vc1_pred_dc(MpegEncContext *s, int overlap, int pq, int n, int q1, q2 = 0; int dqscale_index; + /* scale predictors if needed */ + q1 = s->current_picture.qscale_table[mb_pos]; + dqscale_index = s->y_dc_scale_table[q1] - 1; + if (dqscale_index < 0) + return 0; + wrap = s->block_wrap[n]; dc_val = s->dc_val[0] + s->block_index[n]; @@ -397,11 +403,7 @@ static inline int ff_vc1_pred_dc(MpegEncContext *s, int overlap, int pq, int n, c = dc_val[ - 1]; b = dc_val[ - 1 - wrap]; a = dc_val[ - wrap]; - /* scale predictors if needed */ - q1 = s->current_picture.qscale_table[mb_pos]; - dqscale_index = s->y_dc_scale_table[q1] - 1; - if (dqscale_index < 0) - return 0; + if (c_avail && (n != 1 && n != 3)) { q2 = s->current_picture.qscale_table[mb_pos - 1]; if (q2 && q2 != q1) _______________________________________________ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog